我正在尝试为ListView提供一个背景图像,该图像不应该用于每个单元格。因此,整个视图只有一张图像。
我试图将.background(Image("nameOfImage))
添加为列表修饰符,但未执行任何操作。
NavigationView {
List(elements) { element in
NavigationLink(destination: NextView) {
Text(element.name)
Image(element.image)
}
}.background(Image("nameOfImage"))
}
我也尝试过ZStack,但是我认为列表覆盖了我的图片
那么我该如何将图像作为列表背景或视图背景(上面的代码是整个视图)
答案 0 :(得分:2)
这样做确实可行,但要点是UITableView
和UITableViewCell
具有默认的白色backgroundColor
。您应该使它们透明以供透视。
类似的东西:
struct ContentView: View {
init() {
UITableView.appearance().backgroundColor = .clear // For tableView
UITableViewCell.appearance().backgroundColor = .clear // For tableViewCell
}
var body: some View {
NavigationView {
List(0...10, id: \.self) { number in
Text("\(number)")
}.background(Image("BG"))
}
}
}
请注意,我已经简化了答案,使其独立于项目的其他部分