tvOS UIButton .plain 样式,没有模糊背景视图
Posted
技术标签:
【中文标题】tvOS UIButton .plain 样式,没有模糊背景视图【英文标题】:tvOS UIButton .plain style without blurred background view 【发布时间】:2017-09-22 13:07:33 【问题描述】:UIButtonType.plain 是“没有模糊背景视图的标准系统按钮”。在 tvOS 11 中。但是,当我尝试制作 .plain
UIButton 并将其背景颜色更改为红色时,我仍然可以在 UIButton 中看到 VisualEffectView 使红色变暗。如何摆脱模糊的背景视图并获得具有运动效果的真正普通按钮?谢谢。
snapshot
【问题讨论】:
【参考方案1】:在 tvOS 上对 UIButton
的自定义是有限的,如果不继承 UIButton
,您可能无法获得所需的效果。
但是,一种没有子类化的解决方法是使用图像并为您的按钮设置背景图像。
有几个开源库可以满足您的要求。我一直在为我的项目使用并取得巨大成功的一个是: FocusTvButton
【讨论】:
【参考方案2】:我在我的项目中使用了这个解决方法:
button.titleLabel?.superview?.backgroundColor = .red
使用此方法,您将无法为状态设置不同的颜色。如果您不关心焦点状态的不同背景颜色,这可以帮助您。
否则我认为你应该继承UIButton
并在didUpdateFocus
和pressesBegan
中设置适当的颜色
【讨论】:
以上是关于tvOS UIButton .plain 样式,没有模糊背景视图的主要内容,如果未能解决你的问题,请参考以下文章
在 Swift (tvOS) 中,如何更改 UIButton 的突出显示和焦点颜色?