使用 UIView 作为 UIButton 的背景?
Posted
技术标签:
【中文标题】使用 UIView 作为 UIButton 的背景?【英文标题】:Use a UIView as the background of a UIButton? 【发布时间】:2014-03-14 15:13:23 【问题描述】:我有一个 UIButton。我不想给它一个背景图像,而是想使用一个自定义 UIView 对象作为背景。我意识到我可以通过将 UIView 渲染成图像然后使用它来做到这一点。但是有更好的方法吗?
我研究过使用 Button 的视图树,但这似乎有不良的副作用。
【问题讨论】:
【参考方案1】:为了达到同样的效果,我通常这样做:
将子视图添加到父视图
在父视图中添加一个带有clearColor的UIButton,与子视图具有相同的框架。
您可以通过创建具有此视图和按钮作为其属性的自定义 UIView 类来实现相同的目的。
【讨论】:
你能让showsTouchWhenHighlighted以这种方式工作吗? 很高兴它有帮助。除非您想方便地使用 UIButton 功能,否则您还可以按照@Logan 的建议使用轻击手势识别器。【参考方案2】:如果您想将 UIView 用作按钮,您只需向 UIView 添加轻击手势识别器并使用它。您是否正在寻找特定的东西?
【讨论】:
以上是关于使用 UIView 作为 UIButton 的背景?的主要内容,如果未能解决你的问题,请参考以下文章
Objective C-以编程方式插入UIButton的标题,在选中时更改背景和标题颜色