Swift 3中的UIAlertController按钮操作

时间:2017-08-23 17:37:36

标签: ios swift button uialertcontroller uialertaction

当我点击UIAlertController的按钮时,我想执行一个动作,我发现了很多关于此的信息,但没有一个对我有用,我得到的答案更接近于这个网站:http://nshipster.com/uialertcontroller/

我实施的代码就是:

func success(message: String) {
    let alertSuccess = UIAlertController(title: "Listo", message: message, preferredStyle: UIAlertControllerStyle.alert)
    let okAction = UIAlertAction (title: "OK", style: UIAlertActionStyle.cancel, handler: nil)
    alertSuccess.addAction(okAction)
}

func paymentConfirmation(message: String) {
    self.myAlert = UIAlertController(title: "Confirmación", message: message, preferredStyle: UIAlertControllerStyle.alert)
    let myServices = UIAlertAction (title: "Si", style: UIAlertActionStyle.default) { action in
        self.success(message: "Tu pago ha sido exitoso")
    }
    self.myAlert.addAction(myServices)

    let okAction = UIAlertAction (title: "No", style: UIAlertActionStyle.cancel, handler: nil)
    self.myAlert.addAction(okAction)

    self.present(self.myAlert, animated: true, completion: nil)
    return
}

在paymentConfirmation函数中,我有一个我要显示第二个UIALertController的按钮,按钮的名称是(myServices),所以我添加了我想要的那个按钮来执行,然后我调用了方法在这个块中:

 self.paymentConfirmation(message: "¿Estás seguro que quieres comprar el siguiente paquete de internet?")

所以,应用程序应该做的是当用户点击" Si"在第一个按钮警告它应该出现第二个警报,但这没有发生,它做任何事情,有人可以帮助我吗?

1 个答案:

答案 0 :(得分:1)

您缺少第二个UIAlertController演示文稿

func success(message: String) {
    let alertSuccess = UIAlertController(title: "Listo", message: message, preferredStyle: UIAlertControllerStyle.alert)
    let okAction = UIAlertAction (title: "OK", style: UIAlertActionStyle.cancel, handler: nil)
    alertSuccess.addAction(okAction)

   self.present(alertSuccess, animated: true, completion: nil)
}