在SwiftUI中的ForEach中绑定

在SwiftUI中的ForEach中绑定,swift,foreach,binding,swiftui,fetchrequest,Swift,Foreach,Binding,Swiftui,Fetchrequest,我使用FetchRequest来填充元素。然后我使用一个列表,希望显示某种todo元素,在其中可以看到哪个元素被选中,哪个元素没有被选中。因此,我创建了一个CheckBoxView 我现在的问题是,我需要向视图传递一个绑定。但在ForEach中如何做到这一点呢? 如果我有一个简单的绑定,我只需要生成一个@State就可以了。在这里怎么做 List { ForEach(elements, id: \.self) { item in CheckBoxView(checked:

我使用
FetchRequest
来填充元素。然后我使用一个列表,希望显示某种todo元素,在其中可以看到哪个元素被选中,哪个元素没有被选中。因此,我创建了一个CheckBoxView

我现在的问题是,我需要向视图传递一个绑定。但在ForEach中如何做到这一点呢? 如果我有一个简单的绑定,我只需要生成一个
@State
就可以了。在这里怎么做

List {
    ForEach(elements, id: \.self) { item in
        CheckBoxView(checked: item.checked)
    }
}
以下是视图:

struct CheckBoxView: View {
    @Binding var checked: Bool
    ....
}

假设您的
元素
是项目状态数组,则可以

List {
    ForEach(elements.indices, id: \.self) { i in
        CheckBoxView(checked: $elements[i].checked)
    }
}