美文网首页
ios-UITextField-输入字符校验

ios-UITextField-输入字符校验

作者: 歌白梨 | 来源:发表于2016-11-07 20:25 被阅读60次

有时在用户需要提交一些修改的时候,我们需要校验他提交的内容的长度或者合法性,当然这些校验可以放到后台,,以输入电话号码为例:

//先为textField设置一个变化的监听,
text.addTarget(self, action: #selector(textDidChange), forControlEvents: .EditingChanged)

//监听时产生校验行为
校验用户输入的长度
func textDidChange(textField:UITextField) {
    if let _ = textField.text {
      // 不使用拼音的时候就校验
      if let positionRange = textField.markedTextRange {
        if let _ = textField.positionFromPosition(positionRange.start, offset: 0) {
          
        } else {
          self.checkTextFieldLen(textField)
        }
      } else {
        self.checkTextFieldLen(textField)
      }
    }
    checkTextFieldVegality(textField)
  }

//是否超出长度
func checkTextFieldLen(textField:UITextField) {
    //your code here
    let texts:String = textField.text!
    let ss = texts as NSString
    var len = 0
    len = telLen
    if texts.characters.count > len {
      print("too long")
      textField.text = ss.substringToIndex(telLen)
    }
  }

  // 是否合法
  func checkTextFieldVegality(textField:UITextField) {
      if isValidTel(textField.text!) == false {
        print("非法字符串")
      }
  }

func isValidTel(str:String) -> Bool {
    let format = "^1[0-9]*$"
    let predicate = NSPredicate(format: "SELF MATCHES %@",format)
    let isValid = predicate.evaluateWithObject(str)
    return isValid
  }

相关文章

  • ios-UITextField-输入字符校验

    有时在用户需要提交一些修改的时候,我们需要校验他提交的内容的长度或者合法性,当然这些校验可以放到后台,,以输入电话...

  • 输入框校验点

    输入框内容校验:输入英文,特殊字符(~!@#¥%……&*?[]{},在输入框,禁止直接输入特殊字符时,使用“粘贴、...

  • 公共测试方法整理_IT加菲猫

    一、输入框 1、字符型:长度校验:正常字符数;最大字符数;最大值字符数+1;最大字符数-1;最小字符数;最小字符数...

  • 可选择屏蔽Emoji/空格/特殊字符的EditText ->

    开发中经常遇到禁止输入emoji、空格或者特殊字符的需求,每次使用都用正则表达式完成一次校验,校验多了感觉很臃肿,...

  • 可选择屏蔽Emoji/空格/特殊字符FilterEditext

    开发中经常遇到禁止输入emoji、空格或者特殊字符的需求,每次使用都用正则表达式完成一次校验,校验多了感觉很臃肿,...

  • 常用正则

    校验数字 校验字符 特殊需求 其他

  • 常用正则表达式大全

    文章参考:菜鸟工具 一、校验数字的表达式 二、校验字符的表达式 三、特殊需求表达式 四、钱的输入格式: 五、划重点...

  • 最全面的测试用例

    一、文本框为字符型 必填项非空校验: 1、必填项未输入--程序应提示错误; 2、必填项只输入若干个空格,未输入其它...

  • 快速拼出你想要的正则

    案例 实现:用户名的输入校验只允许输入:数字,字母,- ,_,@ 说明:写法一表示任何一个字符都要满足这个过滤规则...

  • 输入校验

    在Struts2中,可以对Action的所有方法进行校验或者对Action的指定方法进行校验。 对于输入校验Str...

网友评论

      本文标题:ios-UITextField-输入字符校验

      本文链接:https://www.haomeiwen.com/subject/gqgouttx.html