gpt4 book ai didi

ios - 使用按钮淡化 UIColor

转载 作者:行者123 更新时间:2023-11-30 13:14:36 26 4
gpt4 key购买 nike

我正在制作一个交互式应用程序,它应该显示一个蓝色的 UILabel,当按下某个按钮时它必须消失。当我们继续按下按钮时,标签的颜色应该会褪色。我尝试创建自定义 UIColor 并更改其亮度,但效果并不理想。按几次按钮后颜色就会消失,之后颜色根本不会改变。

实现我的目标的最佳方式是什么?任何帮助,将不胜感激。这是一项简单的任务,但无缘无故地变得烦人。

这是我正在做的事情的代码。 “tube”是UILabel,其背景颜色应该随着int“count”的不断增加而褪色。

var intensity : CGFloat = 0.3         
@IBAction func fa(sender: AnyObject) {

let five = UIColor(hue: 0.61, saturation: 0.31, brightness: 0.76, alpha: intensity)
let four = UIColor(hue: 0.61, saturation: 0.31, brightness: 0.65, alpha: intensity)
let three = UIColor(hue: 0.61, saturation: 0.31, brightness: 0.59, alpha: intensity)
let two = UIColor(hue: 0.61, saturation: 0.31, brightness: 0.53, alpha: intensity)
let one = UIColor(hue: 0.61, saturation: 0.31, brightness: 0.37, alpha: intensity)



count += 1

if (count == 0){
tube.backgroundColor = UIColor(red: 109, green: 132, blue: 180, alpha: 0.2)
}
else if (count == 1){
tube.backgroundColor = one
print("one")
}

else if (count == 2 ){
tube.backgroundColor = two
print("two")
}

else if (count == 3){
tube.backgroundColor = three
print("three")
}

else if (count == 4){
tube.backgroundColor = four
}

else if (count == 5){
tube.backgroundColor = five
}
else {
tube.backgroundColor = UIColor(red: 109, green: 132, blue: 180, alpha: 0.2)
}

最佳答案

假设 ViewController 背景为白色,您可以通过实际淡化按钮本身或颜色的 alpha 值来淡化背景颜色。

要更改按钮的不透明度,请使用以下代码:

if tube.layer.opacity > 0 {
tube.layer.opacity -= 0.1
}

如果您想淡化颜色,则必须从先前的颜色中提取 RGB 值(请参阅 this answer )并在重新创建它时更改其 alphaValue。

关于ios - 使用按钮淡化 UIColor,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38369338/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com