如何使用Swift从单击警报按钮返回bool

时间:2017-03-06 15:47:19

标签: ios swift boolean

 override func shouldPerformSegueWithIdentifier(identifier: String, sender: AnyObject!) -> Bool {
        let appearance = SCLAlertView.SCLAppearance(
            showCloseButton: false,
            showCircularIcon: false
        )
        let alertView = SCLAlertView(appearance: appearance)
        alertView.addButton("First") {
            return true
        }
        alertView.addButton("Second") {
            return false
        }

        alertView.showSuccess("warning", subTitle: "something")


    }

上面的代码在最后一个大括号之前需要return true/false,但如果我这样做,我会丢失按钮返回。

那么有什么方法可以存档吗?

我使用SCLAlertView作为我的警报(如果有人知道如何使用uialert我想看到它)

提前致谢。

2 个答案:

答案 0 :(得分:0)

添加到第一条评论中,我是这样做的,在标题单元格中使用了一个UISwitch,并在类的顶部声明了一个bool变量

// I don't know what TestForm is, so this is a guess
// that it exists in the controller and needs to be passed in
@(TestForm: Form) 

<input
  type='radio'
  id='@TestForm("TestID").id'   
  name='@TestForm("TestID").name'  value='5'  
>

然后在这个方法设置中像这样

@IBAction func `switchAction`(_ sender: UISwitch) {
selected = sender.isOn
    if selected == false {
        //do you stuff here change false to true if you need it that way
    }
}

答案 1 :(得分:0)

你可以使用封锁

 var alertAction :((result:Bool)->())?  

使用它:

 alertView.addButton("Second") {
    alertAction?(false)
}  

实现:

alertAction = {result in
    // do s.t
}