【发布时间】:2021-03-31 03:58:33
【问题描述】:
我遇到了一个我不知道如何解决的问题。我计划使用 SwiftUI(尽可能)为 macOS 和 iOS 共享代码库。
但是已经有了一些简单的东西,比如为文本字段设置背景颜色,就会有区别
以下代码sn-p:
struct NewTextField : View
{
@State var d:String = ""
var body: some View
{
HStack(content:
{
TextField("Date: ", text:$d)
.foregroundColor(.black)
.background(Color.green)
/// ... more views
}
}
}
这是简化的;我在实际应用程序中有多个文本字段,其背景颜色取决于内容。
在 iOS 上看起来不错;完整的文本字段背景设置为所需的颜色;在 macOS 上,TextField 显示为白色背景和彩色边框。
我做错了什么?
【问题讨论】:
-
嗯,我看的更远了,只是跑过了这一行 .textFieldStyle(PlainTextFieldStyle()) 添加了它 TextField("Date: ", text:$d) .textFieldStyle(PlainTextFieldStyle()) .foregroundColor (.black) .background(Color.green) 它确实创造了想要的效果;只是不明白为什么在 iOS 上不需要它;但在 macOS ...
-
这是什么? .foregroundColor(.black) 你是说 .foregroundColor(Color.black) 吗?
-
@ElTomato 是的
.black表示Color.black。两种语法都有效。 -
@AlanS 哦,好的。谢谢。对此感到抱歉。
标签: ios macos swiftui textfield