首页 > 代码库 > iOS:UIImageView添加点击事件
iOS:UIImageView添加点击事件
UIImageView并不像UIButton那样点击鼠标就可以关联点击事件,也不像Android里有onClickListener,这个时候就需要借助UITapGestureRecognizer类,从类名上就可以看出,这个类就是用于处理tap(单击)事件的。
创建两个UIImageView对象,imageView1和imageView2
- [imageView1 setUserInteractionEnabled:YES];
- [imageView2 setUserInteractionEnabled:YES];
- [imageView1 addGestureRecognizer:[[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(clickCategory:)]];
- [imageView2 addGestureRecognizer:[[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(clickCategory:)]];
经测试,多个UIImageView不能共用一个UITapGestureRecognizer对象,之前调用的会没效果。
根据点击的view判断来自谁的点击
这样就ok了
- -(void)clickCategory:(UITapGestureRecognizer *)gestureRecognizer
- {
- NSLog(@"click");
- NSLog(@"%hhd",[gestureRecognizer isMemberOfClass:[UITapGestureRecognizer class]]);
- UIView *viewClicked=[gestureRecognizer view];
- if (viewClicked==imageView1) {
- NSLog(@"imageView1");
- }else if(viewClicked==imageView2)
- {
- NSLog(@"imageView2");
- }
- }
iOS:UIImageView添加点击事件
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。