之前在項目中,偶然會發現這個問題,自定義導航欄或者隱藏導航欄都會有類似問題,跳轉慘不忍睹,你會懷疑這是你寫的代碼嗎?但是一直沒搞明白到底是哪里的問題,直到今天下午,看到了這位仁兄的這篇文章
http://www.lxweimin.com/p/e7ccc6ca0fef
寫的很好,看到才恍然大悟,原來就是因為在根視圖上的一個左滑引起的一系列問題,APP卡死,從后臺進入錯亂不堪,借鑒了文章的做法,實現了UIGestureRecognizerDelegate的代理方法:
#pragma mark
#pragma mark -- 是否允許手勢啟動
- (BOOL)gestureRecognizerShouldBegin:(UIGestureRecognizer *)gestureRecognizer{
// 如果是 NaivationController 的 根試圖控制器, 則不允許啟動手勢
if (self.viewControllers.count <= 1) {
return NO;
}
return !_isCanclePopGesture;
}