Откройте root вид с помощью панели вкладок в SwiftUI - PullRequest
2 голосов
/ 07 февраля 2020

Есть ли способ открыть окно root, нажав на панель вкладок, как и большинство приложений iOS в SwiftUI?

Вот пример ожидаемого поведения.

Я попытался программно отобразить представления, используя simultaneousGesture следующим образом:

import SwiftUI


struct TabbedView: View {
    @State var selection = 0
    @Environment(\.presentationMode) var presentationMode
    var body: some View {
                TabView(selection: $selection) {
            RootView()
                .tabItem {
                    Image(systemName: "house")
                    .simultaneousGesture(TapGesture().onEnded{
                        self.presentationMode.wrappedValue.dismiss()
                        print("View popped")
                    })
            }.tag(0)

            Text("")
                .tabItem {
                    Image(systemName: "line.horizontal.3")
            }.tag(1)
        }
    }
}

struct RootView: View {
    var body: some View{
        NavigationView{
            NavigationLink(destination:SecondView()){
        Text("Go to second view")
            }
        }
    }
}

struct SecondView: View {
    var body: some View{
        Text("Tapping the house icon should pop back to root view")
    }
}

Но похоже, что эти жесты были проигнорированы.

Любые предложения или решения приветствуются

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...