Xcode 13.1 中的导航链接问题 -- 空白而不是链接?

Navigationlink question in Xcode 13.1 -- Blanks instead of links?

抱歉新手问题,但我一直在想为什么 Navigationlink 根本不产生 link。 Xcode 编译,但新视图的 link 所在的位置为空白。这个特定的视图是来自 ContentView 的视图 3,因此结构是 ContentView -> 视图 2 -> 视图 3(试图 link 到视图 4)。

struct MidnightView: View {

var hourItem: HoursItems

@State var showPreferencesView = false

@State var chosenVersion: Int = 0

@State var isPsalmsExpanded: Bool = false

@State var showLXX: Bool = false
   
var body: some View {
    ScrollView (.vertical) {
        VStack  (alignment: .center) {
            Group {
                Text (hourItem.hourDescription)
                    .font(.headline)
                Text ("Introduction to the \(hourItem.hourName)")
                    .font(.headline)
                    .bold()
                    .frame(maxWidth: .infinity, alignment: .center)
                ForEach (tenthenou, id: \.self) {
                    Text ("\([=11=])")
                    Text ("\(doxasi)")
                        .italic()
                }
            }
            .padding()
         NavigationView {
             
                List {
                    ForEach (midnightHours, id:\.id) {watch in
                        
                        NavigationLink ("The \(watch.watchName)", destination: MidnightWatchView (midnightItem: watch, chosenVersion: self.chosenVersion, isPsalmsExpanded: self.isPsalmsExpanded, showLXX: self.showLXX))
                    }
                }
                    
         }
        Group {
            Text ("Absolution of the \(hourItem.hourName)")
                .font(.headline)
            Text (absolutionTexts[(hourItem.hourName)] ?? " ")
            Divider()
            Text ("Conclusion of Every Hour")
                .font(.headline)
            Text (hourConclusion)
            Divider()
            Text (ourFather)
        }
            .padding()
        }
    }
    .navigationBarTitle ("The Midnight Hour", displayMode: .automatic)
    .navigationBarItems (trailing: Button (action: {self.showPreferencesView.toggle()}) {Text (psalmVersions[chosenVersion])}
                            .sheet(isPresented: $showPreferencesView) {PreferencesView(showPreferencesView: self.$showPreferencesView, chosenVersion: self.$chosenVersion, isPsalmsExpanded: self.$isPsalmsExpanded, showLXX: self.$showLXX)})
}

}

NavigationLink 没有出现的原因可能是您在 ScrollView 中包含了 List。因为 List 也是一个滚动组件,大小调整变得混乱并且 List 最终高度为 0。删除 List { 和相应的 },您的链接应该会出现。

您的代码中还有许多其他潜在问题(正如我在评论中提到的),包括 ScrollView 中间的 NavigationView。我也会删除它,因为您 可能 在您的视图层次结构中已经 NavigationView 更高了。