我遇到了Swift阵列的问题。当我要添加或删除项目的索引时,我想在单个事务中添加和删除数组中的项目。
array.insert(insertions.map({return (viewModels[$0], NSIndexPath(forRow: $0, inSection: 0))}))
array.remove(deletions.map{NSIndexPath(forRow: $0, inSection: 0)})
但是当我删除索引时,它会中断添加项目的顺序并将它们添加到错误的位置。
这个想法应该是这样的:
array.update({
array.insert(insertions.map({return (viewModels[$0], NSIndexPath(forRow: $0, inSection: 0))}))
array.remove(deletions.map{NSIndexPath(forRow: $0, inSection: 0)})
})
然后以某种方式组合它们,理想情况下我希望有多种添加和删除功能。