swift NavigationLink从左向右滑动不完全后不再导航

e1xvtsh3  于 2022-10-31  发布在  Swift
关注(0)|答案(1)|浏览(134)

在我的应用程序中,我有一个NavigationStackNavigationSplitViewdetail中。使用下面的代码,导航可以正常前进和后退,但如果从细节开始,我不完全地向左滑动以关闭视图,NavigationLink就不能再工作了。此代码部分复制自Apple Documentation。有人知道问题的原因吗?

struct ContentView: View {
    let colors: [Color] = [.purple, .pink, .orange]
    @State private var selection: Color? = nil

    var body: some View {
        NavigationSplitView {
            List(colors, id: \.self, selection: $selection) { color in
                NavigationLink(color.description, value: color)
            }
        } detail: {
            NavigationStack {
                if let color = selection {
                    VStack {
                        NavigationLink(color.description, value: color)
                    }
                    .navigationDestination(for: Color.self) { color in
                        RoundedRectangle(cornerRadius: 10)
                            .fill(color)
                            .frame(width: 150, height: 150)
                    }
                } else {
                    Text("Pick a color")
                }
            }
        }
    }
}

编辑:我做了一些代码改进,为每个视图创建单独的struct,以避免混淆,更好地理解代码,但问题仍然存在。
第一个

qni6mghb

qni6mghb1#

看起来bug已经修复了。至少它在最新的Xcode 14. 1 RC上能像预期的那样工作。

相关问题