繁体   English   中英

在 swiftUI 中为包含 List/Tableview 的全屏添加背景颜色

[英]Adding background color for full screen containing List/Tableview in swiftUI

我想在 SwiftUI 中更改整个屏幕(包括安全区域)的背景颜色。

将以下代码添加到最外层视图适用于所有视图,除非给定视图包含List

.frame(maxWidth: .infinity, maxHeight: .infinity)
.background(Color.red)

我想为包含列表的全屏添加背景颜色。 我尝试了多种方法,例如,

添加ZStack与第一个元素作为Color.red ,但没有奏效

Color.redList作为覆盖,但它仍然不起作用。

唯一对我有用的是将List转换为ScrollView ,但我不想要。

有没有人有任何其他的解决方案来完成这项工作,或者 Apple 无论如何都不提供更改List的背景颜色?(至少应该支持从 iOS14 到最新的)

Xcode 14 上有新的修饰符(Xcode 14b3):

在此处输入图像描述

var body: some View {
    List {
        Text("Item 1")
        Text("Item 2")
        Text("Item 3")
    }
    .scrollContentBackground(Color.blue) // << here !!
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM