在完成if语句之前运行以下脚本

时间:2016-12-26 15:54:02

标签: swift if-statement multiple-conditions

我尝试在@IBAction func中运行独立的多个if语句。但是我想首先完成第一个if语句(我放置一个警告块来暂停进程)然后运行第二个if语句然后运行其余的脚本。我的代码看起来像这样:

@IBAction func onDone(_ sender: Any) {
   if var1.count > 0 {
     let block: DTAlertViewButtonClickedBlock = {(alertView, buttonIndex, cancelButtonIndex) in
     //Do somethings
     }
     DTAlertView(block: block, title: "Do somethings?", cancelButtonTitle: "Cancel", positiveButtonTitle: "Let's do it!").show()
   }
   if var2.count > 0 {
     //Do another things
   }
   _ = navigationController?.popViewController(animated: true)
}

但Xcode似乎在popViewController中运行第一个if语句和第二个if语句同时不等我完成警报阻止。

任何人都面临同样的问题?我应该在代码中添加什么或者我的代码有什么不正确的内容?

1 个答案:

答案 0 :(得分:0)

您需要在alter按钮处理程序中移动第二个if

@IBAction func onDone(_ sender: Any) {
    if var1.count > 0 {
        let block: DTAlertViewButtonClickedBlock = {(alertView, buttonIndex, cancelButtonIndex) in
            //Do something
            if var2.count > 0 {
                //Do another things
            }
            _ = navigationController?.popViewController(animated: true)
        }
        DTAlertView(block: block, title: "Do somethings?", cancelButtonTitle: "Cancel", positiveButtonTitle: "Let's do it!").show()
    }
}