2017-07-31 2 views
0

J'ai ajouté un RatingBar à mon code et il fonctionne bien sauf une chose. J'essaye de placer une taille de pas à 0.1 mais il réagit toujours selon la taille par défaut de 0.5 étape. Je peux facilement définir une taille de pas supérieure à 0,5 et il réagira comme prévu mais pas plus bas.Android: Ratingbar stepize ci-dessous 0.5

Je n'arrive pas à comprendre pourquoi? La seule chose que je peux penser est que la taille de l'étape RatingBar est plafonnée à 0,5? Ce qui n'aurait aucun sens pour un RatingBar au minimum dessiner des demi-étoiles?

<android.support.v7.widget.AppCompatRatingBar 
    android:theme="@style/RatingBar" 
    android:stepSize="0.1" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:id="@+id/ratingbar" 
    android:numStars="5" 
    android:rating="0.1" 
    style="?android:attr/ratingBarStyleSmall" 
    android:layout_below="@+id/title" 
    android:layout_centerHorizontal="true" /> 

Le code ci-dessus montre une demi-étoile. Mais à ma connaissance, ça devrait être un dixième d'étoile.

P.S J'ai essayé de l'implémenter par programmation mais toujours la même chose.

Répondre

0

J'ai corrigé cela en définissant secondaryProgressTint sur # 00000000 qui est transparent. SecondaryProgressTint remplit le reste des étoiles commencées. La couleur par défaut est apparemment définie sur la même couleur que votre ProgressTint primaire et provoque donc beaucoup de confusion si vous n'êtes pas au courant.

<android.support.v7.widget.AppCompatRatingBar 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:id="@+id/ratingbar" 
      style="?android:attr/ratingBarStyleSmall" 
      android:isIndicator="true" 
      android:progressTint="@color/Red" 
      android:secondaryProgressTint="#00000000" 
      android:numStars="5" 
      android:rating="3.3" 
      android:stepSize="0.1" 
      android:layout_below="@+id/title" 
      android:layout_centerHorizontal="true" 
      />