博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
UIImageView上添加UIButton,button接收不到点击事件问题
阅读量:6335 次
发布时间:2019-06-22

本文共 939 字,大约阅读时间需要 3 分钟。

hot3.png

原程序是这样写的:

//UIImageView     _Tom               = [[UIImageView alloc] init];    _Tom.frame         = [UIScreen mainScreen].bounds;    _Tom.image         = [UIImage imageNamed:@"angry_00.jpg"];        [self.view addSubview:_Tom];    //UIButton    UIButton *nockHead = [[UIButton alloc] init];    nockHead.frame     = CGRectMake(10, 300, 60, 60);    [nockHead setImage:[UIImage imageNamed:@"drink"]              forState:UIControlStateNormal];    [nockHead addTarget:self                 action:@selector(test)       forControlEvents:UIControlEventTouchUpInside];        [_Tom addSubview:nockHead];

 运行后发现点击按钮没有任何反应,网上搜资料后得知UIImageView默认是不接受任何事件的,button加到imageView后,也接收不到事件,解决办法有两种:

1、设置UIimageView的 setUserInteractionEnabled 属性为YES;

2、UIImageView和UIbutton都作为view的子视图,然后设置imageview在button的后边显示;

     [nockHead sendSubviewToBack:_Tom];

    

第二种方法没有第一种方法方便,如果要添加多个按钮,每个按钮都需要设置显示在imageview前面,所有推荐第一种方法。

转载于:https://my.oschina.net/mexiaobai1315/blog/674020

你可能感兴趣的文章
markdown编辑
查看>>
ASCII 在线转换器
查看>>
Linux内核同步:RCU
查看>>
Android逆向进阶——让你自由自在脱壳的热身运动(dex篇)
查看>>
Java设计模式之五大创建型模式(附实例和详解)
查看>>
60 Permutation Sequence
查看>>
主流的RPC框架有哪些
查看>>
Hive学习之路 (七)Hive的DDL操作
查看>>
[转]mysql使用关键字作为列名的处理方式
查看>>
awesome go library 库,推荐使用的golang库
查看>>
树形展示形式的论坛
查看>>
jdbcTemplate 调用存储过程。 入参 array 返回 cursor
查看>>
C++中的stack类、QT中的QStack类
查看>>
Linux常用基本命令[cp]
查看>>
CSS 相对|绝对(relative/absolute)定位系列(一)
查看>>
关于 Nginx 配置 WebSocket 400 问题
查看>>
Glide和Govendor安装和使用
查看>>
Java全角、半角字符的关系以及转换
查看>>
Dubbo和Zookeeper
查看>>
前端项目课程3 jquery1.8.3到1.11.1有了哪些新改变
查看>>