swift – 验证UITextField
发布时间:2020-12-14 05:42:39 所属栏目:百科 来源:网络整理
导读:我在我的应用程序中有这个插座: @IBOutlet var name1: UITextField!@IBOutlet var name2: UITextField!@IBOutlet var name3: UITextField!@IBOutlet var name4: UITextField!@IBOutlet var newButton: UIButton! 我试图做的是以下内容: 每当用户在这四个文
我在我的应用程序中有这个插座:
@IBOutlet var name1: UITextField! @IBOutlet var name2: UITextField! @IBOutlet var name3: UITextField! @IBOutlet var name4: UITextField! @IBOutlet var newButton: UIButton! 我试图做的是以下内容: 每当用户在这四个文本字段之一中键入内容或删除某些内容时,我想检查是否有任何文本字段为空 如果任何文本字段为空,则应禁用该按钮. 如果设置了所有文本字段(非空),则应启用该按钮. 我的代码: func textField(textField: UITextField,shouldChangeCharactersInRange range: NSRange,replacementString string: String) -> Bool { setButton() return true } func setButton() { let inputValid = checkInput() if inputValid { newButton.enabled = true } else { newButton.enabled = false } } func checkInput() -> Bool { let name1Value = name1.text let name2Value = name2.text let name3Value = name3.text let name4Value = name4.text if !name1Value.isEmpty && !name2Value.isEmpty && !name3Value.isEmpty && !name4Value.isEmpty { return true } return false } 好的,它现在可以使用50%. 当我在每个文本字段中键入一个字符时,该按钮仍处于禁用状态. 当我向任何文本字段添加第二个时,该按钮被启用等… 有人可以帮我这个吗? 问候和感谢!
或者,你可以使用它,每次按下一个键时都会调用它:
name1.addTarget(self,action: "textFieldDidChange:",forControlEvents: UIControlEvents.EditingChanged) name2.addTarget(self,forControlEvents: UIControlEvents.EditingChanged) name3.addTarget(self,forControlEvents: UIControlEvents.EditingChanged) name4.addTarget(self,forControlEvents: UIControlEvents.EditingChanged) func textFieldDidChange(textField: UITextField) { if name1.text == "" || name2.text == "" || name3.text == "" || name4.text == "" { //Disable button } else { //Enable button } } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |