У меня есть представление с навигационной панелью с большим заголовком и содержимым внутри. Я изменил цвет фона содержимого и цвет фона панели навигации.
var body: some View {
NavigationView {
VStack {
//content
}.background(Color.green)
.edgesIgnoringSafeArea(.bottom) //to fill the white space at the bottom
.navigationBarTitle("Wallets")
}
}
extension UINavigationController {
override open func viewDidLoad() {
super.viewDidLoad()
let standartAppearance = UINavigationBarAppearance()
standartAppearance.backgroundColor = UIColor.green
navigationBar.standardAppearance = standartAppearance
navigationBar.scrollEdgeAppearance = standartAppearance
navigationBar.compactAppearance = standartAppearance
}
}
А теперь, если я перехожу к следующему представлению, используя NavigationLink, и у этого представления есть заголовок с режимом отображения .inline (другой размер NavigationBar), в момент перехода я вижу пустое пространство под первой панелью навигации. Я могу заполнить его, если я сделаю .edgesIgnoringSafeArea (.all) для моего VStack, но в этом случае весь мой контент переходит под NavigationBar. Как я могу закрасить пространство под NavigationBar для пользовательского цвета?