我编写了以下代码来将手势识别器附加到多个 ImageView 。
[imageview1 setUserInteractionEnabled:YES];
[imageview1 setMultipleTouchEnabled:YES];
[imageview2 setUserInteractionEnabled:YES];
[imageview2 setMultipleTouchEnabled:YES];
[imageview3 setUserInteractionEnabled:YES];
[imageview3 setMultipleTouchEnabled:YES];
[imageview4 setUserInteractionEnabled:YES];
[imageview4 setMultipleTouchEnabled:YES];
[imageview5 setUserInteractionEnabled:YES];
[imageview5 setMultipleTouchEnabled:YES];
[imageview6 setUserInteractionEnabled:YES];
[imageview6 setMultipleTouchEnabled:YES];
UILongPressGestureRecognizer *gestureRecognizer = [[UILongPressGestureRecognizer alloc] initWithTarget:self action:@selector(gestureHandler:)];
gestureRecognizer.delegate = self;
[imageview1 addGestureRecognizer:gestureRecognizer];
[imageview2 addGestureRecognizer:gestureRecognizer];
[imageview3 addGestureRecognizer:gestureRecognizer];
[imageview4 addGestureRecognizer:gestureRecognizer];
[imageview5 addGestureRecognizer:gestureRecognizer];
[imageview6 addGestureRecognizer:gestureRecognizer];
我注意到两个问题!
所有 imageview 都没有附加手势识别器!只有一个 imageview6(最后附上)有手势识别器。这是苹果不允许的吗?
我在父 View 的 subview 中拥有所有这些 ImageView 。当我将这些直接添加到父 View (self.view) 时,它可以工作,但问题 #1 仍然存在。当我在 subview (self.view.mysubview) 中有这些 ImageView 时,它们都无法识别手势!
有人可以告诉我如何处理这些问题吗。
谢谢。
最佳答案
UIGestureRecognizer
一次只能附加到一个 View 。您必须为每个 ImageView 创建一个单独的 ImageView 。
关于iOS:UIGestureRecognisers 与 subview 的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9994850/