基于.手势类型的SwiftUI NavigationLink目标(视图)

基于.手势类型的SwiftUI NavigationLink目标(视图),swiftui,navigationlink,Swiftui,Navigationlink,我知道NavigationLink通常是: ForEach(xx, id: \.id) { x in NavigationLink( destination: oneView(x: x)) { XItem(x: x) // Image + Text in VStack } } 然而,我想做的是类似这样的事情: var body: some View { NavigationView { List {

我知道NavigationLink通常是:

ForEach(xx, id: \.id) { x in
   NavigationLink(
      destination: oneView(x: x)) {
        XItem(x: x) // Image + Text in VStack 
      }
}
然而,我想做的是类似这样的事情:

var body: some View {
        NavigationView {
            List {
                ScrollView(.horizontal, showsIndicators: false) {
                    VStack(alignment: .leading) {
                        HStack {
                            ForEach(xx, id: \.id) { x in
                                XItem(x: x) // Image + Text in VStack 
                                    .gesture(
                                        TapGesture()
                                            .onEnded { _ in
                                                NavigationLink(destination: oneView(x: x))
                                        }
                                    )
                                    .gesture(
                                        LongPressGesture(minimumDuration: 2)
                                            .onEnded { _ in
                                                NavigationLink(destination: twoView(x: x))
                                        }
                                    )

                            }
                        }
                    }
                }.frame(height: 250)
            }
            .navigationBarTitle(Text("x"))
        }
    }
对于单个图像(或VStack中的图像+文本),我希望根据手势的类型导航到不同的视图。感谢任何解决方案