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

SwiftUI中NavigationView返回按钮过多问题求助

解决NavigationView多余返回按钮及选项位置问题

问题根源

你写了两个独立的NavigationView,这会导致界面叠加、导航逻辑混乱,进而出现多余返回按钮;阿拉伯语选项位置靠下是因为两个NavigationView叠加后,第二个List的内容显示在了第一个List的下方。

修复方案

1. 合并NavigationView

整个应用只需要一个根NavigationView,把所有导航项整合到同一个List中,用Section分组来保持结构清晰。

2. 调整阿拉伯语选项位置

直接修改NavigationLink的顺序,把阿拉伯语选项移到你想要的位置(比如顶部)。

修改后的代码

NavigationView {
    List {
        // 将阿拉伯语选项移至顶部
        NavigationLink("Arabic"){
            Arabic()
        }
        NavigationLink("English"){
            English()
        }
        NavigationLink("Coptic"){
            Coptic()
        }
        NavigationLink ("Hazzat / Lyrics"){
            Hazzat()
        }

        // 用Section分组宗教服务类选项
        Section(header: Text("Religious Services")) {
            NavigationLink("Liturgy"){
                ArLiturgy()
            }
            NavigationLink("Offering of Incense"){
                English()
            }
            NavigationLink("Tasbeha"){
                English()
            }
        }
    }
    .navigationTitle("My App") // 添加导航标题优化界面
}

额外注意事项

  • 所有子页面(如Arabic、English等)内部不要重复嵌套NavigationView,否则仍会出现多余返回按钮。
  • 若使用iOS 16及以上版本,推荐用NavigationStack替代NavigationView,它的导航层级管理更直观、不易出错。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.08 16:20:31