我想显示新的 ViewController
,就在文本字段不为空或不相同时。当我单击将用户导航到下一个 View 的按钮时,总是执行此操作,即使不满足条件也是如此。
@IBAction func nextButtonPressed(_ sender: Any) {
self.performSegue(withIdentifier: "goToLastRegisterView", sender: self)
}
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
if usernameTextField.text == "" || passwordTextField.text == "" || confirmedPasswordTextField.text == "" {
errorLabel.isHidden = false
errorLabel.text = "All fields are required"
}
else{
if passwordTextField.text == confirmedPasswordTextField.text{
if segue.identifier == "goToLastRegisterView"{
let secondRegisterVC = segue.destination as! RegisterSecondViewController
secondRegisterVC.userName = usernameTextField.text!
secondRegisterVC.password = passwordTextField.text!
}
}
else{
errorLabel.isHidden = false
errorLabel.text = "Different passwords"
}
}
}
最佳答案
如果您执行了 self.performSegue(withIdentifier:
来检查 override func prepare(for
中的 textfeilds 为时已晚,您必须在按钮操作中执行此操作
@IBAction func nextButtonPressed(_ sender: Any) {
if usernameTextField.text == "" || passwordTextField.text == "" || confirmedPasswordTextField.text == "" {
errorLabel.isHidden = false
errorLabel.text = "All fields are required"
return
}
self.performSegue(withIdentifier: "goToLastRegisterView", sender: self)
}
关于ios - 如何打开带有条件 IF 的新 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55552980/