Con il rilascio di Xamarin.Forms 4.3, insieme all'ufficializzazione delle CollectionView, descritte negli script precedenti, troviamo la possibilità di avere in preview un nuovo elemento: la CarouselView.
Si può dire che è uno degli elementi che mancava all'interno dell'ecosistema Xamarin: i carousel (caroselli o slideshow), sono elementi molto usati soprattutto in ambito web e, con la release 4.3 di Xamarin Forms, hanno fatto il loro ingresso anche nella piattaforma di riferimento per i progetti cross-platform.
I carousel, insieme agli attributi visual, segnano un avvicinamento di Xamarin verso gli standard UI/UX web, portando le applicazioni native ad avere un'interfaccia omogenea su tutti i device, contrariamente a quanto è accaduto finora, dove un bottone aveva una UI caratteristica del sistema Android, se l'applicazione veniva eseguita su Android, e un design iOS, se eseguita su di un iPhone.
Ricordando che questa funzionalità è ancora in preview, nel momento della scrittura di questo articolo, alcune sue caratteristiche potrebbero variare nel tempo. Per poter utilizzarla già da ora sarà necessario aggiungere la riga seguente all'interno della MainActivity di Android o nell'AppDelegate di iOS:
Forms.SetFlags("CarouselView_Experimental");
Come tutti gli elementi di tipo lista all'interno di Xamarin, anche la CarouselView rispetta la struttura standard a cui siamo abituati:
- ItemsSource: fonte dati
- ItemTemplate: UI/UX
- attributo CurrentItemChanged: cambiamento della slide
Possiamo già abbozzare un primo esempio di CarouselView utilizzando solo le nostre conoscenze pregresse:
<CarouselView ItemsSource="{Binding MyList}" CurrentItemChanged="OnCurrentItemChanged"> <CarouselView.ItemTemplate> <DataTemplate> <StackLayout> <Label Text="{Binding Name}" HorizontalOptions="Center" VerticalOptions="Center" /> </StackLayout> </DataTemplate> <CarouselView.ItemTemplate> </CarouselView>
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Come migrare da una form non tipizzata a una form tipizzata in Angular
Utilizzare il trigger SQL con le Azure Function
Creazione di plugin per Tailwind CSS: espandere le Funzionalità del Framework
Paginare i risultati con QuickGrid in Blazor
Evitare il flickering dei componenti nel prerender di Blazor 8
Evitare la command injection in un workflow di GitHub
Utilizzare le collection expression in C#
Utilizzare politiche di resiliency con Azure Container App
Usare una container image come runner di GitHub Actions
Sfruttare lo streaming di una chiamata Http da Blazor
Configurare il nome della run di un workflow di GitHub in base al contesto di esecuzione
Cambiare la chiave di partizionamento di Azure Cosmos DB
I più letti di oggi
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!
- Chat con gli MVP italiani di ASP.NET
- Leggere una chiave di un cookie con ASP.NET
- Estrarre dati randomici da una lista di oggetti in C#
- Utilizzare i Behaviors nelle Windows Store app
- Utilizzare tipi complessi con le Profile API