UICollectionView actualiza una sola celda

Estoy intentando actualizar una sola celda dentro de UICollectionView , específicamente estoy tratando de actualizar una imagen en esa celda específica detonada por cell.imageView . [self.collectionView reloadData] no es realmente una opción porque hace que toda la vista de la colección destelle. [self.collectionView beginUpdates] no es algo en un UICollectionView , parece.

Entiendo que puedo usar:

 [self.collectionView performBatchUpdates:^{ //do something } completion:nil]; 

No estoy exactamente seguro de qué poner dentro de un bloque de finalización para actualizar ese imageView cierta célula. Todo esto se está haciendo dentro de didSelectItemAtIndexPath . didSelectItemAtIndexPath estoy usando NSFetchedResultsController . ¿Algunas ideas?

- (void)reloadItemsAtIndexPaths:(NSArray *)indexPaths

Aquí se trata de un método para volver a cargar los indexPaths específicos en su collectionView

La respuesta de Dinesh es inmediata. Pero para evitar animaciones no deseadas al volver a cargar (también conocido como “flasheo”), use:

 BOOL animationsEnabled = [UIView areAnimationsEnabled]; [UIView setAnimationsEnabled:NO]; [myCollectionView reloadItemsAtIndexPaths:myIndexPaths]; [UIView setAnimationsEnabled:animationsEnabled]; 

Consulte Insertar, eliminar y mover secciones y elementos de la “Guía de progtwigción de vista de colección para iOS”:

Para insertar, eliminar o mover una sola sección o elemento, debe seguir estos pasos:


Actualice los datos en su objeto fuente de datos. Llame al método apropiado de la vista de colección para insertar o eliminar la sección o el elemento. Es fundamental que actualice su fuente de datos antes de notificar a la vista de colección de cualquier cambio. Los métodos de vista de colección suponen que su fuente de datos contiene los datos actualmente correctos. De lo contrario, la vista de recostackción podría recibir un conjunto incorrecto de elementos de su fuente de datos o pedir elementos que no están allí y bloquear su aplicación.


Entonces, en su caso, primero debe agregar una imagen al origen de datos de la vista de colección y luego llamar a insertItemsAtIndexPaths. La vista de colección pedirá a la función de delegado de fuente de datos que proporcione la vista para el elemento insertado.