SwiftuUI NavigationLink внутри сенсорной панели - PullRequest
1 голос
/ 13 апреля 2020

Я пытаюсь создать NavigationLink в MacBook TouchBar с помощью SwiftUI. На самом деле с моим фрагментом кода кнопка отображается на сенсорной панели, но, к сожалению, ссылка не работает.

NavigationView {
  .touchBar {
    NavigationLink(destination: BookView()) {
      Text("GoToBook")
    }
  }
}

struct BookView: View {
  var body: some View {
    Text("Hello")
  }
}

1 Ответ

1 голос
/ 13 апреля 2020

Попробуйте вместо этого с Button в сенсорной панели активировать NavigationLink программно, как показано ниже

@State private var isActive = false

...

// below in body
NavigationView {
  SomeView()      // << your view here 
  .background(NavigationLink(destination: BookView(), isActive: $isActive) { 
                EmptyView() 
              }  // hidden link
  )
  .touchBar {
     Button("GoToBook") { self.isActive.toggle() } // activate link
  }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...