如何制作自定义 UIButton,使其具有不规则的曲线,如岩石、石头、树木……等?
Posted
技术标签:
【中文标题】如何制作自定义 UIButton,使其具有不规则的曲线,如岩石、石头、树木……等?【英文标题】:How can i make a custom UIButton so that it has irregular curves like a rock,stone,tree ...etc? 【发布时间】:2013-02-09 09:14:33 【问题描述】:我想制作一个按钮,使其具有石头/火箭的形状(即不规则形状,而不是矩形,正方形......等)
,我想让它也以相同的形状突出显示/边框,我尝试了UIButtonTypeCustom
,但它没有给我想要的东西..所以任何人都有任何帮助或想法,不要吝啬。
提前致谢。
【问题讨论】:
使用 UIButtonTypeCustom 您必须为按钮的每个状态提供资源。 【参考方案1】:使用UIButtonTypeCustom
,但也可以为按钮的外观添加您的自定义资源。
通常,您会将 UIButton 的背景图像设置为按钮的每种状态(正常、突出显示、禁用……)所需的图像(岩石、火箭等)。
只需在 Xcode 项目中添加图像,然后直接在 XIB 中(使用右侧的 Object Inspector 面板)或通过代码使用 setBackgroundImage:forState:
方法为 UIButton 的每个状态设置背景图像。
【讨论】:
谢谢,阿里这不是我之前提到的状态,我之前已经做过这些步骤,但我的意思是按钮的实际形状而不是它的背景:) 通常只有不完全透明的背景图像部分是可点击的。如果您仍然想要更多可定制的形状和点击测试,只需在 UIButton 的子类上实现点击测试方法。请参阅 Apple 文档中的 UIView 文档和事件编程指南。 我认为你是对的,这种方式应该可以工作,子类化 UIButton 是我想到的解决方案,但我要求为这个任务提供一个通用解决方案,它适合任何形状,例如 body器官应该采用不同的形状,为每个器官都有一个子类 UIButton 不是一个合乎逻辑的解决方案,但你的回答仍然可以解决问题,谢谢:) 你可能想看看这个github项目github.com/ole/OBShapedButton以上是关于如何制作自定义 UIButton,使其具有不规则的曲线,如岩石、石头、树木……等?的主要内容,如果未能解决你的问题,请参考以下文章
自定义 UIImagePickerController 使其具有白色边框