我有一个包含自定义类数组的字典,定义如下:
var coupons: [String: [Coupon]]
我将它们放入 ForEach 中,如下所示:
List {
ForEach(keys, id: \.self) { key in
Section(header: Text(key)) {
ForEach(couponDict[key] ?? [], id: \.id) { coupon in
Button(ifexpiredString(date: coupon.date)+coupon.data[1]) {
let coupons = UserDefaults.standard.coupons
let couponIndex = coupons.firstIndex(of: coupon)
self.currentview = "Coupon"+String(couponIndex!)
}.foregroundColor(ifexpired(date: coupon.date) ? Color.gray : ifexpireing(date: coupon.date))
}
}
}
}
我已经阅读了很多关于进行自动更新ForEach
或的答案List
,但没有一个使用字典,其中每个键下存储了一组自定义对象。更糟糕的是,我couponDict
从UserDefaults
. 我怎样才能做到这一点List
或ForEach
自动更新自己?