Я просмотрел ряд сообщений (например, Android RatingBar изменил цвет звезд, Измените цвет звезд в баре рейтинга, где рейтинг-бара динамически создается в андроиде, Как установить цвет звезды в панели оценки?), чтобы изменить цвета звезд в RatingBar. Я следил за сообщениями и смог изменить звезды для пользовательского RatingBar, но при этом я больше не мог установить значение десятичной единицы ниже половины (например, 0.2). Он всегда будет отображаться как половина (например, 0,5). Когда я устанавливаю значение выше половины (например, 0,7), оно отображается отлично.
Ниже приведены образцы изображений, которые я использую для своего пользовательского RatingBar (например, ratingbar_empty.png, ratingbar_half.png, ratingbar_full.png)
Ниже приведен xml для использования пользовательских звезд (ratingbar_custom.xml).
<?xml version="1.0" encoding="UTF-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@android:id/background" android:drawable="@drawable/ratingbar_empty" />
<item android:id="@android:id/secondaryProgress" android:drawable="@drawable/ratingbar_half" />
<item android:id="@android:id/progress" android:drawable="@drawable/ratingbar_full" />
</layer-list>'
Далее следует, как я использую свой собственный RatingBar в своем макете.
<RatingBar
android:id="@+id/rb_rating"
android:numStars="7"
android:rating="0"
android:stepSize="0.01"
android:isIndicator="true"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:progressDrawable="@drawable/ratingbar_custom" />
Когда я затем объединим все вместе и устанавливаю значение RatingBar равным 0,2, он визуально устанавливает RatingBar на 0,5, как показано ниже. У кого-нибудь есть идеи, почему это происходит или что я делаю неправильно? Любая помощь будет принята с благодарностью. Благодаря