实际上我试着用这个
func textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool {
guard let textFieldText = textField.text,
let rangeOfTextToReplace = Range(range, in: textFieldText) else {
return false
}
let substringToReplace = textFieldText[rangeOfTextToReplace]
let count = textFieldText.count - substringToReplace.count + string.count
return count <= 10
}
但是只有当我在我的电脑上打字时它才能工作。但是如果我用我设计的键盘打字,它就不能工作了。顺便说一下,我设计的键盘如下。
@IBAction func digits(_ sender: UIButton) {
textField.text! += String(sender.tag)
}
在这种情况下,是否有功能限制字符数?
2条答案
按热度按时间oxcyiej71#
使用UITextField扩展将textField的字符数固定为:-
代码中的用法如下:-
此外,您还可以通过选择文本字段、检入属性检查器从情节提要修复它,如下图所示:-
af7jpaap2#
}