【发布时间】:2018-01-18 02:04:20
【问题描述】:
我有 2 个带有 NumberPad 键盘类型的文本字段
@IBOutlet weak var ourTextField: UITextField!
@IBOutlet weak var forThemTextField: UITextField!
我想在ourTextField中输入两个数字后自动移动到另一个文本字段(从ourTextField到forThemTextField),然后在转到另一个文本字段(forThemTextField)并输入2个数字后,我希望键盘自动隐藏
我添加了一个条件,通过此代码在我的 textFields 中只接受两个数字:
func textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool {
let lengthsDictionary = [ourTextField : 2, forThemTextField: 2]
guard let length = lengthsDictionary[textField] else {
return true
}
let currentCharacterCount = textField.text?.count ?? 0
if (range.length + range.location > currentCharacterCount){
return false
}
let newLength = currentCharacterCount + string.count - range.length
return newLength <= length
}
【问题讨论】:
标签: ios swift uitextfield swift4