30

我正在尝试将按钮的背景颜色设置为一些自定义 rgb 值。我按如下方式创建按钮:

Button(action: {
    print("tapped")
}) {
    Text("Let's go")
}
    .background(Color.black)

这很好用,而且按钮的背景实际上是黑色的。但是,当像这样初始化背景颜色时,它不起作用,根本没有背景颜色:

.background(Color(red: 242, green: 242, blue: 242))

这是为什么?

4

2 回答 2

76

看起来它要求以百分比表示颜色,我能够让它工作

Color(red: 242 / 255, green: 242 / 255, blue: 242 / 255)
于 2019-06-09T22:15:22.917 回答
7

对于每个音调,Color期望 3 个Double值从0.0到。1.0如果你通过这个...

错误的:

.background(Color(red: 242, green: 242, blue: 242))

它被转换为白色,因为所有值都大于 1。

要解决此问题,您可以将每个值除以255并获得十六进制转换(作为 1 个答案)

正确的:

Color(red: 242 / 255, green: 242 / 255, blue: 242 / 255)
于 2020-04-18T18:55:24.287 回答