Sea*_*ins 1 apple-watch swiftui vstack
我正在致力于在 SwiftUI 中构建 Apple Watch 屏幕。布局工作得很好,但颜色样式的某些方面我似乎无法弄清楚。这是我的代码:
struct Watch3ThingsMainUI: View {
var goals: [Goal]
var body: some View {
VStack {
Text("3things")
.foregroundColor(Color("3thingsBlue"))
List(goals) { goal in
HStack {
Text(goal.name)
Spacer()
Image(systemName: "gear")
}
.background(Color.blue)
}
.background(Color.green)
.foregroundColor(Color.red)
.accentColor(Color.yellow)
}
}
}
Run Code Online (Sandbox Code Playgroud)
这是它的渲染方式的截图:
您会注意到,HStack 的蓝色背景仅覆盖了一个矩形区域,而不是列表似乎自动创建的整个按钮。奇怪的是,虽然列表支持背景修改器,但它似乎被忽略了——没有任何颜色是绿色的。
我希望能够确定整个按钮的背景,但我想不出一种方法来做到这一点——无论我尝试什么恶作剧,它在 HStack 周围仍然顽固地保持深灰色。
尝试把你的身体换成可以让整个按钮都是蓝色的
var body: some View {
VStack {
Text("3things")
.foregroundColor(Color("3thingsBlue"))
List {
ForEach(self.goals) { goal in
HStack {
Text(goal.name)
Spacer()
Image(systemName: "gear")
}
.listRowBackground(Color.blue)
}
}
.foregroundColor(Color.red)
.accentColor(Color.yellow)
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1431 次 |
| 最近记录: |