我有一个按住手势。在按住期间,我想检测屏幕上其他地方的单个水龙头。问题是,当我开始在屏幕上的其他地方点击时,按住手势会被中断并且不会调用“修饰”功能。有没有办法在其他地方点击时保留按住按钮?
答案 0 :(得分:2)
UIKit提供了多种机制来制作多个UIGestureRecognizers
在同一UIView
工作中并肩工作。哪些以及如何完全取决于
根据您的需求和配置。
一个是- (void)requireGestureRecognizerToFail:(UIGestureRecognizer *)otherGestureRecognizer
但是,对于您的情况,您必须在视图中采用UIGestureRecognizerDelegate
协议。
然后你应该实现gestureRecognizer:shouldRecognizeSimultaneouslyWithGestureRecognizer:
方法。
例如:
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer
{
return YES;
}
不要忘记让UIView
delegate
成为getureRecognizers
。
一些参考文献:
UIGestureRecognizer Class Reference