SwiftUI:如何使列表视图中的图像不具有与列表项相同的操作?

SwiftUI:如何使列表视图中的图像不具有与列表项相同的操作?,swiftui,swiftui-list,swiftui-navigationview,Swiftui,Swiftui List,Swiftui Navigationview,我在视图中有一个列表。在列表中,项被迭代以填充列表。单击每个列表项时,我想导航到另一个视图。 这正如预期的那样工作,但我希望在每个列表项中有一个由圆圈表示的按钮,该按钮可以独立单击,而无需导航到第二个视图。现在,点击圆圈就可以进入第二视图。我怎样才能做到这一点 var body: some View { NavigationView { List { ForEach(items) { item in Navigati

我在视图中有一个列表。在列表中,
被迭代以填充列表。单击每个列表项时,我想导航到另一个视图。
这正如预期的那样工作,但我希望在每个列表项中有一个由圆圈表示的
按钮
,该按钮可以独立单击,而无需导航到第二个视图。现在,点击圆圈就可以进入第二视图。我怎样才能做到这一点

var body: some View {
    NavigationView {
        List {
            ForEach(items) { item in
                NavigationLink(
                    destination: OtherView(name: "test"),
                    label: {
                       Text("Navigate")
                    })
                HStack {
                    Image("1")
                        .resizable()
                        .frame(width: 32.0, height: 32.0)
                    Button(action: addItem) {
                        Label("Add Item", systemImage: "circle")
                    }
                }

            }
        }
    }
}

使用
列表
无法执行此操作。您可以在
滚动视图中使用
VStack
LazyVStack
作为替代解决方案

不确定,但我认为您应该使用HStack将文本、图像和按钮全部放入导航链接。在一个类似的问题中,有一件事帮助了我,那就是
.buttonStyle(PlainButtonStyle())
创建一个
行视图(item:item)
,但是你的
ForEach
里面有什么。每个
项目
都有一个
行视图
,您可以在其中单独操作。