【发布时间】:2012-05-12 20:26:39
【问题描述】:
我正在制作 Pan Gesture 的示例。我很想知道我可以在两个视图上添加单个手势吗?
我的代码如下:
UIPanGestureRecognizer *panGesture = [[UIPanGestureRecognizer alloc] initWithTarget:self action:@selector(invokePanGesture:)];
[panGesture setMinimumNumberOfTouches:1];
[panGesture setMaximumNumberOfTouches:2];
[btnGreen addGestureRecognizer:panGesture];
[btnYellow addGestureRecognizer:panGesture];
我的处理方法如下:
- (void)invokePanGesture:(UIPanGestureRecognizer*)recognizer {
CGPoint translation = [recognizer translationInView:self.view];
recognizer.view.center = CGPointMake(recognizer.view.center.x + translation.x,
recognizer.view.center.y + translation.y);
[recognizer setTranslation:CGPointMake(0, 0) inView:self.view];
}
现在的问题是手势识别器在我的情况下只考虑最后一个视图 btnYellow 作为它的视图。如果我创建两个单独的 GestureRecognizer 对象,它就可以工作。所以请澄清一下:
是否可以在多个视图中使用单个手势?
如果是,那怎么办?
如果是现在那为什么?
提前致谢
【问题讨论】:
标签: iphone ios uigesturerecognizer uipangesturerecognizer