私の問題は単純なもののようです。しかし、私は解決策を探すのに何時間も費やしました! UINavigationBar
ステータス バーの背景色を背景の色 (このサンプルでは赤) に合わせる必要があります。
私の問題を再現し、解決策を提供するのに役立つ最小限のコードサンプルを作成しました...
TestApp.swift
import SwiftUI
@main
struct TestApp: App {
@Environment(\.scenePhase) private var phase
var body: some Scene {
WindowGroup {
ContentView()
}
.onChange(of: phase) { newPhase in
switch newPhase {
case .active:
UINavigationBar.appearance().backgroundColor = UIColor.red
break
default:
break
}
}
}
}
ContentView.swift
struct DetailView1: View {
var body: some View {
Text("Detail view 1")
}
}
struct ContentView: View {
@State private var isDisplayDetailView1 = true
var body: some View {
NavigationView {
List {
Section {
NavigationLink(destination: DetailView1(), isActive: $isDisplayDetailView1) {
Text("Go to detail view 1")
}
}
}
.navigationBarTitle("Menu")
.listStyle(GroupedListStyle())
DetailView1()
}
}
}
edgesIgnoringSafeArea(.top)
明らかに、私は自分のNavigationView
ビューに追加しようとしましたが (そしてList
1 つに、そしてDetailView1
1 つに...)、何も変わりません... 助けてください、どこに問題があるのか わかりません!