关于扩大按钮响应区域的方法
2015-10-29 15:02
274 查看
当时我的项目里在tabview的表尾处有一个居中的按钮。测试经理希望点击按钮所在整行区域都能响应事件。
而项目经理却觉的此事没有必要,中间的加号按钮已经能告诉用户点击加号才会添加。
最终我与产品经理商量的结果是在不改变显示效果的情况下加大按钮的事件响应区域。
先说我当时的思路
第一种方法是直接在整个表尾加手势点击响应与button同样的事件
第二种是将button放在一个较大的视图上作为其子视图,再在父视图上添加手势响应事件
但是最终我没有选择这两种方法
第三种方法是通过调节button 的大小。然后设置button的图片与button的相对位置。这样就能够实现图片大小显示不变,但是其实整个按钮的大小已经扩大了
等于就是扩大了按钮响应事件区域
[btn setImage:[UIImage
imageNamed:@"btn.image"]
forState:UIControlStateNormal];
[btn setImage:[UIImage
imageNamed:@"btn.iamge"]
forState:UIControlStateSelected];
[btn addTarget:self
action:@selector(addNewDevice:)
forControlEvents:UIControlEventTouchUpInside];
[btn setImageEdgeInsets:UIEdgeInsetsMake(5,
60, 5,
60)];
此时需要注意的是设置图片的时候不能设置成了
[btn setBackgroundImage:[UIImage
imageNamed:@"btn.image"]
forState:UIControlStateNormal];
你会发现这个方法设置的图片是无法改变相对位置的
而项目经理却觉的此事没有必要,中间的加号按钮已经能告诉用户点击加号才会添加。
最终我与产品经理商量的结果是在不改变显示效果的情况下加大按钮的事件响应区域。
先说我当时的思路
第一种方法是直接在整个表尾加手势点击响应与button同样的事件
第二种是将button放在一个较大的视图上作为其子视图,再在父视图上添加手势响应事件
但是最终我没有选择这两种方法
第三种方法是通过调节button 的大小。然后设置button的图片与button的相对位置。这样就能够实现图片大小显示不变,但是其实整个按钮的大小已经扩大了
等于就是扩大了按钮响应事件区域
[btn setImage:[UIImage
imageNamed:@"btn.image"]
forState:UIControlStateNormal];
[btn setImage:[UIImage
imageNamed:@"btn.iamge"]
forState:UIControlStateSelected];
[btn addTarget:self
action:@selector(addNewDevice:)
forControlEvents:UIControlEventTouchUpInside];
[btn setImageEdgeInsets:UIEdgeInsetsMake(5,
60, 5,
60)];
此时需要注意的是设置图片的时候不能设置成了
[btn setBackgroundImage:[UIImage
imageNamed:@"btn.image"]
forState:UIControlStateNormal];
你会发现这个方法设置的图片是无法改变相对位置的
相关文章推荐
- CENTOS6.3利用Keepalived构建双主MySQL+双机热备
- Android Storage 路径测试
- Zookeeper学习8_关于ZookeeperConsumerConnector#rebalance
- Android使用AsyncHttpClient给APP更新版本并安装
- 微软Xperf Windows Software Development Kit (SDK) for Windows 8.1
- 协同过滤算法的几篇文章PFM/svd/ svd++
- 浅谈XML 解析技术(三) JDOM解析
- mysql date js data
- winform 自定义控件-按钮
- Fresco——专为ANDROID加载图片
- 图解JSP与Servlet的关系
- 分页居中实现
- Testbench 阻塞赋值与非阻塞赋值
- mybatis-generator自动生成DAO文件
- Windows下python安装问题解决方案
- 掌握JS中的“this” (一)
- 最新版SDWebImage的使用
- 缺少标识符、字符串或数字
- BZOJ 2594: [Wc2006]水管局长数据加强版
- Oracle 12C -- 手动创建CDB