gpt4 book ai didi

swiftui - 删除/更改 SwiftUI 列表中的部分标题背景颜色

转载 作者:行者123 更新时间:2023-12-03 07:36:53 27 4
gpt4 key购买 nike

用一个简单的List在 SwiftUI 中,如何更改/删除部分标题的标准背景颜色

struct ContentView : View {
var body: some View {
List {
ForEach(0...3) { section in
Section(header: Text("Section")) {
ForEach(0...3) { row in
Text("Row")
}
}
}
}
}
}

Screenshot with grey section header background

最佳答案

在 beta 4 中,relativeWidth 已被弃用。代码更新以反射(reflect)这一点。
不幸的是,没有设置背景颜色的快速参数。但是,您仍然可以这样做:
enter image description here

import SwiftUI

struct ContentView : View {
var body: some View {
List {
ForEach(0...3) { section in
Section(header:
CustomHeader(
name: "Section Name",
color: Color.yellow
)
) {
ForEach(0...3) { row in
Text("Row")
}
}
}
}
}
}

struct CustomHeader: View {
let name: String
let color: Color

var body: some View {
VStack {
Spacer()
HStack {
Text(name)
Spacer()
}
Spacer()
}
.padding(0).background(FillAll(color: color))
}
}

struct FillAll: View {
let color: Color

var body: some View {
GeometryReader { proxy in
self.color.frame(width: proxy.size.width * 1.3).fixedSize()
}
}
}

关于swiftui - 删除/更改 SwiftUI 列表中的部分标题背景颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56867334/

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