Я хочу установить изображение в качестве фона списка, поэтому я использовал этот вопрос в качестве ссылки и побежал с ним. (Я использовал изображение вместо градиента)
Вот мой код
import SwiftUI
struct TestContentView: View {
init() {
UITableView.appearance().backgroundColor = .clear// Uses UIColor
}
var body: some View {
NavigationView {
Image("milkyway")
.resizable()
.frame(maxHeight: .infinity)
.edgesIgnoringSafeArea(.all)
.overlay(List {
ForEach(1...10, id: \.self) { index in
NavigationLink( destination: DetailView()) {
ContentCell()
}
.frame(height: 100)
.listRowBackground(Color.clear) // Uses Color
}
}
.navigationBarTitle("My List"))
}
}
}
struct ContentCell: View {
var body: some View {
GeometryReader { geometry in
VStack {
Text("An item to display.")
}
.frame(width: (geometry.size.width), height: geometry.size.height, alignment: .center)
.background(Color.clear)// Working
}
}
}
struct DetailView: View {
var body: some View {
VStack {
Text ("At the detail view")
}
.frame(minWidth: 0, maxWidth: .infinity, minHeight: 0, maxHeight: .infinity)
.background(Color.clear)// Working
.edgesIgnoringSafeArea(.all)
}
}
struct TestContentView_Previews: PreviewProvider {
static var previews: some View {
TestContentView()
}
}
Казалось, он работает нормально. Однако, как вы можете видеть из этой картинки , содержимое перекрывается с большим заголовком. РЕДАКТИРОВАТЬ: (Если вы прокрутите этот экран, большой заголовок и содержимое будут перекрываться.)
Как это может работать?