删除节中的最后一项后,目标是从UICollectionView.
中删除整个节,包括其标题 遗憾的是,即使基础数据模型中没有节,节标题仍然存在。
刷新视图(通过从导航堆栈中弹出视图并导航回视图)可以正确显示删除节标题的UICollectionView
。
在测试用例中,只有一个部分,因此删除最终项后UICollectionView
应变为空白。
建议?
func numberOfSectionsInCollectionView(collectionView: UICollectionView) -> Int {
print("# sections: (USER.getSections().count)")
return USER.getSections().count
}
// Delete item
let indexPath = view.indexPathsForSelectedItems()![0]
let section = USER.getSections()[indexPath.section]
USER.removeItemAt(section, index: indexPath.row)
view.deleteItemsAtIndexPaths([indexPath])
// Update one section or entire view
if (section.getNumItems() > 0) {
view.reloadSections(NSIndexSet(index: indexPath.section))
} else {
view.deleteSections(NSIndexSet(index: indexPath.section))
view.reloadSections(NSIndexSet(index: indexPath.section))
view.reloadData()
}
如果要从 UICollectionView 中删除某个部分,则必须:1. 更新模型,2. 在集合视图上调用deleteSections(sections: NSIndexSet)
3. 确保numberOfSectionsInCollectionView
为更新的模型返回适当数量的部分。