扩大UIButton的选区
Posted xfgnongmin
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了扩大UIButton的选区相关的知识,希望对你有一定的参考价值。
? ? ? 设计为了美观。button有时设计的太小,这么一来是好看了。可是button不好点中了。曾经有非常多解决方法,如用hitTest等方法。
都比較复杂。后来我发现一个简单的方法。
原理就是UIButton setImage时,假设image比button小,就会自己主动居中显示。
所以非常easy,仅仅用将button的frame不按图的大小设,而是设大一点,就能够增大button的选区了。
例如以下:
? ? UIButton* btn = [UIButton buttonWithType:UIButtonTypeCustom];
? ? //button的frame比图大。以扩大button的选区。
? ? btn = CGRectMake(239, 0, 60, 44);
? ? //setImage后。图会自己主动居中。注意,不能用setBackgroundImage。
? ? [btn setImage:[UIImage imageNamed:@"a-image"] forState:UIControlStateNormal];
? ? [btn addTarget:self action:@selector(toggle:) forControlEvents:UIControlEventTouchUpInside];
以上是关于扩大UIButton的选区的主要内容,如果未能解决你的问题,请参考以下文章
如何在不挤压背景图像的情况下扩展 UIButton 的 hitTest 区域?