我有一个原始的项目数组,可以从数据库中检索到
var items = [Item]()
其中包含:
要在按部分分组的UITableView中显示此列表,我正在生成以下结构:
struct Section {
var sectionName : String!
var sectionItems : [Item]!
}
var sections : [Section]!
通过sections数组,我可以正确显示我的UITableView。如果需要更改某个项目的数量,可以轻松地在 sections 数组中更改该项目,并通过indexpath的section和row访问数据。
问题:
但是,我不知道如何更改原始数据(4个项目的列表),这是我需要用来保存在数据库中的数据。索引路径信息没有告诉我要执行更改需要访问 items 数组中的哪个索引的任何信息。
解决方案?
我正在考虑两个解决方案,但这两个似乎都不是太好了:
通过遍历“节”来重建原始列表。听起来很多不必要的迭代,考虑到我可以直接通过索引访问该项目。
为每个项目创建一个附加属性,以将其索引位置保留在原始数组中。不过,这个看起来很乱。
你们男孩和女孩怎么做?
非常感谢。