Xamarin.Forms Controllo ProgressBar
Il Xamarin.FormsProgressBar
controllo rappresenta visivamente lo stato di avanzamento come barra orizzontale riempita in una percentuale rappresentata da un float
valore. La classe ProgressBar
eredita da View
.
Gli screenshot seguenti mostrano un ProgressBar
oggetto in iOS e Android:
Il ProgressBar
controllo definisce due proprietà:
Progress
è unfloat
valore che rappresenta lo stato di avanzamento corrente come valore compreso tra 0 e 1.Progress
i valori minori di 0 verranno bloccati su 0, i valori maggiori di 1 verranno bloccati su 1.ProgressColor
è un oggettoColor
che influisce sul colore della barra interna che rappresenta lo stato di avanzamento corrente.
Queste proprietà sono supportate da BindableProperty
oggetti, il che significa che ProgressBar
è possibile applicare stili e essere la destinazione dei data binding.
Il ProgressBar
controllo definisce anche un ProgressTo
metodo che anima la barra dal valore corrente a un valore specificato. Per altre informazioni, vedere Animare un controllo ProgressBar.
Nota
L'oggetto ProgressBar
non accetta la manipolazione dell'utente in modo che venga ignorato quando si utilizza il tasto TAB per selezionare i controlli.
Creare un indicatore di stato
È ProgressBar
possibile creare un'istanza di un oggetto in XAML. La proprietà Progress
determina la percentuale di riempimento della barra interna e colorata. Il valore predefinito Progress
della proprietà è 0. L'esempio seguente illustra come creare un'istanza di in ProgressBar
XAML con il set di proprietà facoltativo Progress
:
<ProgressBar Progress="0.5" />
È anche possibile creare un oggetto ProgressBar
nel codice:
ProgressBar progressBar = new ProgressBar { Progress = 0.5f };
Avviso
Non usare opzioni di layout orizzontale senza vincoli, ad Center
esempio , Start
o End
con ProgressBar
. Nella piattaforma UWP il ProgressBar
controllo viene compresso su una barra di larghezza zero. Mantenere il valore predefinito HorizontalOptions
di Fill
e non usare una larghezza di Auto
quando si inserisce un oggetto ProgressBar
in un Grid
layout.
Proprietà di aspetto ProgressBar
La ProgressColor
proprietà definisce il colore della barra interna quando la Progress
proprietà è maggiore di zero. L'esempio seguente illustra come creare un'istanza di in ProgressBar
XAML con il set di ProgressColor
proprietà:
<ProgressBar ProgressColor="Orange" />
La ProgressColor
proprietà può essere impostata anche durante la creazione di un oggetto ProgressBar
nel codice:
ProgressBar progressBar = new ProgressBar { ProgressColor = Color.Orange };
Gli screenshot seguenti mostrano con ProgressBar
la ProgressColor
proprietà impostata Color.Orange
su in iOS e Android:
Animare un indicatore di stato
Il ProgressTo
metodo anima l'oggetto ProgressBar
dal valore corrente Progress
a un valore specificato nel tempo. Il metodo accetta un float
valore di stato, una uint
durata in millisecondi, un Easing
valore di enumerazione e restituisce un oggetto Task<bool>
. Il codice seguente illustra come animare un oggetto ProgressBar
:
// animate to 75% progress over 500 milliseconds with linear easing
await progressBar.ProgressTo(0.75, 500, Easing.Linear);
Per altre informazioni sull'enumerazione Easing
, vedere Funzioni di interpolazione in Xamarin.Forms.