我已经从Appcode实施了SidebarDemo项目,然后使用Login屏幕修改了Storyboard,现在当我启动我的应用程序登录屏幕时,这是正确的,我不希望Pan Gesture登录屏幕,我试图删除它来自以下代码
- (void)viewDidLoad
{
[super viewDidLoad];
[self.navigationController.view removeGestureRecognizer:self.revealViewController.panGestureRecognizer];
}
- (void) viewWillAppear:(BOOL)animated {
[super viewWillAppear:animated];
for (UIGestureRecognizer *recognizer in self.navigationController.view.gestureRecognizers) {
[self.navigationController.view removeGestureRecognizer:recognizer];
}
self.revealViewController.panGestureRecognizer.cancelsTouchesInView = NO;
// NSArray* gestureRecognizers = [self.navigationController.navigationBar gestureRecognizers];
// for (UIGestureRecognizer *gestureRecognizer in gestureRecognizers) {
// if ([gestureRecognizer isKindOfClass:[UIPanGestureRecognizer class]]) {
// gestureRecognizer.enabled = YES;
//
// break;
// }
// }
//[self.revealViewController.panGestureRecognizer removeTarget:self action:@selector(revealToggle:)];
}
但Pan Gesture仍在刷登录,但是当我进入内部屏幕并进入登录屏幕以便它被删除,但为什么它不会从应用程序启动的第一次删除
我的故事板图片如下
答案 0 :(得分:1)
据我了解,您的登录屏幕不应该是SWRevealViewController的前视图,因为您不需要其中的侧边栏。从登录视图控制器创建模式segue到显示视图控制器,并在用户成功登录时执行。从显示视图控制器中删除segue到登录的导航控制器,但是从显示到调查选择创建一个(不要忘记将其设置为sw_front并将测量选择控制器嵌入到导航控制器中) 。从侧边栏的注销按钮创建segue到登录的导航视图控制器,并在用户想要注销时执行。 为了更清楚,我添加了我自己的应用程序的照片,它有类似的东西。