Come evitare di ri-disegnare tutte le viste in un ArrayAdapter
-
22-09-2019 - |
Domanda
Ho un ArrayAdapter
alimentare un ListView
. Vorrei modificare i dati dietro il ArrayAdapter
e aggiornare il ListView
del. Suona come notifyDataSetChanged();
sarebbe esattamente quello che sto cercando, ma si aggiorna l'intera ListView
, e preferirei di aggiornare su base riga per riga.
C'è un modo per fare questo con ArrayAdapter
, o ho bisogno per gestire i miei dati in altro modo se voglio questa funzionalità?
Soluzione
Non funziona così, per quanto ne so.
Si ridisegnare solo le righe visibili. Questo accade quando si sta scorrendo in ogni caso. Se stai scorrendo verso il basso, e uno dei tuoi file (una vista) si spegne la parte superiore, Android riutilizza, se possibile, al momento di elaborare le righe che entrano in vista dal basso. Questo è ciò che il terzo parametro (convertView) di ListAdapter.getView () è per.
Sono piuttosto sicuro che Android disegna solo le righe che siete in grado di vedere in ogni caso.