web-dev-qa-db-fra.com

Actualiser une vue UICollection

Est-ce que quelqu'un sait comment recharger/actualiser UICollectionView pendant l'affichage de la collection? Fondamentalement, je cherche quelque chose de similaire à la méthode standard reloadData pour une UITableview.

19
SNV7

Vous pouvez simplement appeler:

[self.myCollectionView reloadData];

Les sections et éléments individuels peuvent également être rechargés:

[self.myCollectionView reloadSections:indexSet];
[self.myCollectionView reloadItemsAtIndexPaths:arrayOfIndexPaths];
47
Firo
[self.collectionView reloadData];
10
Lücks

Le bon et le meilleur moyen est d'utiliser

NSMutableArray *indexPaths = [NSMutableArray array];
//prepare some data
//batchupdate as block
[self.collectionView performBatchUpdates:^{
    //operations like delete
   [self.collectionView deleteSections:[NSIndexSet indexSetWithIndexesInRange:NSMakeRange(1, count)]];
    [self.collectionView insertItemsAtIndexPaths:indexPaths];
} completion:^(BOOL finished) {
    // call something when ready
    }
}];

et tout est précalculé de manière joliment animée. La meilleure pratique est d’abord de supprimer et d’ajouter tous les éléments pour éviter les conflits.

0
Karsten