2015-03-31 8 views
1

я использую прогрессбар в панели инструментов по умолчанию его загрузка Accent цвета, я хочу, чтобы настроить цвет ProgressBar .И я использую библиотеку поддержки 22.0.0Цвет индикатора хода в панели инструментов Android?

?xml version="1.0" encoding="utf-8"?> 
    <android.support.v7.widget.Toolbar 
xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:app="http://schemas.android.com/apk/res-auto" 
android:id="@+id/my_aweseome_toolbar" 
android:layout_height="wrap_content" 
android:layout_width="match_parent" 
android:minHeight="?attr/actionBarSize" 
app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar" 
app:popupTheme="@style/ThemeOverlay.AppCompat.Light" 
android:background="?attr/colorPrimary"> 

<ProgressBar 
    android:id="@+id/progress_spinner" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_gravity="right" 
    android:indeterminate="true" 

    /> 

поэтому я попытался изменить прогрессбар цвет с использованием setColor filter

но я постарался установить как розовый, но вне есть другой цвет.

progressBar.getIndeterminateDrawable().setColorFilter(Color.WHITE,android.graphics.PorterDuff.Mode.MULTIPLY)), 

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

ответ

4

Использование:

<ProgressBar 
      android:id="@+id/progressBar" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_gravity="center" 
      android:indeterminateDrawable="@drawable/progress" 
      /> 

использование создать progress.xml в вашей вытяжке папке:

<rotate xmlns:android="http://schemas.android.com/apk/res/android" 
    android:fromDegrees="0" 
    android:pivotX="50%" 
    android:pivotY="50%" 
    android:toDegrees="720" > 

    <shape 
     android:innerRadiusRatio="3" 
     android:shape="ring" 
     android:thicknessRatio="8" 
     android:useLevel="false" > 
     <size 
      android:height="86dip" 
      android:width="86dip" /> 

     <gradient 
      android:angle="0" 
      android:endColor="@color/blue" 
      android:startColor="@android:color/transparent" 
      android:type="sweep" 
      android:useLevel="false" /> 
    </shape> 

</rotate> 

enter image description here

1

попробовать это,

<rotate xmlns:android="http://schemas.android.com/apk/res/android" 
android:fromDegrees="0" 
android:pivotX="50%" 
android:pivotY="50%" 
android:toDegrees="360" > 

<shape 
    android:innerRadiusRatio="3" 
    android:shape="ring" 
    android:thicknessRatio="20" 
    android:useLevel="false" > 
    <size 
     android:height="48dp" 
     android:width="48dp" /> 

    <gradient 
     android:centerColor="@color/tranparent" 
     android:centerY="0.50" 
     android:endColor="@color/red" 
     android:startColor="@color/tranparent" 
     android:type="sweep" 
     android:useLevel="false" /> 
</shape> 

+0

Что здесь делает 'size'? Когда я меняю его, моя горизонтальная панель прогресса остается той же высоты независимо от того, что. –

0

Попробуйте с PorterDuff.Mode.SRC_IN. Он работает для меня, по крайней мере, с SeekBar.

Смежные вопросы