Итак, я пытаюсь создать собственную рейтинговую панель и пытался использовать следующие ресурсы.
1) https://mobikul.com/android-changing-stars-rating-bar-images-like/
2) https://demonuts.com/android-custom-ratingbar/
3) Как создать панель пользовательских рейтингов в Android
Однако они не работают,Ниже приведен мой код и снимок экрана с выводом.
Виджет строки рейтинга, настроенный для выбора стилей из отрисовки.
<RatingBar
android:progressDrawable="@drawable/star_rating"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="8dp"
android:layout_marginTop="8dp"
android:layout_marginEnd="8dp"
android:layout_marginBottom="8dp"
android:numStars="5"
android:stepSize="1.0"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/suggestion" />
Звездное рисование
<item android:id="@android:id/background" android:drawable="@drawable/background" />
<item android:id="@android:id/secondaryProgress" android:drawable="@drawable/full_rating" />
<item android:id="@android:id/progress" android:drawable="@drawable/full_rating" />
рисование с полным заполнением Здесь я использовал векторные рисунки вместо изображений.
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:height="24dp"
android:width="24dp"
android:viewportWidth="24"
android:viewportHeight="24">
<path android:fillColor="#000" android:pathData="M12,17.27L18.18,21L16.54,13.97L22,9.24L14.81,8.62L12,2L9.19,8.62L2,9.24L7.45,13.97L5.82,21L12,17.27Z" />
Фон для рисования Другой вектор для рисования.
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:height="24dp"
android:width="24dp"
android:viewportWidth="24"
android:viewportHeight="24">
<path android:fillColor="#000" android:pathData="M12,15.39L8.24,17.66L9.23,13.38L5.91,10.5L10.29,10.13L12,6.09L13.71,10.13L18.09,10.5L14.77,13.38L15.76,17.66M22,9.24L14.81,8.63L12,2L9.19,8.63L2,9.24L7.45,13.97L5.82,21L12,17.27L18.18,21L16.54,13.97L22,9.24Z" />
А теперь вывод, который я сейчас получаю.