5

我正在尝试在 SwiftUI 中实现UICollectionView类似View的功能,它基本上可以正常工作。但是当我在滚动视图中滚动/拖动以向下滚动时NavigationLink,即使我只是想向下滚动,也会在 上识别到点击然后导航到详细视图。

有什么想法可能导致这种情况吗?附加信息:整体NavigationView.sheet从另一个视图打开的(您可能会在屏幕截图中注意到)。tag我尝试通过在链接上设置属性并在 a 中设置标签来添加“手动”链接TapGesture,但这也不起作用。

这是一个可以重现错误的简短示例。向下滚动将激活对其中一个白色矩形的点击。

在滚动视图上拖动手势之前查看

在拖动手势期间查看,已在 NavigationLink 上识别点击

拖动手势后导航视图推送到详细视图

    var body: some View {
        NavigationView {
            ScrollView {
                VStack {
                    ForEach(0..<6) { i in
                        NavigationLink(destination: Text("Detail")) {
                            Rectangle()
                                .background(Color.red)
                                .frame(width: 365, height: 100, alignment: .center)
                        }
                    }
                }
            }
            .navigationViewStyle(StackNavigationViewStyle())
            .navigationBarTitle("Items")
        }
    }
4

0 回答 0