我正在尝试制作可点击的UIImage,用户可以点击它,然后它会动画...
我正在使用UIScrollVIew这就是我使用UITapGesture而不是touchesBegan的原因,而且似乎UIGestureRecognizer与UIImage不兼容......
我是对的吗?我一直收到此错误消息
接收器类型'UIImage'例如消息不声明方法 使用选择器'addGestureRecognizer'
还有其他方法吗?
答案 0 :(得分:24)
你必须在UIImageView中添加Tap Gesture到UIImage
imgView.userInteractionEnabled = YES;
UITapGestureRecognizer *tapGesture1 = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(tapGesture:)];
tapGesture1.numberOfTapsRequired = 1;
[tapGesture1 setDelegate:self];
[imgView addGestureRecognizer:tapGesture1];
[tapGesture1 release];
您可以使用已定义的选择器响应点击并执行操作
- (void) tapGesture: (id)sender
{
//handle Tap...
}
答案 1 :(得分:6)
您必须将手势添加到UIImageView,而不是UIImage
答案 2 :(得分:3)
您只需将TapGestureRecognizer添加到UIImageView即可。您必须使用UIImageView,因为只允许将手势识别器添加到视图中。
UIView *someView = [[UIView alloc] initWithFrame:CGRectZero]; UITapGestureRecognizer *tapRecognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(tapAction:)]; tapRecognizer.numberOfTapsRequired = 1; [someView addGestureRecognizer:tapRecognizer];
您可以使用已定义的选择器响应点击并执行操作
- (void)tapAction:(UITapGestureRecognizer *)tap { // do stuff }
答案 3 :(得分:1)
尝试使用UIButton
代替UIIMage
并使UIButton
类型自定义。点击相同内容即可显示动画。