我正在使用 Swift 编写我的第一个应用程序,我需要一个可以通过触摸屏幕上的任意位置来关闭的弹出窗口或模态视图。
我正在编写一个 IOU 应用程序,目前正在研究用户输入贷方的 View 以及他们借出的金额。显然每个贷方都需要有一个唯一的名称,并且我希望每当用户尝试输入相同的名称两次要求他们更改名称时出现一个弹出窗口或模态视图。为了减少刺激因素,我想这样做,以便用户可以点击屏幕上的任意位置来消除警告,而不是点击特定按钮。
我找到了这个答案:Detect touch globally ,我认为它可能对我有用,但我对 Objective-C 一无所知,只知道 Swift,而且我对它的理解还不足以知道该怎么做。
最佳答案
事实证明,关闭模态视图非常容易。您需要做的就是调用 dismissViewControllerAnimated(true, completion: nil)
。因此,为了做我想做的事,我需要做的就是:
override func touchesEnded(touches: NSSet, withEvent event: UIEvent)
{
dismissViewControllerAnimated(true, completion: nil)
super.touchesEnded(touches, withEvent: event)
}
关于随时随地快速检测触摸,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27790504/