2017-09-06 2 views
0
<RatingBar 
    android:id="@+id/ratingBar" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:numStars="5" 
    android:stepSize="0.1" 
    android:isIndicator="true" 
    android:rating="3.1" 
    /> 

Wenn ich Rating von 3,1 bis 3,5 gebe, dann ist die Bewertung nur 3,5.StepSize in der Bewertungsleiste Android

Ich brauche Rating in genauen Wert (z. B. 3,1) gesetzt werden.

StepSize wird ebenfalls auf 0,1 gesetzt.

Bitte helfen Sie mir dabei.

Vielen Dank im Voraus.

Antwort

0

TRY dir auch gefallen

<RatingBar 
    android:id="@+id/ratingBar" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:numStars="5" 
    android:stepSize="1" 
    /> 


    ratingBar.setOnRatingBarChangeListener(new RatingBar.OnRatingBarChangeListener() { 
     @Override 
     public void onRatingChanged(RatingBar ratingBar, float rating, boolean fromUser) { 

      if(rating == 1.0) 
      { 
       Toast.makeText(MainActivity.this, "3.1", Toast.LENGTH_SHORT).show(); 
      } 
      else if(rating == 2.0) 
      { 
       Toast.makeText(MainActivity.this, "3.2", Toast.LENGTH_SHORT).show(); 
      } 

     } 
    }); 
+0

Ich kann nicht statisch verwenden, wenn ich ** Ratingdaten ** vom Server bekomme. – Akila

+0

Welche Art von Daten kommen vom Server? gleich wie 3,1,3,2 ... –

+0

Es kann von 0,1 bis 5 – Akila

-1

Versuchen Sie, Ihre Bewertungsleiste mit der Eigenschaft android anzupassen: width = "match_parent" in Ihrer Eltern Layout, dies wird Ihre Schrittgröße im Auge zu nehmen und verhalten sich mit Dezimalwert.

Sie können es besser bekommen Here.

0

Try this:

<android.support.v7.widget.AppCompatRatingBar 
      android:id="@+id/rb" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_gravity="center" 
      android:layout_margin="10dp" 
      android:isIndicator="false" 
      android:numStars="6" 
      android:stepSize=".1" 
      app:secondaryProgressTint="#00000000" 
      android:numStars="6" 
      /> 

Wenn Sie secondaryProgressTint in RatingBar gesetzt ist, wird es > = 21 mit Versionen arbeiten. Um alle Versionen zu unterstützen, benutze AppCompatRatingBar

Verwandte Themen