我已经使用此操作按钮来验证表单,但是我按下此按钮,提示警报,当警报被解除时(按下"确定"),它执行一个segue到主要VC。按下按钮后,我想留在同一个VC中。:
@IBAction func loginButton(sender: AnyObject) {
if self.password.text == "" || self.email.text == "" {
self.displayAlert("Error", message: "Please insert email and password")
print("if")
}
}
func displayAlert(title: String, message: String) {
// cria a mensagem de alerta
var alert = UIAlertController(title: title, message: message, preferredStyle: UIAlertControllerStyle.Alert)
// adiciona botao a mensagem de alerta
alert.addAction((UIAlertAction(title: "Ok", style: .Default, handler: { (action) -> Void in
//o que faz quando o botao da mensagem de alerta é apertado.
self.dismissViewControllerAnimated(true, completion: nil)
})))
//apresenta a mensagem.
self.presentViewController(alert, animated: true, completion: nil)
}
任何想法我做错了什么? PS。我检查了网点,但没有诀窍。
答案 0 :(得分:2)
删除此行:
self.dismissViewControllerAnimated(true, completion: nil)
用户按下OK后会发生这种情况,警报视图已被解除。 你在那里做的是解雇显示警报的视图。
答案 1 :(得分:1)
你应该这样做。
alert.addAction((UIAlertAction(title: "Ok", style: .Cancel, handler: nil))
如果你想在按下ok后执行某些操作,请在处理程序中执行此操作。