InteractivePopGestureRecognizer

InteractivePopGestureRecognizer

在我的UINavigationController中,我检查它是否有属性interactivePopGestureRecognizer,然后设置为:

class UINavigationControllerExtended: UINavigationController, UIGestureRecognizerDelegate {

    override func viewDidLoad() {
        super.viewDidLoad()

        if self.respondsToSelector(Selector("interactivePopGestureRecognizer")) {
            self.navigationController?.interactivePopGestureRecognizer?.delegate = self
        }
    }
}

该属性可以设置为nil,但该属性仍然存在,因此我假设respondsToSelector始终返回true。有必要检查一下吗?

最佳答案

interactivePopGestureRecognizer属性是在ios 7中添加的。用“cc>”检查它是否存在是没有意义的。就用它吧。
因为您使用可选链接调用它,如果respondsToSelector属性是interactivePopGestureRecognizer,则:

self.navigationController?.interactivePopGestureRecognizer?.delegate = self

什么都不会做。

关于swift - UINavigationController总是响应选择器InteractivePopGestureRecognizer吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34695003/

10-09 15:43