Проблемы с Android's RatingBar - PullRequest
       4

Проблемы с Android's RatingBar

0 голосов
/ 10 августа 2011

Я пытаюсь немного настроить RatingBar для Android.

Я нашел учебник , чтобы сделать это, но у меня проблема.

Я установил свойстворейтинговой шкалы numStars до 5.

Что я получаю, что каждая «звезда» рейтинговой шкалы будет представлена ​​тремя моими.

Я прочитал в комментариях к этому уроку, что кто-то получилпохожая проблема, но нет решения для этой проблемы.

Может кто-нибудь попробовать этот учебник на Android 2.2?Или порекомендуете другой учебник?

Заранее спасибо

UPD:

А вот немного моего кода:

res / drawable / star_selector_full_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/star_highlighted" />

    <item android:state_focused="true"
          android:state_window_focused="true"
          android:drawable="@drawable/star_highlighted" />

    <item android:state_selected="true"
          android:state_window_focused="true"
          android:drawable="@drawable/star_highlighted" />

    <item android:drawable="@drawable/star_highlighted" />

</selector>

res / drawable / star_selector_empty.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/star_white" />

    <item android:state_focused="true"
          android:state_window_focused="true"
          android:drawable="@drawable/star_white" />

    <item android:state_selected="true"
          android:state_window_focused="true"
          android:drawable="@drawable/star_white" />

    <item android:drawable="@drawable/star_white" />

</selector>

res/drawable/star_selector.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/star_selector_empty" />
    <item android:id="@+android:id/secondaryProgress"
          android:drawable="@drawable/star_selector_empty" />
    <item android:id="@+android:id/progress"
          android:drawable="@drawable/star_selector_full_filled" />
</layer-list>

res / values ​​/ styles.xml:

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <style name="starRatingBar" parent="android:style/Widget.RatingBar">
        <item name="android:progressDrawable">@drawable/star_selector</item>
        <item name="android:minHeight">25dip</item>
        <item name="android:maxHeight">25dip</item>
    </style>    
</resources>

1 Ответ

0 голосов
/ 11 сентября 2011

У меня была та же проблема ... это как-то связано с минимальной версией, которую вы развернули, и размером экрана.

Я решил это вручную, установив поддерживаемые размеры экрана в манифесте Android:

<supports-screens android:smallScreens="true" 
      android:normalScreens="true" 
      android:largeScreens="true" 
      android:anyDensity="true" />

Надеюсь, это поможет.

Edit:

Я действительно ответил на эту же проблему здесь.

Все, что вам нужно сделать, это установить ширину макета на wrap_content

...