Animation quand une cell change

Bonjour,


j'ai une collection view avec


 


- à  l'état initial, trois cells : cell1, cell2 et cell3


- à  l'instant suivant : cell1_bis, cell2 et cell3. Toutes les cells ont la même taille.


 


Est-il possible de faire apparaà®tre la cell1_bis avec une animation ? (par exemple un fondu)


Je sais comment faire lorsqu'une cell est ajoutée/supprimée mais pas dans ce cas.


 


Merci !


Réponses

  • AliGatorAliGator Membre, Modérateur
    Bah puisque tu sais faire pour ajout/suppression, pourquoi ne pas étendre le principe ?
    Tu fais un fondu pour la suppression de la cell1 et en même temps un fondu pour l'ajout de la cell1_bis, non, ça marche pas ?

    beginUpdates, removeBlabla, addBlabla, endUpdates ? En tout cas ça se tente.
  • @Ali ;


     


    Merci ! ça marche parfaitement !


     


    Note : beginUpdates n'existe pas pour les UICollectionView



    [self.collectionView

    performBatchUpdates:^
    {
    [self.buttons removeObject:self.button1] ;
    [self.buttons addObject:self.button1_bis] ;

    NSIndexPath * firstEntry = [NSIndexPath indexPathForItem:0
    inSection:0] ;

    [self.collectionView deleteItemsAtIndexPaths:@[;firstEntry]] ;
    [self.collectionView insertItemsAtIndexPaths:@[;firstEntry]] ;
    }

    completion:^(BOOL finished)
    {
    // nothing
    }] ;
  • à‰trangement, le code suivant ne marche pas... bug ?



    [self.collectionView

    performBatchUpdates:^
    {
    [self.buttons removeObject:self.button1] ;
    [self.buttons addObject:self.button1_bis] ;

    NSIndexPath * firstEntry = [NSIndexPath indexPathForItem:0
    inSection:0] ;

    [self.collectionView reloadItemsAtIndexPaths:@[;firstEntry]] ;
    //[self.collectionView deleteItemsAtIndexPaths:@[;firstEntry]] ;
    //[self.collectionView insertItemsAtIndexPaths:@[;firstEntry]] ;
    }

    completion:^(BOOL finished)
    {
    // nothing
    }] ;
Connectez-vous ou Inscrivez-vous pour répondre.