我有一个列表,其中包含从firebase数据库中提取的物品.我希望每个项目都有单独的计数器,但有一个变量没有为我做到这一点,而是向列表上的每个项目添加1.图片附于展示.
我拥有的代码:
@State var quantityItem: Int = 0
var body: some View {
List (menumodel.list) { item in
VStack{
HStack{
VStack {
Text(item.id)
.frame(maxWidth: .infinity, alignment: .leading)
Text("123 kcal, 330ml")
.font(.caption)
.foregroundStyle(Color.gray)
.frame(maxWidth: .infinity, alignment: .leading)
}
.frame(maxWidth: .infinity, alignment: .leading)
.padding(.vertical)
HStack{
Button {
if quantityItem > 0 {
self.quantityItem -= 1
}
}label: {
Image(systemName: "minus.circle")
.tint(Color.black)
}
Text("\(quantityItem)")
Button {
self.quantityItem += 1
}label: {
Image(systemName: "plus.circle")
.tint(Color.black)
}
}.frame(maxWidth: .infinity, alignment: .trailing)
.padding(.all)
}
}
}
.listStyle(GroupedListStyle())
.buttonStyle(BorderlessButtonStyle())
}
}
#Preview {
DrinksMenuView()
}```