嵌套在TabView中时,SwiftUI iOS 13.3缺少导航栏标题

时间:2020-02-18 05:42:16

标签: swift uinavigationbar swiftui uitabview ios13.3

将视图放在TabView中时,导航栏标题丢失。有人知道出什么问题吗?

struct ContentView: View {
    var body: some View {
        NavigationView {
            TabView {
                Text("Tab 1")
                    .tabItem {
                        Text("Tab 1")
                    }
                    .navigationBarTitle("Tab 1")
                    .navigationBarHidden(false)

                Text("Tab 2")
                    .tabItem {
                        Text("Tab 2")
                    }
                    .navigationBarTitle("Tab 2")
                    .navigationBarHidden(false)
            }
        }
    }
}

This is what I'm getting:

This is what I wish to achieve:

1 个答案:

答案 0 :(得分:3)

TabBar被设计为根视图,因此为了满足您的需求,可以使用以下方法代替

struct ContentView: View {
    var body: some View {
        TabView {
            NavigationView {
                Text("Tab 1")
                    .navigationBarTitle("Tab 1")
                    .navigationBarHidden(false)
            }
            .tabItem {
                Text("Tab 1")
            }

            NavigationView {
                Text("Tab 2")
                    .navigationBarTitle("Tab 2")
                    .navigationBarHidden(false)
            }
            .tabItem {
                Text("Tab 2")
            }
            .navigationBarTitle("Tab 2")
            .navigationBarHidden(false)
        }
    }
}