modi efficaci di inserimento di una nuova cella in un UITableView ordinato?
-
11-09-2019 - |
Domanda
Sto cercando di inserire una nuova cella in una vista tabella in cui viene ordinata i dati. C'è un modo semplice ed efficiente per farlo utilizzando l'API?
Il modo più semplice sembra essere inserire i nuovi dati in un NSMutableArray, specie utilizzando un descrittore di sorta, e chiamare reloadData. Questo dovrebbe visualizzare nuovamente solo le righe visibili, in modo che non sembra troppo male.
Sarebbe la pena di fare una ricerca binaria sulla matrice di dati, inserire i dati e quindi inserire la cella?
Soluzione
In realtà dipende quante righe sono nella tabella. Se la tabella ha solo circa 10 righe, semplicemente aggiungendo i dati sul NSMutableArray
, ricorrendo, e ricaricando il UITableView
dovrebbe essere più che bene.
D'altra parte, se la tabella dispone di centinaia o migliaia di righe, si sta sicuramente andando a voler fare qualcosa di più efficiente. Usando una ricerca binaria per inserire i dati in vostro NSMutableArray
è una buona idea. Poi tutto quello che dovete fare è chiamata di UITableView
insertRowsAtIndexPaths:withRowAnimation:
per aggiungere la riga alla vista reale tavolo. Nessun ricarico richiesto.