Как изменить цвет панели прогресса в Android? – (я пробовал в одном направлении, и он не работает)

Я добавил индикатор выполнения моей активности, используя следующий код:

<LinearLayout android:id="@+id/linlaHeaderProgress" android:layout_width="fill_parent" android:layout_height="fill_parent" android:gravity="center" android:orientation="vertical" android:visibility="gone" > <ProgressBar android:id="@+id/pbHeaderProgress" android:indeterminateOnly="true" android:keepScreenOn="true" android:layout_width="wrap_content" android:layout_height="wrap_content" > </ProgressBar> </LinearLayout> 

Затем я называю это:

  progressbar = (LinearLayout) findViewById(R.id.linlaHeaderProgress); progressbar.setVisibility(View.VISIBLE); 

Отобразится индикатор выполнения, и я хочу изменить его цвет. По умолчанию индикатор выполнения отображается серым цветом. Вот что я пытался изменить цвет:

Я создал файл xml в папке drawables и назвал его как activityindicator.xml . Содержимое этого xml:

 <layer-list xmlns:android="http://schemas.android.com/apk/res/android" > <item android:id="@android:id/secondaryProgress"> <color android:color="#f58233" /> </item> <item android:id="@android:id/progress"> <color android:color="#f58233" /> </item> </layer-list> 

И я изменил файл макета как:

 <LinearLayout android:id="@+id/linlaHeaderProgress" android:layout_width="fill_parent" android:layout_height="fill_parent" android:gravity="center" android:progressDrawable="@drawable/activityindicator" android:orientation="vertical" android:visibility="gone" > <ProgressBar android:id="@+id/pbHeaderProgress" android:indeterminateOnly="true" android:keepScreenOn="true" android:progressDrawable="@drawable/activityindicator" android:layout_width="wrap_content" android:layout_height="wrap_content" > </ProgressBar> </LinearLayout> 

Это то, что я пробовал, но цвет не меняется. Может ли кто-нибудь сказать мне, что я делаю неправильно?

Я использую версию Lollipop.

Solutions Collecting From Web of "Как изменить цвет панели прогресса в Android? – (я пробовал в одном направлении, и он не работает)"

Если вы хотите изменить цвет, добавьте в свой индикатор прогресс цветной фильтр:

 pbHeaderProgress.getIndeterminateDrawable().setColorFilter(Color.RED, Mode.MULTIPLY); 

Параметр Mode, относится к значениям PorterDuff.Mode – доступно здесь .

Я просто нашел способ. Мне даже не нужен отдельный XML-файл для изменения цвета, поскольку индикатор выполнения имеет тип «неопределенный: истинный»,

Я использовал следующее, чтобы изменить цвет моего индикатора выполнения:

 pbHeaderProgress.getIndeterminateDrawable().setColorFilter(Color.parseColor("#C0D000"), android.graphics.PorterDuff.Mode.SRC_ATOP); 

Вы можете получить множество шестнадцатеричных цветовых кодов отсюда: http://www.nthelp.com/colorcodes.htm или http://www.color-hex.com/