SwiftUI двойная панель навигации - PullRequest
1 голос
/ 23 сентября 2019

У меня проблемы с навигацией в SwiftUI.У меня есть кнопка на панели навигации, при нажатии на нее открывается новый вид навигации со списком элементов.При касании одного из этих элементов отображается подробный вид.

Но я заканчиваю с чем-то вроде этого.enter image description here

Ниже приведен код

struct FirstView: View {

   var body: some View {
       NavigationView {
           List {
            ...
           }
           .navigationBarTitle(Text("First View"))
           .navigationBarItems(trailing: MyButton())
       }
    }
}

struct MyButton: View {
    var body: some View {
        NavigationLink("SecondView", destination: SecondView())
    }
}

struct SecondView: View {
   var body: some View {
       NavigationView {
           Text("My View")
       }
   }
}

1 Ответ

3 голосов
/ 23 сентября 2019

Удалите NavigationView из SecondView.

NavigationLink помещает второй вид в первый навигационный вид, поэтому вам не нужно помещать его во второй.

Вы все еще можете обновить заголовок представления с SecondView, например, так:

struct SecondView: View {
   var body: some View {
       Text("My View")
       .navigationBarTitle("Second View")
   }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...