2015-06-24 1 views
3

Мое приложение работает неплохо, пока я не обновился до «com.google.android.gms: play-services: 7.5.0». Я использовал RatingBar в работе, которая работала нормально. Но после обновления цвет Ratingbar выглядит белым. Даже я попытался изменить цвет с помощью кода и макета, но цвет выглядит белым. Но когда я касаюсь панели оценки, появляется индикатор зеленого цвета.Цвет RatingBar появляется после обновления Google Play Services 7.5.0

Код:

<RatingBar 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:id="@+id/ratingBar" 
    android:layout_gravity="center_horizontal" 
    android:numStars="5" 
    android:theme="@style/Theme.AppCompat.Light" 
    android:stepSize="0.5" 
    android:progressBackgroundTint="#ff048ec4" 
    android:progressTint="#ff048ec4" 
    android:progressBackgroundTintMode="multiply" 
    android:progressTintMode="multiply" /> 

Проблема только с версиями ниже, чем леденец. В Lollipop нет проблем, но в нижних версиях Kitkat & цвет выглядит белым.

Кто-нибудь знает, как это сделать? Спасибо заранее.

ответ

0

For API >= 21

Drawable progress = ratingBar.getProgressDrawable(); 
DrawableCompat.setTint(progress, Color.YELLOW); 

For API < 21

RatingBar ratingBar = (RatingBar) findViewById(R.id.ratingBar); 
LayerDrawable stars = (LayerDrawable) ratingBar.getProgressDrawable(); 
stars.getDrawable(2).setColorFilter(Color.YELLOW,PorterDuff.Mode.SRC_ATOP);