Что ж, вы наблюдаете за тем, что скрытие строки состояния не работает при вызове изнутри NavigationView
, а работает снаружи. Протестировано с Xcode 11.2 и (!) Xcode 11.4beta3.
Пожалуйста, смотрите ниже мои выводы.
Case1 Case2
Case1: Внутри любого стекового контейнера
struct TestNavigationWithStatusBar: View {
var body: some View {
VStack {
Text("Hello, World!")
.statusBar(hidden: true)
}
}
}
Case2: Внутри NavigationView
struct TestNavigationWithStatusBar: View {
var body: some View {
NavigationView {
Text("Hello, World!")
.statusBar(hidden: true)
}
}
}
Решение (исправить / обойти) для использования .statusBar(hidden:)
снаружи навигационного представления. Таким образом, вы должны соответствующим образом обновить свой модификатор (или переосмыслить дизайн, чтобы отделить его).

struct TestNavigationWithStatusBar: View {
var body: some View {
NavigationView {
Text("Hello, World!")
}
.statusBar(hidden: true)
}
}