删除部分中的最后一项后,目标是从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()
}
答案 0 :(得分:1)
如果要从UICollectionView中删除某个部分,您必须:1。更新模型,2。在集合视图上调用deleteSections(sections: NSIndexSet)
3.确保numberOfSectionsInCollectionView
返回适当数量的部分你的最新模型。