【问题标题】:UITextField character restrictionUITextField 字符限制
【发布时间】:2014-07-11 18:29:24
【问题描述】:

我有一个UITextField,我已经设置好了,所以您只能在其中输入 8 个字符。问题是,一旦输入第 8 个字符,用户就不能使用删除键。当我在文本字段中输入 8 个字符时,如何允许使用键盘上的删除键?

这是我的代码:

   func textField(textField: UITextField!,shouldChangeCharactersInRange range: NSRange, replacementString string: String!) -> Bool {
        var shouldChange = false
        if countString(textField.text) < 8 {
            shouldChange = true
        }

        return shouldChange
}

注意:countString 是一个统计字符串中字符个数的私有函数

【问题讨论】:

    标签: ios uitextfield swift


    【解决方案1】:

    你需要的是不检查是否少于8个字符,而是你现有的字符串加上输入长度是否大于8。

    func textField(textField: UITextField!,shouldChangeCharactersInRange range: NSRange, replacementString string: String!) -> Bool {
        NSUInteger newLength = countString(textField.text)+ countString(string) - range.length;
        return !(newLength > 8)
    }
    

    【讨论】:

    • 感谢 Jack 的解决方案!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-12-25
    • 2010-12-24
    • 2015-02-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多