Switch 设置颜色
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Switch 设置颜色相关的知识,希望对你有一定的参考价值。
参考技术A UISwitch设置自己想要的颜色,可以仿照以下处理Swift - 通过 switch 语句为 CAGradientLayer 设置动画
【中文标题】Swift - 通过 switch 语句为 CAGradientLayer 设置动画【英文标题】:Swift - Animating CAGradientLayer via switch statement 【发布时间】:2016-04-07 19:47:57 【问题描述】:我有一个通过 CAGradientLayer 生成的渐变背景。我还有一个 switch 语句,它根据 UI 的其他部分更新渐变层的颜色。它完美地工作,但是,渐变之间的“淡入淡出”非常非常快。我什至没有在 swift 项目中指定这一点。它只是自然地慢慢褪色。
我希望淡入淡出的持续时间为 0.5 秒。
这是我的 switch 语句。
switch newValue
case 1..<70:
gradientLayer.colors = [gradientColor1a, gradientColor1b]
case 70..<120:
gradientLayer.colors = [gradientColor2a, gradientColor2b]
case 120..<190:
gradientLayer.colors = [gradientColor3a, gradientColor3b]
case 190..<400:
gradientLayer.colors = [gradientColor4a, gradientColor4b]
default:
gradientLayer.colors = [gradientColor1a, gradientColor1b]
我正在阅读的文档指出您可以使用 toValue / fromValue 进行动画处理,但是,我不知道如何在上面的 switch 语句中实现它。是否可以为此使用 CABasicAnimation?
如何根据我的开关值让这些渐变淡出 0.5 持续时间?谢谢。
【问题讨论】:
你知道如何在switch语句之外设置动画吗? 【参考方案1】:你试过这样做吗?
CATransaction.setAnimationDuration(0.5)
你应该可以把它放在你的 switch 语句之上。
查看此答案以获得更多见解Change animation time for properties of a CALayer
【讨论】:
以上是关于Switch 设置颜色的主要内容,如果未能解决你的问题,请参考以下文章
android switch 控件上文字"开启""关闭"颜色如何改变,还有这个switch控件大小能改变么