我在我的应用程序中有这个插座:
@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 } }
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。