如何让用户在语言Swift中只在文本字段中插入一个小数。在网站上有很多帮助,但它们都不起作用,因为它们都是Swift 1代码。先感谢您。
答案 0 :(得分:0)
首先,您应该使您的类符合UITextFieldDelegate
协议,如下所示:
class YourViewController: UIViewController, UITextFieldDelegate
然后,您应该将textField的委托设置为self:
yourTextField.delegate = self
最后,每当UITextField
的内容发生变化时,都会调用此委托方法,因此请将其添加到视图控制器中。
func textField(textField: UITextField, shouldChangeCharactersInRange range: NSRange, replacementString string: String) -> Bool {
//handle changes here
}
如果您只想显示一个字符,则可以禁止更改UITextField
内容已填写的内容:
if yourTextField.text?.characters.count > 0 {
return false
}
return true
如果您只想允许十进制字符,也可以检查这一点,并将条件添加到if查询。