ProgressBar
.NET Multi-platform App UI (.NET MAUI) ProgressBar は、アプリが長いアクティビティを通じて進行していることをユーザーに示します。 進行状況バーは、double
値で表されるパーセンテージまで塗りつぶされる水平バーです。
ProgressBar の外観はプラットフォームによって異なります。次のスクリーンショットは Android の ProgressBar を示しています。
ProgressBar は 2 つのプロパティを定義します。
Progress
は、現在の進行状況を 0 から 1 の値で表すdouble
値です。Progress
0 未満の値は 0 にクランプされ、1 より大きい値は 1 にクランプされます。 このプロパティの既定値は 0です。ProgressColor
は、ProgressBar の色を定義する Color 値です。
これらのプロパティは、BindableProperty オブジェクトが基になっています。つまり、これらは、データ バインディングの対象にすることができ、スタイルを設定できます。
ProgressBar は、バーを現在の値から指定された値までアニメーション化する ProgressTo
メソッドも定義します。 詳細については、「ProgressBar をアニメーション化する」を参照してください。
ProgressBar を作成する
長いアクティビティの進行状況を示すには、ProgressBar オブジェクトを作成し、そのプロパティを設定して外観を定義します。
次の XAML の例は、ProgressBar の表示方法を示しています。
<ProgressBar Progress="0.5" />
同等の C# コードを次に示します。
ProgressBar progressBar = new ProgressBar { Progress = 0.5 };
警告
Center
、Start
、End
、ProgressBar などの制約のない水平レイアウト オプションを使用しないでください。 HorizontalOptions
の既定値 Fill
をそのまま使用します。
次の XAML の例は、ProgressBar の色を変更する方法を示しています:
<ProgressBar Progress="0.5"
ProgressColor="Orange" />
同等の C# コードを次に示します。
ProgressBar progressBar = new ProgressBar
{
Progress = 0.5,
ProgressColor = Colors.Orange
};
ProgressBar をアニメーション化する
ProgressTo
メソッドは、ProgressBar を現在の Progress
値から指定された値まで時間の経過とともにアニメーション化します。 このメソッドは、double
進行状況値、uint
ミリ秒単位の継続時間、Easing 列挙値を受け取り、Task<bool>
を返します。 次の例では、ProgressBar をアニメーション化する方法を示します:
// animate to 75% progress over 500 milliseconds with linear easing
await progressBar.ProgressTo(0.75, 500, Easing.Linear);
.NET MAUI