Textfield字符数限制,最后一个字符使用中文拼音无法输入时的问题

  1. [self.textField.rac_textSignal subscribeNext:^(NSString * _Nullable x) {
    UITextRange *range = [self.textField markedTextRange];
    //获取高亮部分
    UITextPosition *position = [self.textField positionFromPosition:range.start offset:0];
    if (!position) {
    if (x.length > 50) {
    [###NoticeView showNoticeViewWithString:@"最多输入50个字符"];
    self.textField.text = [x substringToIndex:50];
    }
    }
    }];

  2. [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(textFieldDidChange:) name:UITextFieldTextDidChangeNotification object:self.textView];
    
  • (void)textFieldDidChange:(NSNotification *)notification {
    UITextField *textField = notification.object;
    UITextRange *range = [textField markedTextRange];
    //获取高亮部分
    UITextPosition *position = [textField positionFromPosition:range.start offset:0];
    if (!position) {
    if (textField.text.length > 50) {
    [###NoticeView showNoticeViewWithString:@"最多输入50个字符"];
    textField.text = [textField.text substringToIndex:50];
    }
    }
    }
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容