圆形图像按钮VS方形控制器

时间:2011-11-02 18:14:08

标签: iphone objective-c uibutton xib

我有一个带圆形图像的自定义按钮。

问题是控制器默认是方形的,所以每当我点击图像的角落时,按钮会响应调用相关的方法,而实际上他不应该因为角落上没有图像,所以按钮不应该响应。

任何人都知道有关这个bug的工作吗?

2 个答案:

答案 0 :(得分:0)

使用UIControl设置无法解决此问题。您必须进行自定义命中检测并确定图像是否位于点击下方。您可以使用UITapGestureRecognizer执行此操作。

答案 1 :(得分:0)

处理此问题的一种方法是减小按钮的大小。它仍然是一个矩形(或方形)。更多参与的方式是实施- (UIView *) hitTest: (CGPoint) pt withEvent: (UIEvent *) event&处理点击按钮的哪个区域&如果它不在您定义的圆圈中,则忽略该触摸事件。

但如果你问我,就让它成为现实。在触摸中,人们很少那么准确(与鼠标点击相比)。因此矩形按钮为用户提供了更多的区域,即使他略微偏离标记,也可以点击按钮。