【发布时间】:2021-05-30 00:00:05
【问题描述】:
在 iPhone 应用程序中,我们可以隐藏导航栏。默认情况下,调用[self.navigationController setNavigationBarHidden:YES animated:YES] 来隐藏导航栏会停止屏幕边缘手势识别器self.navigationController.interactivePopGestureRecognizer 的工作,但在过去我可以通过将其delegate 设置为我自己的(隐藏栏时)来恢复此功能这样做:
- (BOOL)gestureRecognizerShouldBegin:(UIGestureRecognizer *)gestureRecognizer {
return YES;
}
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldBeRequiredToFailByGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer {
return ![otherGestureRecognizer isKindOfClass:[UIScreenEdgePanGestureRecognizer class]];
}
但是,现在该应用正在使用UISplitViewController,这不起作用。
目前尚不清楚拆分视图控制器是使用自己的手势识别器还是其他问题。我一直无法弄清楚如何使它工作。
我找不到关于此的任何其他讨论。我发现的最新帖子已有多年历史,例如this one、this one 或 this one。
我错过了什么?当导航栏隐藏时,如何让屏幕边缘交互手势与UISplitViewController 一起使用?
【问题讨论】:
标签: ios uinavigationcontroller uisplitviewcontroller