【问题标题】:How can I change background color of button in SwiftUI?如何更改 SwiftUI 中按钮的背景颜色?
【发布时间】:2019-10-29 19:18:18
【问题描述】:

在 SwiftUI 中更改按钮背景颜色的最佳方法是什么?

我想创建一个图块,它是一个带有居中文本和某种颜色的矩形背景的按钮。

【问题讨论】:

    标签: button swiftui


    【解决方案1】:

    Group {
        Button(action: { }) {
            Text("Button Text!")
                .padding()
        }
    }
    .background(Color.black)
    

    【讨论】:

    • 当按钮在 VStack 中时,这个不编译
    • 如何应用圆角半径?
    【解决方案2】:

    您可以直接向按钮添加修改,无需任何容器(例如:组)

    Button(action: {}) {
        Text("Click me!")
    }
    .padding()
    .foregroundColor(.white)
    .background(Color.red)
    

    希望能帮助到别人!

    【讨论】:

    • 怎么来的。当您在资产文件夹中设置了颜色时,background(Color("Blue")) 不起作用?!
    【解决方案3】:
                Button(action: {self.buttonTapped()}) {
                Text("Button")
                    .padding(.all, 12)
                    .foregroundColor(.white)
                    .background(Color.red)
            }
    

    这就是整个背景的可点击方式

    【讨论】:

    • 这看起来很奇怪,但这是在按钮中自定义背景颜色的正确方法
    【解决方案4】:

    SwiftUI 颜色

    从 iOS v13 及更高版本开始,当您使用颜色时,您应该考虑 Light 和 Dark 模式。

    .foregroundColor(.red)
    .background(.blue)
    

    例如,暗模式下的 .black 将是不可见的(黑底黑字)。您可以使用系统颜色作为变体。例如UIColor.label

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-06-04
      • 1970-01-01
      • 2021-06-22
      • 2015-04-03
      相关资源
      最近更新 更多