如何让自定义UIButton只响应不透明的部分?

时间:2011-01-31 15:34:42

标签: iphone-sdk-3.0 uibutton transparency

我有一个UIButton,其类型是自定义的,由png文件表示,其中一部分是透明的。

当然,当且仅当轻触非透明(=可见)部分时,我希望我的按钮激活touchUpInside事件。但是当我触摸透明部分时,我也得到了这个事件,这是不可接受的。

如何让我的按钮仅知道其可见部分?

1 个答案:

答案 0 :(得分:0)

将图像分成两部分。一个是按钮(可点击部分),一个是背景。仅为可点击区域设置按钮图像。将UIButton放在UIImageView的顶部,背景为UIBmageView。你可以从UIButton继承你自己的控件,就像上面的UIButtonWithBackground一样,然后覆盖状态函数,以便在按钮改变状态时改变背景状态。