在SwiftUI中,似乎有两个选项可以修改列表的颜色。
设置列表的行背景颜色
List { ForEach(elements, id:\.self) { element in }.listRowBackground(Color.blue) }
将列表的颜色方案设置为“浅色”或“深色”
List { ForEach(elements, id:\.self) { element in } }.colorScheme(.light) // .dark
设置其他属性,如背景、前景颜色等似乎对感兴趣的视图颜色没有任何影响。
目前,我将列表嵌入到导航视图中,如下所示:
NavigationView {
List {
ForEach(elements, id:\.self) { element in
}
}.colorScheme(.light) // .dark
}
但是,再次强调,没有颜色设置或视图层次结构设置似乎能够使背景视图设置为清晰/透明,以便主视图的颜色可以起到驱动作用。相反,通过实验发现我们被迫选择白色或黑色背景。这是Swift或Xcode的错误还是存在解决方案?