我有三个小型自定义UIButton(w:25,h:35)的视图,我觉得很难获得触摸事件 .
我添加了touchUpInside事件的目标 .
[button addTarget:self action:@selector(keyPressed :) forControlEvents:UIControlEventTouchUpInside];
但正如我所说,我自己似乎很容易错过它 . 然后我查看了苹果键盘上的类似按钮 . 它们似乎有一个更大的触摸区域,特别是字母 "A"
和 "L"
的键 . 我想知道他们是如何设法做到这一点的 .
任何帮助和代码示例将不胜感激 .
3 回答
您是否尝试过使用Edge Insets?
这基本上是让你为按钮周围的矩形设置插入或开始边距 .
https://developer.apple.com/library/ios/documentation/uikit/reference/uibutton_class/index.html#//apple_ref/doc/uid/TP40006815-CH3-SW31
创建一个新的类来加入UIButton并覆盖此函数:
您将获得相同的视觉输出和您想要的可触摸区域
你不应该创建一个小于40x40点的按钮 . 您可以在其中放入较小的图像 . 您可以拥有25,35(b.e.myImage@2x.png)的图像 .
一个例子:
//其他选项