3

所以看起来 UIButtonTypeInfoLight 类型的 UIButton 的可点击区域比它的框架大得多。正因为如此,我不能在它旁边放一个按钮,试图点击它会点击信息按钮。

_infoButton.frame = CGRectMake(0, 0, 40, height);
_searchButton.frame = CGRectMake(CGRectGetMaxX(_infoButton.frame), 0, 40, height);

有没有人知道如何获得按钮的可点击区域?

编辑:在信息按钮旁边有按钮这不是我的核心问题(只是说明为什么它可能很重要)。我的问题是关于找出这些类型的按钮的“命中区域”。

4

1 回答 1

3

我不确定从代码中查找命中区域的特定矩形,但有一种方法可以专门设置可点击的区域。您可以将您的UIButton和覆盖UIView的子类hitTest:withEvent:化以设置区域。这是一个显示扩大命中区域的示例,但我很确定您也可以使用它来减小该区域:UIButton 的较大命中区域

我想您可以使用这种方法反复试验来挖掘区域并找出在命中区域范围内或不在命中区域范围内的内容。我知道这并不理想,但这就是我发现的。

于 2014-03-06T20:28:15.600 回答