Xamarin.Forms Progressbar

Beispiel herunterladen Das Beispiel herunterladen

Das Xamarin.FormsProgressBar Steuerelement stellt den Fortschritt visuell als horizontalen Balken dar, der mit einem Prozentsatz gefüllt wird, der durch einen float Wert dargestellt wird. Die Klasse ProgressBar erbt von View.

Die folgenden Screenshots zeigen eine ProgressBar unter iOS und Android:

Screenshot: ProgressBar unter iOS und Android

Das ProgressBar Steuerelement definiert zwei Eigenschaften:

  • Progress ist ein float Wert, der den aktuellen Fortschritt als Wert von 0 bis 1 darstellt. Progress Werte kleiner als 0 werden auf 0 geklemmt, Werte größer als 1 werden auf 1 geklemmt.
  • ProgressColor ist eine Color , die sich auf die Innenleistenfarbe auswirkt, die den aktuellen Fortschritt darstellt.

Diese Eigenschaften werden durch BindableProperty Objekte unterstützt, was bedeutet, dass die ProgressBar formatiert werden kann und das Ziel von Datenbindungen sein kann.

Das ProgressBar Steuerelement definiert auch eine ProgressTo Methode, die den Balken von seinem aktuellen Wert zu einem angegebenen Wert animiert. Weitere Informationen finden Sie unter Animieren einer Statusleiste.

Hinweis

Der ProgressBar akzeptiert keine Benutzerbearbeitung, sodass es übersprungen wird, wenn die TAB-TASTE zum Auswählen von Steuerelementen verwendet wird.

Erstellen einer Fortschrittsleiste

Ein ProgressBar kann in XAML instanziiert werden. Seine Progress Eigenschaft bestimmt den Füllprozentsatz des inneren, farbigen Balkens. Der Standardwert Progress der Eigenschaft ist 0. Im folgenden Beispiel wird veranschaulicht, wie sie in ProgressBar XAML mit der optionalen Progress Eigenschaft instanziieren:

<ProgressBar Progress="0.5" />

Ein ProgressBar kann auch im Code erstellt werden:

ProgressBar progressBar = new ProgressBar { Progress = 0.5f };

Warnung

Verwenden Sie keine nicht eingeschränkten horizontalen Layoutoptionen wie Center, Startoder End mit ProgressBar. In UWP wird der ProgressBar auf einen Balken mit der Breite null reduziert. Behalten Sie den Standardwert HorizontalOptions von Fill bei, und verwenden Sie keine Breite von, Auto wenn Sie einen ProgressBar in ein Grid Layout einfügen.

ProgressBar-Darstellungseigenschaften

Die ProgressColor -Eigenschaft definiert die innere Balkenfarbe, wenn die Progress Eigenschaft größer als 0 ist. Das folgende Beispiel zeigt, wie Sie eine ProgressBar in XAML instanziieren, wobei die ProgressColor Eigenschaft festgelegt ist:

<ProgressBar ProgressColor="Orange" />

Die ProgressColor -Eigenschaft kann auch beim Erstellen eines ProgressBar im Code festgelegt werden:

ProgressBar progressBar = new ProgressBar { ProgressColor = Color.Orange };

Die folgenden Screenshots zeigen, dass die ProgressBarProgressColor -Eigenschaft unter iOS und Android auf Color.Orange festgelegt ist:

Screenshot: Gesteulierte ProgressBar unter iOS und Android

Animieren einer Statusleiste

Die ProgressTo -Methode animiert den von ihrem aktuellen Progress Wert im Laufe der ProgressBar Zeit zu einem bereitgestellten Wert. Die -Methode akzeptiert einen float Statuswert, eine uint Dauer in Millisekunden, einen Easing Enumerationswert und gibt einen Task<bool>zurück. Der folgende Code veranschaulicht, wie ein ProgressBaranimiert wird:

// animate to 75% progress over 500 milliseconds with linear easing
await progressBar.ProgressTo(0.75, 500, Easing.Linear);

Weitere Informationen zur Easing Enumeration finden Sie unter Beschleunigungsfunktionen in Xamarin.Forms.