You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

iOS 16 NavigationStack跳转后自动返回根视图问题求助

跳转至包含多个动态列表的目标视图后,界面会自动返回根视图。

推测该问题与目标视图的动态列表更新有关——移除目标视图中的NavigationStack后,问题完全消失。

已查找过同类问题,但未得到有效解答。

问题演示

跳转后自动返回根视图演示

相关代码

主视图代码

struct MainView: View {
    var body: some View {
        NavigationStack {
            List {
                NavigationLink("进入目标视图") {
                    TargetView()
                }
            }
            .navigationTitle("主视图")
        }
    }
}

目标视图代码

struct TargetView: View {
    @State private var listData1 = [String]()
    @State private var listData2 = [String]()
    
    var body: some View {
        NavigationStack { // 移除此处的NavigationStack后问题不再出现
            List {
                Section("第一组数据") {
                    ForEach(listData1, id: \.self) { item in
                        Text(item)
                    }
                }
                Section("第二组数据") {
                    ForEach(listData2, id: \.self) { item in
                        Text(item)
                    }
                }
            }
            .navigationTitle("目标视图")
            .onAppear {
                // 模拟动态加载数据更新列表
                DispatchQueue.main.asyncAfter(deadline: .now() + 0.1) {
                    listData1 = ["项目1", "项目2", "项目3"]
                    listData2 = ["条目A", "条目B", "条目C"]
                }
            }
        }
    }
}

内容的提问来源于stack exchange,提问作者srome11

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.10 13:45:45