控制TextField输入内容的个数
控制TextField输入内容的个数
04zhujunjie 发表于2年前
控制TextField输入内容的个数
  • 发表于 2年前
  • 阅读 1234
  • 收藏 5
  • 点赞 0
  • 评论 0

腾讯云实验室 1小时搭建人工智能应用,让技术更容易入门 免费体验 >>>   

摘要: 控制TextField输入内容的个数

-(void)textFiledEditChanged{

    //检测文本改变

    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(putInTextFieldEditChanged:) name:@"UITextFieldTextDidChangeNotification" object:self.textField];

}

#define kMaxLength 16

-(void)putInTextFieldEditChanged:(NSNotification *)obj {

    UITextField *textField = (UITextField *)obj.object;

    NSString *toBeString = textField.text;

    // 键盘输入模式

    NSString *lang = [[UIApplication sharedApplication]textInputMode].primaryLanguage;

    if ([lang isEqualToString:@"zh-Hans"]) { // 简体中文输入,包括简体拼音,健体五笔,简体手写

        UITextRange *selectedRange = [textField markedTextRange];

        //获取高亮部分

        UITextPosition *position = [textField positionFromPosition:selectedRange.start offset:0];

        // 没有高亮选择的字,则对已输入的文字进行字数统计和限制

        if (!position) {

            if (toBeString.length > kMaxLength) {

                textField.text = [toBeString substringToIndex:kMaxLength];

            }

        }

        // 有高亮选择的字符串,则暂不对文字进行统计和限制

        else{

        }

    }

    // 中文输入法以外的直接对其统计限制即可,不考虑其他语种情况

    else{

        if (toBeString.length > kMaxLength) {

            textField.text = [toBeString substringToIndex:kMaxLength];

        }

    


标签: textField
共有 人打赏支持
粉丝 7
博文 67
码字总数 7769
×
04zhujunjie
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: