【问题标题】:Multiple swipe recognizer in different components of controller ios控制器 ios 的不同组件中的多个滑动识别器
【发布时间】:2015-04-03 18:28:25
【问题描述】:

我有一个带有默认滑动识别器的UIViewController 来打开/关闭我的应用程序的右侧菜单(我正在使用ECSlidingViewController 插件)。此滑动识别器设置为控制器的父视图。

这是检测滑动打开右侧菜单的部分代码:

-(void)viewDidAppear:(BOOL)animated {
      [super viewDidAppear:animated];
      [self.view addGestureRecognizer:self.slidingViewController.panGesture];}

在这个UIViewController 里面我有一个UIImageView,我需要检测向所有方向(右、左、上、下)的滑动。到目前为止,我已将Storyboard 上的所有滑动设置为UIImageView,但该应用程序仅检测到一个组件的滑动(父视图中打开右侧菜单的组件或UIImageView 中的组件) ,而不是两者。

如何检测两个组件上的滑动?

【问题讨论】:

    标签: ios ios8 uipangesturerecognizer uiswipegesturerecognizer ecslidingviewcontroller


    【解决方案1】:

    发生这种情况的原因是因为您在图像视图上的手势识别器是在initWithCoder 期间添加的,而您的另一个手势识别器是在viewDidLoad 期间添加的,它发生在initWithCoder 之后。

    如果您希望两者都发生,则需要实现 gestureRecognizer:shouldRecognizeSimultaneouslyWithGestureRecognizer:,否则 iOS 将只是贪婪,并且如果同一手势有多个手势识别器(如您现在所见),则采用最新添加的手势识别器)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-09-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多