Laisser une action se terminer
Bonsoir à tous,
J'aurais besoin qu'une action soit bien visible avant que la suivante ne se lance. Je m'explique :
j'ai une tableView dans laquelle l'utilisateur fait un swipe sur une cellule, il a plusieurs actions dont mettre en favoris, lorsqu'il clique sur mettre en favoris, voici le déroulement des actions :
- traitement de mise en favoris (chargement des données dans Core Data)
- self.tableView.setEditing(false, animated: true) (animation du menu pour le faire disparaitre)
- self.tableView.reloadData()
a l'heure actuelle, cela fonctionne mais je n'ai pas le temps de voir l'animation (self.tableView.setEditing(false, animated: true) car le self.tableView.reloadData() se fait très rapidement
Comment procéder pour voir l'action qui précéde le rechargement de la tableView ?
Merci.
Réponses
J'ai le même soucis avec des overlays de chargement..
J'ai juste mis un timer d'une seconde, ça laisse le temps à l'overlay d'être vu et il disparaà®t quand le traitement est fini.
J'perds une seconde mais ça améliore l'expérience utilisateur donc bon..
Pas fan de l'idée du Timer.
L'idée ici ce serait plutôt d'utiliser CATransaction. Elle a plusieurs méthodes dont une qui permet d'effectuer une tâche à la fin de l'animation.
À tester.
Tu fais un reload pour supprimer une ligne c'est une bonne ideÌe mais vu que tu sais quelle ligne supprimer pourquoi ne pas le faire toi même avec :
J'ai vu récemment sans l'avoir tester une lib sur cocoapod
https://cocoapods.org/pods/PromiseKit
A tester ...
Je suis preneur si vous avez des retours sur cette lib.