我希望用户在文本字段中填写一个 0 到 60 之间的数字。 我怎样才能将数字字符限制为 2? 如何限制最大数量为60? 以及如何取消文本字段上的“粘贴”选项,使用户无法粘贴字母?
最佳答案
我认为有两种方法可以做到这一点。
实现UITextFieldDelegate
并实现功能
func textField(textField: UITextField,
shouldChangeCharactersInRange range: NSRange,
replacementString string: String) -> Bool {
var startString = ""
if textField.text != nil {
startString += textField.text!
}
startString += string
var limitNumber = startString.toInt()
if limitNumber > 60 {
return false
} else {
return true
}
}
在此每次检查到目前为止输入到 UITextField
的内容,转换为 Integer,如果新值大于 60,则返回 false。 (同时向用户显示适当的错误)。
我认为更好的方法是提供 UIPickerView
。
关于ios - 如何在 Swift 中限制文本字段中的数字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29566405/