title: SwiftUI, setting title to child views of TabView inside of NavigationView does not work
body: <p>Why I am putting TabView into a NavigationView is because I need to hide the bottom tab bar when user goes into 2nd level 'detail' views which have their own bottom action bar.</p>
  
  <p>But doing this leads to another issue: all the 1st level 'list' views hosted by TabView no longer display their titles. Below is a sample code:</p>
  
  <pre><code>import SwiftUI
  
  enum Gender: String {
      case female, male
  }
  
  let members: [Gender: [String]] = [
      Gender.female: ["Emma", "Olivia", "Ava"], Gender.male: ["Liam", "Noah", "William"]
  ]
  
  struct TabItem: View {
      let image: String
      let label: String
      var body: some View {
          VStack {
              Image(systemName: image).imageScale(.large)
              Text(label)
          }
      }
  }
  
  struct ContentView: View {
      var body: some View {
          NavigationView {
              TabView {
                  ListView(gender: .female).tag(0).tabItem {
                      TabItem(image: "person.crop.circle", label: Gender.female.rawValue)
                  }
                  ListView(gender: .male).tag(1).tabItem {
                      TabItem(image: "person.crop.circle.fill", label: Gender.male.rawValue)
                  }
              }
          }
      }
  }
  
  struct ListView: View {
      let gender: Gender
      var body: some View {
          let names = members[gender]!
          return List {
              ForEach(0..&lt;names.count, id: \.self) { index in
                  NavigationLink(destination: DetailView(name: names[index])) {
                      Text(names[index])
                  }
              }
          }.navigationBarTitle(Text(gender.rawValue), displayMode: .inline)
      }
  }
  
  struct DetailView: View {
      let name: String
      var body: some View {
          ZStack {
              VStack {
                  Text("profile views")
              }
              VStack {
                  Spacer()
                  HStack {
                      Spacer()
                      TabItem(image: "pencil.circle", label: "Edit")
                      Spacer()
                      TabItem(image: "minus.circle", label: "Delete")
                      Spacer()
                  }
              }
          }
          .navigationBarTitle(Text(name), displayMode: .inline)
      }
  }
  </code></pre>
  
  <p>What I could do is to have a <em>@State var title</em> in the root view and pass the binding to all the list views, then have those list views to set their title back to root view on appear. But I just don't feel so right about it, is there any better way of doing this? Thanks for any help.</p>