文档章节

控制TextField输入内容的个数

04zhujunjie
 04zhujunjie
发布于 2015/10/15 14:34
字数 198
阅读 1329
收藏 5

-(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];

        }

    


© 著作权归作者所有

共有 人打赏支持
04zhujunjie
粉丝 6
博文 71
码字总数 9272
作品 0
广州
私信 提问
iOS-控制TextField输入内容的个数

-(void)textFiledEditChanged{ //检测文本改变 [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(putInTextFieldEditChanged:) name:@"UITextFieldTextDidChang......

zzd旋律依旧美
2016/11/03
7
0
iOS 限制textField字节长度

OC语言中,NSString类型的字符串,视英文字母和汉字都为一个长度(string.length把一个汉字也当做一个长度),而实际上,一个英文字母只占用1个字节,一个汉字占用2个字节。 有时又有需求,需要...

-Man
2016/02/16
444
0
iOS 限制textField字节长度

OC语言中,NSString类型的字符串,视英文字母和汉字都为一个长度(string.length把一个汉字也当做一个长度),而实际上,一个英文字母只占用1个字节,一个汉字占用2个字节。 有时又有需求,需要...

悟空我腿有点酸
2016/02/05
346
0
iOS -- 自定义UITextField样式且根据多个UITextField的编辑状态改变按钮状态

根据项目需求,在项目中许多地方都要用到TextField用于接受用户的输入,而且这些文本框全部都是统一的自定义样式。这样一来根本不可能使用系统的输入框,而且项目中多个界面的都有输入框,我...

遇见0620
2018/03/30
0
0
怎样点击TextField向上推出一个半遮挡的包含时间选择控件视图?

对于普通的TextField, 可以弹出一个键盘用于输入内容. 这个键盘可以在屏幕底部从下向上推出, 不遮挡待输入的 TextField, 但可以遮挡其他的TextField. 这个效果参考网友们的做法, 已经实现了....

xiaocao000
2013/12/18
304
4

没有更多内容

加载失败,请刷新页面

加载更多

深度学习为图片人物换装【python代码教程】

在观看本文之前,请答应我要善良。昨天预告了下,发现很多同学对这个模型都表示出兴趣,甚至有好多同学后台发来照片让我帮他们脱裤子。授人以鱼不如授人以渔,请这些同学好自为之~ 01效果演示...

阿里云官方博客
29分钟前
3
0
centos7安装RabbitMQ详细过程

由于RabbitMQ是基于Erlang语言开发,所以在安装RabbitMQ之前,需要先安装Erlang 1、环境: centos 7.1 内核版本3.10.0-229.el7.x86_64 Erlang 19.0.4版本 RabbitMQ 3.6.14版本 2、在线安装E...

秋至丶枫以落
今天
1
0
6个使用KeePassX保护密码的技巧

虽然安全是个深奥的主题,但是你可以遵循几个简单的日常习惯来减小攻击面。本文将解释确保密码信息安全的重要性,并给出如何充分利用KeePassX的建议。 日益互联的数字世界使安全成为一个重要...

Linux就该这么学
今天
1
0
UnsatisfiedLinkError sawindbg.dll

方法:搜索sawindbg.dll,然后将文件报错的目录下

洛水
今天
5
0
说说不知道的Golang中参数传递

本文由云+社区发表 导言 几乎每一个C++开发人员,都被面试过有关于函数参数是值传递还是引用传递的问题,其实不止于C++,任何一个语言中,我们都需要关心函数在参数传递时的行为。在golang中...

腾讯云加社区
今天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部