IOS开发: 为UIImageView添加点击事件

转载于:http://www.pocketdigi.com/20140218/1276.html

UIImageView并不像UIButton一样,点点鼠标就可以关联点击事件,也不像Android里有onClickListener,这里需要借助于UITapGestureRecognizer类。从类名上就可以看出,这个类就是用于处理tap(单击)事件的。
bbc和voaspecial是UIImageView对象

[bbc setUserInteractionEnabled:YES];
    [voaspecial setUserInteractionEnabled:YES];
    [bbc addGestureRecognizer:[[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(clickCategory:)]];
    [voaspecial addGestureRecognizer:[[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(clickCategory:)]];

经测试,多个UIImageView不能共用一个UITapGestureRecognizer对象,之前调用的会没效果。
根据点击的view判断来自谁的点击。

-(void)clickCategory:(UITapGestureRecognizer *)gestureRecognizer
{
    NSLog(@"click");
    NSLog(@"%hhd",[gestureRecognizer isMemberOfClass:[UITapGestureRecognizer class]]);

    UIView *viewClicked=[gestureRecognizer view];
    if (viewClicked==bbc) {
        NSLog(@"bbc");
    }else if(viewClicked==voaspecial)
    {
        NSLog(@"voaspecial");
    }

}
时间: 2024-10-27 05:59:38

IOS开发: 为UIImageView添加点击事件的相关文章

iOS开发——给ImageView添加点击事件

      给ImageView添加点击事件   1: cell.pictureView.userInteractionEnabled = YES; 2: UITapGestureRecognizer *gr = [[UITapGestureRecognizer alloc]initWithTarget:cell action:@selector(displayPicture:)]; 3: gr.numberOfTapsRequired = 1; 4: gr.numberOfTouchesReq

iOS开发项目篇—52cell点击事件的处理

iOS开发项目篇—52cell点击事件的处理 一.简单说明 1.简单说明 关于tableView,cell的点击事件是不可避免的.那么在开发中应该如何很好的处理cell的点击事件呢?可以在代理方法中对点击了那个cell进行判断,根据行数的不同,做出不同的选择. 垃圾代码如下: 2.在多数情况下,点击cell都是跳转到对应的控制器. YYCommonItem.h文件 1 // 2 // YYCommonItem.h 3 // 4 5 #import <Foundation/Foundation.h

iOS:UIImageView添加点击事件

UIImageView并不像UIButton那样点击鼠标就可以关联点击事件,也不像Android里有onClickListener,这个时候就需要借助UITapGestureRecognizer类,从类名上就可以看出,这个类就是用于处理tap(单击)事件的. 创建两个UIImageView对象,imageView1和imageView2 [imageView1 setUserInteractionEnabled:YES]; [imageView2 setUserInteractionEnable

iOS开发 获取状态栏的点击事件

首先我们追踪UIStatusBar的触摸事件,需要在AppDelegate里面加入以下代码 - (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event { [super touchesBegan:touches withEvent:event]; CGPoint location = [[[event allTouches] anyObject] locationInView:self.window]; CGRect stat

给UIImageView添加点击事件(转)

转自“http://blog.csdn.net/jwzbskywz/article/details/7699661” UIImageView *imageview1 = [[UIImageView alloc] initWithFrame:CGRectMake(125, 50, 229, 229)]; [imageview1 setImage:[UIImage imageWithContentsOfFile:path]]; imageview1.userInteractionEnabled =

IOS - UIView添加点击事件

UIView通过手势(Gesture-UITapGestureRecognizer)添加点击事件, 类似于UIButton的效果. 示例: UIImageView *iKnowIcon = [CYResource loadImageView:@"free-question-once-more-i-know.png"]; iKnowIcon.top = questionIcon.top + scaleWidthWith320(200); iKnowIcon.centerX = self.

iOS开发项目篇—14点击标题按钮弹出菜单

iOS开发项目篇—14点击标题按钮弹出菜单 一.简单说明 (1)简单实现 点击标题按钮弹框,在箭头向上的时候,显示标题菜单 把ImageView添加到谁的身上?三角形的箭头在导航栏上,因此不能添加到tableview上. 分析图示: 有两个两种方法可以考虑: (1)添加到导航控制器上,因为导航栏是在导航控制器上的. (2)不用考虑控制器,直接添加到窗口上. 拿到窗口 (1)self.view.window这个属性谨慎使用,当开始加载的时候,为空 (2)获取主窗口  [UIApplication

iOS开发:UIImageView常用操作

UIImageView,顾名思义,是用来放置图片的.使用Interface Builder设计界面时,当然可以直接将控件拖进去并设置相关属性,这就不说了,这里讲的是用代码. 1.创建一个UIImageView: 创建一个UIImageView对象有五种方法: UIImageView *imageView1 = [[UIImageView alloc] init]; UIImageView *imageView2 = [[UIImageView alloc] initWithFrame:(CGRe

【Swift 2.1】为 UIView 添加点击事件和点击效果

前言 UIView 不像 UIButton 加了点击事件就会有点击效果,体验要差不少,这里分别通过自定义和扩展来实现类似 UIButton 的效果. 声明 欢迎转载,但请保留文章原始出处:) 博客园:http://www.cnblogs.com 农民伯伯: http://over140.cnblogs.com 正文 一.为 UIView 添加点击事件 extension UIView { func addOnClickListener(target: AnyObject, action: Sel