SwiftUI底部安全区列表视图如何添加背景色 iOS 14
How to add background color to the list view of bottom safe area SwiftUI iOS 14
我正在尝试使用列表视图将背景色添加到底部安全区域。
我知道如何为列表单元格添加背景颜色,但它不适用于安全区域。有什么办法吗?
注意:我试过ZStack
和.edgesIgnoringSafeArea
,我需要使用SwiftUI 2.0列表视图 , 不是 LazyVStack
或 SwiftUI 1.0 (iOS 13) List View
List {
ForEach(0..<100) { index in
Text(String(index))
.listRowBackground(Color.red.edgesIgnoringSafeArea(.all))
}
}
您需要添加:
UITableView.appearance().backgroundColor = .clear
并将 List
放入 ZStack
:
@main
struct TestApp: App {
init() {
UITableView.appearance().backgroundColor = .clear
}
var body: some Scene {
WindowGroup {
ZStack {
Color.red.edgesIgnoringSafeArea(.all)
List {
ForEach(0 ..< 100) { index in
Text(String(index))
.listRowBackground(Color.red)
}
}
}
}
}
}
或者不使用 ZStack
,您可以直接设置颜色:
UITableView.appearance().backgroundColor = UIColor(.red)
请注意,这将 backgroundColor
全局设置 。
我正在尝试使用列表视图将背景色添加到底部安全区域。 我知道如何为列表单元格添加背景颜色,但它不适用于安全区域。有什么办法吗?
注意:我试过ZStack
和.edgesIgnoringSafeArea
,我需要使用SwiftUI 2.0列表视图 , 不是 LazyVStack
或 SwiftUI 1.0 (iOS 13) List View
List {
ForEach(0..<100) { index in
Text(String(index))
.listRowBackground(Color.red.edgesIgnoringSafeArea(.all))
}
}
您需要添加:
UITableView.appearance().backgroundColor = .clear
并将 List
放入 ZStack
:
@main
struct TestApp: App {
init() {
UITableView.appearance().backgroundColor = .clear
}
var body: some Scene {
WindowGroup {
ZStack {
Color.red.edgesIgnoringSafeArea(.all)
List {
ForEach(0 ..< 100) { index in
Text(String(index))
.listRowBackground(Color.red)
}
}
}
}
}
}
或者不使用 ZStack
,您可以直接设置颜色:
UITableView.appearance().backgroundColor = UIColor(.red)
请注意,这将 backgroundColor
全局设置 。