Xamarin:进度条改变颜色

Xamarin: Progress Bar Change Color

我有一个进度条xml:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">
    <ProgressBar
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/progressBar"
        style="@android:style/Widget.ProgressBar.Large" />
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textSize="25sp"
        android:text="Loading..." />
</LinearLayout>

而且我需要更改默认颜色(灰色)。我需要以编程方式或 xml 形式更改颜色。

在我的 Activity 我有:

SetContentView(Resource.Layout.LoadingBar);
var progressBar = FindViewById<ProgressBar>(Resource.Id.progressBar);

我想这就是您要找的。我的示例是如果秒的值低于 10,则进度条颜色变为红色。

if (seconds < 10) {
progressBar.ProgressDrawable.
SetColorFilter (Android.Graphics.Color.Red, Android.Graphics.PorterDuff.Mode.Multiply);}

此代码更改为预期的颜色和屏幕中心

<ProgressBar
    android:id="@+id/loading_progress"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:gravity="center"
    android:visibility="invisible"
    android:indeterminate="true"
    android:indeterminateTintMode="src_atop"
    android:indeterminateTint="@color/colorprimary"
    android:progressDrawable="@drawable/login_loading" />