Я последовал ответ на переполнение стека, чтобы добавить пользовательский рейтинг бар для андроид проекта, здесь: https://stackoverflow.com/a/32828726/5909396рейтинг бар становится большим и отсечка при добавлении пользовательских изображений в андроида
Только в случае, если я я отправляю свой код.
Сначала я создал ratingBar.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_empty" />
<item android:id="@android:id/progress"
android:drawable="@drawable/ratingbar_filled" />
Затем я создал ratingbar_empty.xml и ratingbar_filled.xml также в вытяжке папке:
<?xml version="1.0" encoding="UTF-8" ?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true"
android:state_window_focused="true"
android:drawable="@drawable/ic_emptyStar" />
<item android:state_focused="true"
android:state_window_focused="true"
android:drawable="@drawable/ic_emptyStar" />
<item android:state_selected="true"
android:state_window_focused="true"
android:drawable="@drawable/ic_emptyStar" />
<item android:drawable="@drawable/ic_emptyStar" />
<?xml version="1.0" encoding="UTF-8" ?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true"
android:state_window_focused="true"
android:drawable="@drawable/ic_fullStar" />
<item android:state_focused="true"
android:state_window_focused="true"
android:drawable="@drawable/ic_fullStar" />
<item android:state_selected="true"
android:state_window_focused="true"
android:drawable="@drawable/ic_fullStar" />
<item android:drawable="@drawable/ic_fullStar" />
И тогда я создал собственный стиль в styles.xml
<style name="CustomRatingBar" parent="@android:style/Widget.RatingBar">
<item name="android:progressDrawable">@drawable/ratingbar</item>
<item name="android:minHeight">50dp</item>
<item name="android:maxHeight">50dp</item>
</style>
И, наконец, я добавил ratingBar в макете. Способ, которым я его структурировал, - это индикаторная строка внутри относительной компоновки, а также текстовый вид внутри относительного макета, который находится поверх панели рейтинга (текстовое представление показывает, нет ли рейтинга);
<RelativeLayout
android:layout_width="0dip"
android:layout_height="wrap_content"
android:layout_weight="0.4"
android:orientation="vertical"
android:layout_gravity="center">
<RatingBar
android:id="@+id/ratingRestaurant"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="@style/CustomRatingBar"
android:numStars="5"
android:stepSize="0.1"
android:isIndicator="true"
android:max="5"
android:progress="3"
android:layout_centerVertical="true"
android:progressTint="#ffe4b331" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="No rating available"
android:textColor="@android:color/white"
android:textSize="11dp"
android:id="@+id/textViewNoRatingAvailable" />
</RelativeLayout>
При запуске приложения на тренажере, звезды действительно большие и отсечение, как показано ниже:
Там должны быть пять звезд. Как я могу исправить эту проблему?
Пожалуйста Смотрите это первая: [отвечая] (https://stackoverflow.com/help/answering) и [как к ответу] (https: // stackoverflow.com/help/how-to-answer) –