web-dev-qa-db-fra.com

iOS - table de rafraîchissement UITableView correctement?

J'ai beaucoup de données et beaucoup de lignes dans mon tableView ... lorsque des données changent, je veux mettre à jour mes cellules visibles à l'écran, je ne veux vraiment pas utiliser reloadData car c'est un appel coûteux.

Est-il possible de mettre à jour d'une manière ou d'une autre les cellules visibles uniquement? J'ai essayé d'appeler: beginUpdate & endUpdate sur la table, mais cela ne fonctionne pas tout le temps?

Aucune suggestion?

35
aryaxt

Vous pouvez:

[tableView reloadRowsAtIndexPaths:[tableView indexPathsForVisibleRows] 
                 withRowAnimation:UITableViewRowAnimationNone];
87
Seamus Campbell

Pour Swift 3:

tableView.reloadRows(at: tableView.indexPathsForVisibleRows!, with: .none)
0
pableiros