【问题标题】:Pan Gesture Not Working With SWRevealViewController平移手势不适用于 SWRevealViewController
【发布时间】:2015-05-19 05:33:26
【问题描述】:

我正在使用 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];
}

【问题讨论】:

    标签: ios objective-c uigesturerecognizer uipangesturerecognizer swrevealviewcontroller


    【解决方案1】:

    已解决,后视图控制器中应该没有处理平移的代码,而不是添加手势到self.tableView,而是将它们添加到self.view

    [self.view addGestureRecognizer:self.revealViewController.panGestureRecognizer];
    [self.view addGestureRecognizer:self.revealViewController.tapGestureRecognizer];
    

    【讨论】:

    • 这行得通,但是我需要其他视图控制器来附加手势,有什么解决方案吗?
    猜你喜欢
    • 2014-10-11
    • 1970-01-01
    • 2021-08-25
    • 1970-01-01
    • 2021-08-09
    • 1970-01-01
    • 2014-04-03
    • 2015-10-04
    • 1970-01-01
    相关资源
    最近更新 更多