0

删除部分中的最后一项后,目标是从“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()
    }
4

1 回答 1

1

当您想从 UICollectionView 中删除一个部分时,您必须: 1. 更新您的模型, 2. 调用deleteSections(sections: NSIndexSet)您的集合视图 3. 确保numberOfSectionsInCollectionView为更新的模型返回适当数量的部分。

于 2016-01-21T03:01:33.037 回答