检测所有应用程序上的手势

时间:2017-11-09 22:03:42

标签: ios swift swift3

我想在我的应用程序上检测所有双指向下滑动手势。

我已经扩展了Window类,并添加了这个:

public extension UIWindow {

    func initGestureTouch() {
        let swipeDown = UISwipeGestureRecognizer(target: self, action: #selector(handleGesture))
        swipeDown.direction = .down
        swipeDown.numberOfTouchesRequired = 2
        self.addGestureRecognizer(swipeDown)
    }
}

它在几乎所有地方工作,但在ScrollViews(TableViews等)上。在此视图中,只有scrollview才能获得手势。

有办法做到这一点吗?这是一个特殊的手势,用于打开助手助手。

Ps:到目前为止,我发现的唯一方法是在每个滚动视图上添加双手势检测,但这对我来说还不够。

1 个答案:

答案 0 :(得分:0)

试试这个:

swipeDown.cancelsTouchesInView = True
swipeDown.delaysTouchesBegan = True

第一个意味着如果被识别,将不会将触摸发送到下面的视图。 第二个会在发送触摸时延迟。