我试图在滚动视图中列出按钮的多个单元格但是当我这样做时,它会列出它们当我点击其中任何一个时它会点击所有的单元格看起来就像一个带有4个不同单元格的大按钮
ZStack{
Color("Background")
VStack{
ScrollView(showsIndicators: false){
ForEach(userVM.user?.chats ?? [ChatModel()]){ chat in
Button(action:{
print(chat.name ?? " ")
},label:{
Text("(chat.name ?? " ")")
})
}
}
}
}
在ForEach
循环中,您要确保每个ChatModel
是唯一的。通常,您可以通过在ChatModel
中包含id并使其可识别来做到这一点。
因此,如果您在ChatModel
中没有id,请尝试:
ForEach(userVM.user?.chats ?? [ChatModel()], id: .self){ chat in ...}
或this,如果ChatModel
有id:
ForEach(userVM.user?.chats ?? [ChatModel()], id: .id){ chat in ...}