UIButton 在焦点上将图像更改回原始图像(tvOS)

Posted

技术标签:

【中文标题】UIButton 在焦点上将图像更改回原始图像(tvOS)【英文标题】:UIButton changes image back to original on focus (tvOS) 【发布时间】:2015-11-20 06:42:04 【问题描述】:

我有一个用作开关的按钮:我检查变量的当前状态(存储在使用的默认值中)并将其归入viewDidAppear

当我按下左边的按钮(忽略右边的按钮)时,它的行为应该是 - 在按钮的 UIImageView 上换出 2 个 UIImages

但一旦按钮失焦 - 按钮会将图像切换回默认图像。如果在 IB 中没有指定默认图像 - 按钮只会转到空白图像。

如何确保按钮在失焦后保持图像?我是否需要实现额外的焦点委托方法或其他东西?我是新的 tvOS,有些东西对我来说还没有意义。

【问题讨论】:

【参考方案1】:

Doh,看来您不能只在 UIImageView 属性上换掉 UIImage,而必须使用按钮设置器来解决此类问题:

button.setImage(UIImage, forState: UIControlState.Normal)

这样可以正常工作

【讨论】:

以上是关于UIButton 在焦点上将图像更改回原始图像(tvOS)的主要内容,如果未能解决你的问题,请参考以下文章

在 UIButton 的 ImageView 上将 ContentMode 设置为 AspectFill 不适用于较小的图像

如何在保持图像纵横比的同时调整 UIButton 中的图像大小?

UIButton 的图像使用滚动视图滚动,但它的动作/方法保持在原始位置

用其他图像更改 uibutton 的图像

UIButton:容器中的文本居中,图像左侧

想要在单击相同的 UIButton 时从 UITableViewCell 更改正确的 UIButton 图像