UIAlertController在操作后调用

时间:2019-02-02 12:03:16

标签: multithreading alert uicontrol

我正在尝试从用户那里获得二进制答案,UIAlertController似乎是最自然的选择。但是,当调用操作(从子视图中长按来的IBAction)关闭时,弹出窗口打开,而我需要之前的结果(在函数“命中”中)。这是我正在使用的代码。打印只是为了表明在显示弹出窗口之前已到达功能的结尾。我想念的是什么?...

@IBOutlet var longPress: UILongPressGestureRecognizer!
@IBAction func longPressAction(_ sender: UILongPressGestureRecognizer) {

    if longPress.state == .ended {
        let alert = UIAlertController(title: "HIT?", message: nil, preferredStyle: .alert)
        alert.addAction(UIAlertAction(title: "YES", style: .default, handler: nil))
        alert.addAction(UIAlertAction(title: "NO", style: .default, handler: nil))
        self.present(alert, animated: true)

        let location = longPress.location(in: fieldView)
        let x = location.x
        let y = location.y
        hit(x, y)
        print("I'm here")
    }
}

0 个答案:

没有答案