私はいくつかの投稿を調べました (例: Android RatingBar は星の色を変更します , Androidで評価バーが動的に作成される評価バーの星の色を変更する , 評価バーの星の色を設定するにはどうすればよいですか? ) 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 に設定されます。なぜこれが起こっているのか、または私が間違っていることを知っている人はいますか? どんな助けでも大歓迎です。ありがとう