У меня возникла небольшая проблема при настройке пользовательской панели рейтинга в Android. Я следовал этому руководству:
Как создать панель пользовательских рейтингов в Android
Однако у меня возникла проблема при изменении/выборе более 4 звезд. Выбранное изображение звезды немного неуместно. Вот изображение, чтобы показать вам, как это выглядит.
Вот мой XML для создания пользовательской панели рейтинга.
Основной xml, в котором определяется вид панели рейтинга:
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:padding="10dp"
android:gravity="center" >
<RatingBar
android:id="@+id/ratingBar"
android:layout_width="wrap_content"
android:layout_height="19dp"
android:numStars="50"
android:stepSize="1.0"
style="@style/AppCustomRatingBar"/>
Пользовательский стиль для RatingBar
<style name="AppCustomRatingBar"
parent="@android:style/Widget.RatingBar">
<item name="android:progressDrawable">@drawable/rating_stars_custom</item>
<item name="android:minHeight">19dp</item>
<item name="android:maxHeight">19dp</item>
</style>
rating_stars_custom.xml
<item
android:id="@android:id/background"
android:drawable="@drawable/rating_stars_yellow_empty" />
<item android:id="@android:id/secondaryProgress"
android:drawable="@drawable/rating_stars_yellow_empty" />
<item
android:id="@android:id/progress"
android:drawable="@drawable/rating_stars_yellow_full" />
rating_stars_yellow_empty.xml
<?xml version="1.0" encoding="utf-8"?>
<item
android:id="@android:id/background"
android:drawable="@drawable/rating_stars_yellow_empty" />
<item android:id="@android:id/secondaryProgress"
android:drawable="@drawable/rating_stars_yellow_empty" />
<item
android:id="@android:id/progress"
android:drawable="@drawable/rating_stars_yellow_full" />
rating_stars_yellow_full.xml
<item android:state_pressed="true"
android:state_window_focused="true"
android:drawable="@drawable/home_icon_star_fill_selected" />
<item android:state_focused="true"
android:state_window_focused="true"
android:drawable="@drawable/home_icon_star_fill_selected" />
<item android:state_selected="true"
android:state_window_focused="true"
android:drawable="@drawable/home_icon_star_fill_selected" />
<item android:drawable="@drawable/home_icon_star_fill_selected" />
What am I doing wrong to misplace the stars? The image sizes of the stars (both yellow and white) are the same.