A seguito del rilascio ufficiale del CarouselView, descritta in un precedente script su questo canale, in Xamarin.Forms 4.4 troviamo l'introduzione, sotto flag sperimentale, di un componente che supporta la navigazione all'interno di un CarouselView, ovvero l']IndicatorView. Questo controllo si occuperà di visualizzare, tramite delle icone, la posizione corrente e il numero di slide presenti all'interno del carousel.
Essendo ancora in fase sperimentale, per poterlo utilizzare, occorrerà abilitare il flag apposito nell'AppDelegate o all'interno di MainActivity:
Forms.SetFlags("IndicatorView_Experimental");
L'utilizzo, come anticipato, è strettamente legato al componente CarouselView e, per questo motivo, nella creazione del componente bisognerà referenziare l'oggetto carousel:
<CarouselView x:Name="carouselView"> <!-- eventuali altre property qui --> </CarouselView> <!-- altro XAML qui... --> <IndicatorView ItemsSourceBy="carouselView" IndicatorColor="LightGray" SelectedIndicatorColor="DarkGray" HorizontalOptions="Center" />
L'IndicatorView consente, inoltre, di impostare la forma geometrica utilizzata come segnaposto: possiamo scegliere tra un cerchio (predefinita) o un quadrato, utilizzando l'attributo IndicatorsShape.
Se, invece, vogliamo avere ancora maggior controllo sullo stile, possiamo personalizzare ogni forma utilizzando la proprietà IndicatorTemplate:
<IndicatorView IndicatorColor="LightGray" SelectedIndicatorColor="Black"> <IndicatorView.IndicatorTemplate> <DataTemplate> <Image Source="{FontImage ?, FontFamily={OnPlatform iOS=Ionicons, Android=ionicons.ttf#}, Size=12}" /> </DataTemplate> </IndicatorView.IndicatorTemplate> </IndicatorView>
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Elencare gli utenti loggati con Blazor Server
Windows and app development with MAUI
Creare un controllo Expander in un'app Xamarin Forms
Mobile Blazor Bindings
A quick tour around Azure Dev Spaces
Gestione dei token negli input di testo con la Universal Windows Platform
Chiamare API WinRT da applicazioni .NET 5
DevSecOps applicato ad Azure DevOps
Creare due extension method per serializzare un oggetto in JSON e viceversa utilizzando la libreria System.Text.Json
Winget: un nuovo package manager per Windows
Creare un web server locale con LiveReload
Modificare automaticamente la Wiki da una pipeline YAML con Azure DevOps