RecyclerView
RecyclerView è un gruppo di visualizzazioni per la visualizzazione delle raccolte; è progettato per essere una sostituzione più flessibile per i gruppi di visualizzazioni meno recenti, ad esempio ListView e GridView. Questa guida illustra come usare e personalizzare RecyclerView nelle applicazioni Xamarin.Android.
RecyclerView
Molte app devono visualizzare raccolte dello stesso tipo (ad esempio messaggi, contatti, immagini o canzoni); spesso, questa raccolta è troppo grande per adattarsi sullo schermo, quindi la raccolta viene presentata in una piccola finestra che può scorrere senza problemi tutti gli elementi della raccolta.
RecyclerView
è un widget Android che visualizza una raccolta di elementi in un elenco o in una griglia, consentendo all'utente di scorrere la raccolta. Di seguito è riportato uno screenshot di un'app di esempio che usa RecyclerView
per visualizzare il contenuto della posta in arrivo della posta elettronica in un elenco di scorrimento verticale:
RecyclerView
offre due funzionalità interessanti:
Ha un'architettura flessibile che consente di modificarne il comportamento collegando i componenti preferiti.
È efficiente con raccolte di grandi dimensioni perché riutilizza le visualizzazioni degli elementi e richiede l'uso dei segnaposto di visualizzazione per memorizzare nella cache i riferimenti alla visualizzazione.
Questa guida illustra come usare RecyclerView
nelle applicazioni Xamarin.Android e spiega come aggiungere il RecyclerView
pacchetto al progetto Xamarin.Android e descrive come RecyclerView
funziona in un'applicazione tipica. Vengono forniti esempi di codice reali per illustrare come eseguire l'integrazione RecyclerView
nell'applicazione, come implementare il clic su visualizzazione elementi e come aggiornare RecyclerView
quando i dati sottostanti cambiano. Questa guida presuppone che si abbia familiarità con lo sviluppo di Xamarin.Android.
Requisiti
Anche se RecyclerView
è spesso associato ad Android 5.0 Lollipop, viene offerto come libreria di supporto, RecyclerView
funziona con le app destinate al livello API 7 (Android 2.1) e versioni successive. Per usare RecyclerView
nelle applicazioni basate su Xamarin, è necessario quanto segue:
Xamarin.Android: Xamarin.Android 4.20 o versione successiva deve essere installato e configurato con Visual Studio o Visual Studio per Mac.
Il progetto dell'app deve includere il pacchetto Xamarin.Android.Support.v7.RecyclerView . Per altre informazioni sull'installazione di pacchetti NuGet, vedere Procedura dettagliata: Inclusione di un nuGet nel progetto.
Panoramica
RecyclerView
può essere considerato come una sostituzione per i ListView
widget e GridView
in Android. Come i predecessori, RecyclerView
è progettato per visualizzare un set di dati di grandi dimensioni in una finestra di piccole dimensioni, ma RecyclerView
offre più opzioni di layout ed è meglio ottimizzato per la visualizzazione di raccolte di grandi dimensioni. Se si ha familiarità con ListView
, esistono diverse differenze importanti tra ListView
e RecyclerView
:
RecyclerView
è leggermente più complesso da usare: è necessario scrivere più codice da usareRecyclerView
rispetto aListView
.RecyclerView
non fornisce un adattatore predefinito; è necessario implementare il codice dell'adattatore che accede all'origine dati. Tuttavia, Android include diversi adattatori predefiniti che funzionano conListView
eGridView
.RecyclerView
non offre un evento di clic sugli elementi quando un utente tocca un elemento; Gli eventi item-click vengono invece gestiti dalle classi helper. Al contrario,ListView
offre un evento item-click.RecyclerView
migliora le prestazioni riciclando le visualizzazioni e applicando il modello di supporto della visualizzazione, eliminando le ricerche di risorse di layout non necessarie. L'uso del modello di supporto per la visualizzazione è facoltativo inListView
.RecyclerView
si basa su una progettazione modulare che semplifica la personalizzazione. Ad esempio, è possibile collegare un criterio di layout diverso senza modifiche significative al codice all'app. Al contrario,ListView
è relativamente monolitico nella struttura.RecyclerView
include animazioni predefinite per l'aggiunta e la rimozione di elementi.ListView
le animazioni richiedono un impegno aggiuntivo da parte dello sviluppatore di app.
Sezioni
RecyclerView parti e funzionalità
In questo argomento viene illustrato come Adapter
, LayoutManager
e ViewHolder
interagiscono come classi helper per supportare RecyclerView
.
Offre una panoramica generale di ognuna di queste classi helper e spiega come usarle nell'app.
Esempio di Basic RecyclerView
Questo argomento si basa sulle informazioni fornite in RecyclerView Parts and Functionality fornendo esempi di codice reali su come vengono implementati i vari RecyclerView
elementi per creare un'app di esplorazione foto reale.
Estensione dell'esempio di RecyclerView
Questo argomento aggiunge codice aggiuntivo all'app di esempio presentata in A Basic RecyclerView Example per illustrare come gestire gli eventi di clic sugli elementi e aggiornare RecyclerView
quando l'origine dati sottostante cambia.
Riepilogo
In questa guida è stato introdotto il widget Android RecyclerView
. È stato illustrato come aggiungere la RecyclerView
libreria di supporto ai progetti Xamarin.Android, come RecyclerView
ricicla le visualizzazioni, come applica il modello di supporto per l'efficienza e come le varie classi helper che costituiscono RecyclerView
la collaborazione per visualizzare le raccolte. Ha fornito codice di esempio per illustrare come RecyclerView
è integrato in un'applicazione, ha spiegato come personalizzare RecyclerView
i criteri di layout collegandosi a diversi gestori di layout e ha descritto come gestire gli eventi di clic degli elementi e notificare RecyclerView
le modifiche all'origine dati.
Per altre informazioni su , vedere le informazioni di riferimento sulla RecyclerView
classe RecyclerView.