UIButton setBackgroundImage 恢复默认

Posted

技术标签:

【中文标题】UIButton setBackgroundImage 恢复默认【英文标题】:UIButton setBackgroundImage back to default 【发布时间】:2013-09-20 22:39:22 【问题描述】:

我有一个在 UIStoryBoard 中创建的普通 RoundedRect UIButton。在某种情况下,我在按钮上调用setBackgroundImage 来改变它的外观。然后如何将 UIButton 的外观更改回设置背景图像之前的外观(默认 RoundedRect 外观)?调用[button setBackgroundImage:nil forState:UIControlStateNormal]; 似乎会导致按钮完全没有背景(完全透明)。

谢谢, 最大

【问题讨论】:

这取决于原始外观。你可以设置背景图片... 这是一个普通的 RoundedRect UIButton。我忘了把它放在问题中。我已经更新了。 【参考方案1】:

据我所知,当您将 UIButton 设置为 RoundedRect 时,您会告诉您的应用将默认图像设置为按钮的背景。

如果您随后使用自定义图像更改此背景,您的应用会放弃默认图像,并使用新图像进行切换。

很遗憾,您的应用不记得更改按钮之前的外观,并且无法返回。

无论如何,您可以通过以下方式重置您的 UIButton:

    删除并重新创建 创建类似于 RoundedRect UIButton 的自定义背景图像 使用 UIControlStates 设置按钮的外观

【讨论】:

以上是关于UIButton setBackgroundImage 恢复默认的主要内容,如果未能解决你的问题,请参考以下文章

如何删除多个 UIButton 或动态创建的特定 UIButton?

为啥 Swift4 会强制转换 UIButton 数组!到 [UIButton?] 类型?

UIButton:根据titleLabel Text计算UIButton的高度

我们在swiftui中作为 UIButton(Sender: UIButton) 有啥? [关闭]

UIButton的使用

如何在 UIButton 的右边缘对齐 UIButton 图像