• iOS 限制TextField输入长度(标准)


    iOS 限制TextField输入长度(标准)


    网上有很多限制textField输入长度方法,但是我觉得都不是很完美,准确来说可以说是不符合实际开发的要求,因此在这里整理一下textField限制输入长度的方法.
    我所采用的并不是监听方法而是最不同的代理实现方法,为什么不使用监听呢???
    当你看到这篇文章很有可能视是为一件事所苦恼那就是使用监听限制输入长度后不能够完美的控制输入内容.
    举一个简单的例子:
    你要限制输入长度为30个字符,当你输入30个字符后监听的确可以很好的控制不让你继续输入,但是问题也随之而来,当你把光标移动到输入内容中间的位置后,你是可以继续输入的这种输入让人很苦恼因为当你输入后你的光标会移动到最后,并且限制你继续输入,但是你刚刚输入的内荣却保留在了文本中间,这很不符合要求.
    因此在这里采用代理可以很好的实现我们想要的效果,仅仅几行代码希望给你带来帮助.

    - (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string {
        
        if (textField == self.liveThemeTextField) {
        //这里的if时候为了获取删除操作,如果没有次if会造成当达到字数限制后删除键也不能使用的后果.
            if (range.length == 1 && string.length == 0) {
                return YES;
            }
            //so easy
            else if (self.liveThemeTextField.text.length >= 30) {
                self.liveThemeTextField.text = [textField.text substringToIndex:30];
                return NO;
            }
        }
        return YES;
    }
    

    遇到问题不要慌,静下心来慢慢想.
    by:旭宝爱吃鱼

  • 相关阅读:
    HTTP协议中的chunked编码解析
    QP编码详解
    从新手到入门,如何进入协议分析的世界
    构造个人轻量级XSS平台获取管理员cookie并登录
    逆向分析-IDA动态调试WanaCrypt0r的wcry.exe程序
    C# 链接数据库并查询操作
    excel日期格式转换
    SAP的PI日志查看工具
    abap 动态指针理解加深ASSIGN COMPONENT
    ABAP-编程时快速带出关键字与快速注释快捷键设置
  • 原文地址:https://www.cnblogs.com/xubaoaichiyu/p/5868333.html
Copyright © 2020-2023  润新知