iOS左スライドジェスチャーが無効になった場合の解決策

1638 ワード

オリジナルをサポートしてください.転載する必要がある場合は、出典@TEASONを明記してください.
iOS 7からは左上隅の戻りボタンに加えて、ジェスチャーで左にスライドする戻り方が加わる.
これは、navigationControllerinteractivePopGestureRecognizerの属性によって制御.
一般的には左滑りが無効になったのは、navigationBarをカスタマイズする戻りキーによるものである.backButtonをカスタマイズした後、次の文を加えればいいです.意味がはっきりしている.ジェスチャーの許可を開く
    self.navigationController.interactivePopGestureRecognizer.enabled = YES ;

もちろんです.私も違う原因に出会ったことがあります.しかし、これはポイントではありません.統一的な解決策がある.彼がgestureである以上必然的にUIGestureのサブクラスです.ジェスチャーの詳細なプロセスを傍受するためにUIGestureRecognizerDelegateエージェントが使用できるに違いない.interactivePopGestureRecognizer.delegateは、ジェスチャートリガプロセスの詳細なコールバックを監視するために、現在のコントローラに設定することができる.
    self.navigationController.interactivePopGestureRecognizer.delegate = (id)self;

しかしながら、gestureRecognizerShouldBeginという方法を用いるだけで、このジェスチャーの開始を許可するか否かを判断することができる.
- (BOOL)gestureRecognizerShouldBegin:(UIGestureRecognizer *)gestureRecognizer
{
    return YES ;
}

so that's it .
参考1、UIscreen EdgePanGestureRecognizer Class Referencehttps://developer.apple.com/library/ios/documentation/UIKit/Reference/UIScreenEdgePanGestureRecognizer_class/Reference/Reference.html#//apple_ref/occ/cl/UIScreenEdgePanGestureRecognizer 2、_UINavigationInteractiveTransition.h https://github.com/nst/iOS-Runtime-Headers/blob/master/Frameworks/UIKit.framework/_UINavigationInteractiveTransition.h3、カスタムリターンボタンの場合、iOS 7ジェスチャーは発生した問題を返すhttp://www.tuicool.com/articles/FB3IJ3 http://www.tuicool.com/articles/vMfAVv4、iOS 7スライドバックhttp://blog.csdn.net/wmqi10/article/details/16850479