添加第二个PanGestureRecognizer或等效的解决方法?

时间:2017-09-12 21:31:21

标签: ios ios-charts

我正在使用ios-charts库,当用户停止在图表上进行平移时,我需要做一些特殊的逻辑。该库将panGestureRecognized方法定义为fileprivate,因此我无法对其进行子类化/覆盖。它也没有提供任何用于收听平移手势的协议。

如何在不中断图表功能的情况下聆听平移手势?

我考虑过在图表顶部放置一个视图,并为添加一个手势识别器,但它会吞下事件并破坏常规图表功能。

1 个答案:

答案 0 :(得分:1)

任何手势识别器的默认行为是阻止对其子视图的触摸。您可以通过编写:

来更改此行为
panGesture.cancelsTouchesInView = NO;

要获得对同步平移手势手势识别的更多控制,请将您自己的类设置为手势识别器的委托,并使用此方法:

- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer

如果您只关心两个平移手势同时工作,请在此方法中返回YES