我连续有5个圆形按钮,每个按钮40x40像素。在每一个之间,我有20个像素。
40x40像素太小而无法触摸,但由于每个按钮之间有20个像素的空间,我可以将按键触摸区域扩展到60x60像素,使其易于触摸。我可以简单地使用创建方形60x60像素透明图像的脏解决方案,将其放在按钮上并使其可触摸,但我知道可以通过创建自定义类并更改参数来扩展按钮触摸区域。
我知道这是可能的,因为我之前看过这个(但我找不到网址)。我知道它与hitTest有关。
如何做到这一点? 感谢。
答案 0 :(得分:3)
CGRect newInfoButtonRect = CGRectMake(infoButton.frame.origin.x - 25,
infoButton.frame.origin.y - 25,
infoButton.frame.size.width + 50,
infoButton.frame.size.height + 50);
[infoButton setFrame:newInfoButtonRect];
您可能需要注意是否使用背景图像而不是图像(button setBackgroundImage:
vs button setImage: forState:
),因为背景图像会随着图像拉伸而正常图像不会
答案 1 :(得分:0)
你总是可以让它的框架更大,即yourButton.frame = CGMRectMake(0,0,60,60);
我通常在添加其中一个信息按钮时执行此操作。