当我的textField字符数在swift中变为6时,我想执行一些操作。
答案 0 :(得分:4)
使用代理
textField.addTarget(self, action: #selector(textFieldDidChange(_:)), for: .editingChanged)
然后实施
func textFieldDidChange(_ textField: UITextField) {
if textField.text?.characters.count == 6 {
// Call some method
}
}
答案 1 :(得分:0)
您可以使用func textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool {
let text = (textField.text ?? "") as String
let txtAfterUpdate = text.replacingCharacters(in: range, with: string)
if (text.characters.count == 6 && range.location > 5) {
return false // if you want to restrict your string length of call some method here
}
return true
}
来获取长度以及使用范围的位置。
!