我使用SWRevealViewController在我的iOS应用中有侧边栏菜单。我的前后视图控制器都是表视图控制器。我的前视图控制器有一个显示后视图控制器的条形按钮项目,我还启用了平移手势以显示后视图控制器。问题是平移手势识别器仅在第一次工作,但是按钮始终启动后视图控制器。
如果有人可以帮我修复它,那么平移手势总是有效,那就太棒了,谢谢。
从故事板启动切换两个视图的SWRevealViewController。以下是前视图控制器的代码:
- (void)setUpSidebarMenu {
self.navigationItem.leftBarButtonItem.target = self.revealViewController;
self.navigationItem.leftBarButtonItem.action = @selector(revealToggle:);
[self.tableView addGestureRecognizer:self.revealViewController.panGestureRecognizer];
[self.tableView addGestureRecognizer:self.revealViewController.tapGestureRecognizer];
}
以下是后视控制器的代码:
- (void)setUpSidebarMenu {
self.navigationItem.leftBarButtonItem.target = self.revealViewController;
self.navigationItem.leftBarButtonItem.action = @selector(revealToggle:);
[self.tableView addGestureRecognizer:self.revealViewController.panGestureRecognizer];
}
答案 0 :(得分:3)
解决了,后视图控制器中没有代码可以处理平移,而不是向self.tableView
添加手势,而是将它们添加到self.view
:
[self.view addGestureRecognizer:self.revealViewController.panGestureRecognizer];
[self.view addGestureRecognizer:self.revealViewController.tapGestureRecognizer];