Objective c uiimageview上无法识别轻触手势
我添加了两个Objective c uiimageview上无法识别轻触手势,objective-c,uiimageview,uitapgesturerecognizer,ios6.1,Objective C,Uiimageview,Uitapgesturerecognizer,Ios6.1,我添加了两个uiimageviews,一个接一个子视图uiview(imageview1,imageview2)。在第一个视图中,顶部uiimageview隐藏(imageview 2),在第二个视图中,底部imageview隐藏(imageview 1) 分配点击手势: UITapGestureRecognizer *singleTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(oneTap:)
uiimageview
s,一个接一个子视图uiview
(imageview1,imageview2
)。在第一个视图中,顶部uiimageview
隐藏(imageview 2
),在第二个视图中,底部imageview
隐藏(imageview 1
)
分配点击手势:
UITapGestureRecognizer *singleTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(oneTap:)];
UITapGestureRecognizer *singleTap1 = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(oneTap:)];
将两个uiimageview的用户交互设置为“是”
[singleTap setNumberOfTapsRequired:1];
[singleTap1 setNumberOfTapsRequired:1];
//向uiimageview添加手势
分别添加轻触手势识别器和选择器
[imageview1 addGestureRecognizer:singleTap];
[imageview2 addGestureRecognizer:singleTap1];
但我的水龙头不被认出来
有人能告诉我错误在哪里吗?在添加手势识别器之前,请尝试设置
setUserInteractionEnabled:YES
[imageview1 setUserInteractionEnabled:YES]
[imageview2 setUserInteractionEnabled:YES]
[imageview1 addGestureRecognizer:singleTap];
[imageview2 addGestureRecognizer:singleTap1];
更新:
在您发表评论之后,我建议您在检测到tap事件之前,将您的观点放在首位。因为父imageView位于上方并捕捉这些点击
[yourparentview bringSubviewToFront:imageview1];
[yourparentview bringSubviewToFront:imageview2];
如果你解决了你的问题,请告诉我。根据我的代码,它在横向视图中工作正常,但在纵向视图中不工作我添加了10个imageview所有工作正常,但uiimageview除外,在uiimageview中,一个imageview放置在另一个图像视图上不工作。。在肖像画中,但在风景画中,它的效果很好!只需在序列图像板中点击图像视图,一切都很好。谢谢,太棒了!!你们真是太棒了,我怎么会忘记SetUserInteractionEnabled呢?你们也可以用界面生成器在图像属性中设置这个。当两个图像视图放置在不同的位置时,贴图手势可以正常工作。问题是当两个imageview放置在同一位置时。第一次隐藏一个,第二次隐藏另一个。是否要在用户点击时在同一位置切换ImageView的可见性?
UITapGestureRecognizer *singleTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(oneTap:)];
singleTap.numberOfTapsRequired = 1;
singleTap.numberOfTouchesRequired = 1;
singleTap.delegate = self;
[imageview1 addGestureRecogniser:singleTap];
[singleTap1 release];
imageview1.userInteractionEnabled = YES; //disabled by default