【发布时间】:2014-05-20 16:46:15
【问题描述】:
在我的 .m 文件中我添加了:
@property (strong, nonatomic) UIImageView *star1;
然后在我做的一个方法中:
UIImage *star1Image;
star1Image = [UIImage imageNamed:@"staryes"];
self.star1 = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 32, 32)];
self.star1.tag = 800;
[self.star1 setImage:star1Image];
[ratingLabelBody addSubview:self.star1];
在与此无关的几行之后,我有:
[self.star1 setUserInteractionEnabled:YES];
UITapGestureRecognizer *tapped = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(imgTouchUp:)];
tapped.numberOfTapsRequired = 1;
[self.star1 addGestureRecognizer:tapped];
最后在我实现的 .m 文件中:
-(void)imgTouchUp:(id)sender {
NSLog(@"imgTouchUp");
UITapGestureRecognizer *gesture = (UITapGestureRecognizer *)sender;
NSLog(@"tap detected on %li", (long)gesture.view.tag);
}
有了这一切,它应该可以识别我的图像上的点击,但什么也没发生。有什么想法吗?
【问题讨论】:
-
ratingLabelBodyUILabel?你也这样做了:[ratingLabelBody setUserInteractionEnabled:YES]? -
@Larme 你说得对,我忘了将
setUserInteractionEnabled添加到YES。 (顺便说一句,ratingLabelBody是UIView)。它现在正在工作!谢谢!
标签: ios uiimageview uitapgesturerecognizer