码迷,mamicode.com
首页 > 移动开发 > 详细

iOS输入限制字数时,避免与中文拼音拼写板冲突

时间:2020-01-31 22:32:23      阅读:145      评论:0      收藏:0      [点我收藏+]

标签:tar   ==   拼音   sub   length   最大   class   ttext   string   

描述:

      textView输入文本有字数限制,比如100个字符。

      直接用textView.text = [textview.text substringToIndex:100]来截取到100前的字符,会将键盘预输入的拼音都算入其中,导致到了100时,textView的text直接变成键盘中预输入的拼音。

 

解决办法:

判断预输入,预输入文字不计入

 

- (void)textViewDidChange:(UITextView *)textView{
    NSString  *nsTextContent = textView.text;
    NSInteger existTextNum = nsTextContent.length;

    if (textView.markedTextRange == nil) {
        // 没有预输入文字
        if (existTextNum > 100){
            //截取到最大位置的字符
            NSString *s = [nsTextContent substringToIndex:100];
            [textView setText:s];
        }
    }
}

 

BY-Chu

参考方案

 

iOS输入限制字数时,避免与中文拼音拼写板冲突

标签:tar   ==   拼音   sub   length   最大   class   ttext   string   

原文地址:https://www.cnblogs.com/widgetbox/p/12246828.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!