【问题标题】:SwiftUI NavigationView nests TabView auto popSwiftUI NavigationView嵌套TabView自动弹出
【发布时间】:2022-11-21 01:19:46
【问题描述】:

NavigationView嵌套TabView,我有一个List,推到下一页 当应用程序返回后台,回到激活状态时,推送页面自动弹出。

如果TabView嵌套NavigationView就没有问题,但是我要NavigationView嵌套TabView,请问有什么办法解决吗


struct ContentView: View {
    
    var body: some View {
        
        NavigationView {
            TabView {
                List {
                    ForEach(0..<30) { index in
                        RowView(index: index)
                    }
                }
            }
        }
    }
}



struct RowView: View {
    
    var index: Int
    @State var userViewActive: Int?
    
    var body: some View {
        NavigationLink {
            Text("Hello, world!")
        } label: {
            Text("Hello, world!")
        }
    }
}

struct ContentView_Previews: PreviewProvider {
    static var previews: some View {
        ContentView()
    }
}

【问题讨论】:

  • 适用于 Xcode 13.3 / iOS 15.4(即在置于前台后仍保留在导航视图中)
  • @Asperi 暂时无法升级到13.3,是否兼容iOS 15.4以下的版本?
  • 我可以确认我的 iPhone XS ( iOS 15.4.1 ) 遇到同样的问题
  • 我遇到了同样的问题。你找到答案了吗?

标签: swiftui swiftui-navigationview swiftui-tabview


【解决方案1】:

在 tabview 中,每个选项卡都应该管理自己的视图状态。阿卡

每个选项卡都应该有自己的导航视图。如果你添加这个,你会发现你的问题已经解决了。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-11-06
    • 2021-06-14
    • 2021-12-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多