我有一个包含foreach循环的列表,并且我想在每行中创建一个删除按钮以删除该行。
我有一个结构体数组
struct Lists{
var title : String
var id = UUID()
}
和数组
@State var list = [Lists]()
这是列表
List{
ForEach(list, id : \.id ){ item in
NavigationLink(destination:DetailView(word:item.title)){
HStack {
Text(item.title)
Spacer()
Button(action: {
self.list.remove(at: 0)
}){
Text("×")
}
}
}
}
}
我将remove(at:0)
设置为零是因为我不知道如何在for循环中获取索引。
列表:
答案 0 :(得分:0)
我通常认为更容易使用计数。.
List {
ForEach(0..<list.count, id : \.self ){ index in
NavigationLink(destination:DetailView(word: list[index].title)){
HStack {
Text(list[index].title)
Spacer()
Button(action: {
self.list.remove(at: index)
}){
Text("×")
}
}
}
}
}