Prima di continuare con la revisione dell'elenco personalizzato, facciamo un rapido riepilogo di ciò che abbiamo
fatto prima di creare il mio file XML di punti elenco che contiene una sola visualizzazione di testo, una visualizzazione di testo personalizzata.
Abbiamo creato una dimensione di 48 SP e il colore è rosso, quindi tutti gli elementi della vista elenco saranno in questa forma.
Poi abbiamo creato questa vista elenco nel file XML dell'activity dot principale e abbiamo creato questa classe chiamata il mio adattatore
personalizzato che estende l'adattatore di base.
Contiene due variabili, il contesto e l'array di stringhe chiamato items.
Questo elemento funge da origine dati.
Abbiamo creato il costruttore per passare gli elementi dell'attività principale.
Quando creiamo un'istanza di questo adattatore, estendendo l'adattatore di base, dobbiamo implementare
quattro metodi: get count, get item, get item ID e get the view Il metodo get count restituisce il numero di elementi presenti
nell'origine dati.
Mettiamo gli articoli a lunghezza di punto.
La funzione get item restituisce l'elemento di dati in una determinata posizione e qui restituiamo gli elementi in corrispondenza dell'indice
di posizione get item ID, restituisce un identificatore univoco per l'elemento nella posizione data e restituisce la posizione
passata come parametro.
Guarda il panorama.
Viene utilizzato per visualizzare i dati in una posizione.
Nel set di dati abbiamo creato la vista convertita e la classe View Holder.
Il primo passo per creare e implementare il pattern Viewholder è creare la classe statica Viewholder,
che si trova all'interno della classe.
Il mio adattatore personalizzato.
È una classe statica interna che contiene i riferimenti alle viste all'interno di un layout di elementi.
Quindi, dato che abbiamo il mio elemento di elenco, abbiamo solo una vista di testo.
È necessario creare un riferimento per questa vista di testo nel viewholder.
Poi passiamo alla vista get.
Creare un'istanza da essa.
Quando si scorre un elenco di visualizzazioni che escono dallo schermo, esistono due opzioni che vengono riciclate, in modo da
poter essere riutilizzate per i nuovi elementi che arrivano sullo schermo.
Il parametro convert view rappresenta una di queste viste riciclate.
Il suo scopo è quello di ridurre al minimo l'overhead del gonfiaggio e della ricerca di viste per ogni elemento, che può
richiedere molte risorse e incidere sulle prestazioni.
Abbiamo due possibilità.
Uno se è riciclato e riutilizzato e il secondo se è una nuova visione.
Se si tratta di una nuova vista, creare una nuova vista per questo elemento.
Se viene creato, basta andare a riciclarlo.
Quindi impostiamo i dati nella vista, li leghiamo e li restituiamo alla vista convertita.
Passiamo ora all'attività principale.
Il primo passo è la vista adattatore, che è l'elenco di viste creato in precedenza.
E sto scoprendo che viene creato nel file XML principale dell'attività underscore.
Il secondo passo è l'origine dei dati, che è un elenco di paesi.
Questa è la vista adattatore, questo è il componente dell'interfaccia utente, questa è la vista elenco e questa è l'origine
dei dati.
È necessario combinarli insieme utilizzando il ponte, che è l'adattatore.
Quindi il terzo passo consiste nel rimuovere l'adattatore dell'array.
Non è necessario creare un adattatore di array.
Devo utilizzare l'adattatore personalizzato che abbiamo creato.
Quindi rimuovo questo e creo una nuova istanza del nostro adattatore personalizzato.
Il mio adattatore personalizzato è uguale a new custom, adatta il mio adattatore personalizzato e qui ho bisogno di passare
due parametri, il contesto e l'origine dei dati, che è un array di stringhe.
Questo e i paesi.
E questo è tutto.
Eseguiamo la nostra applicazione e congratulazioni!
Questa è la nostra vista elenco popolata con gli elementi dell'elenco di array di paesi o dell'origine dati, ciascuno dei quali utilizza il layout personalizzato
definito nel file XML del mio punto di elemento dell'elenco, in modo che gli adattatori offrano la flessibilità necessaria per personalizzare la presentazione
dei dati.
È possibile creare layout personalizzati per ogni elemento, applicare stili diversi e definire le interazioni in base
ai requisiti dell'applicazione.