2017-09-06 77 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" 
    /> 

如果我將評分從3.1提高到3.5,那麼評分顯示僅爲3.5。評級欄中的StepSize Android

我需要評分以確切的價值(例如:3.1)。

StepSize也設置爲0.1。

任何人都可以幫助我。

在此先感謝。

回答

0

TRY喜歡這個

<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

我不能靜態使用成爲我會從服務器** **數據**。 – Akila

+0

哪種類型的數據來自服務器?相同像3.1,3.2 ... –

+0

它可能從0.1到5 – Akila

-1

嘗試與物業機器人調整的RatingBar:寬=「match_parent」 在父佈局,這將花費你的步長在心並表現小數評級。

你可以更好地得到它Here

0

試試這個:

<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" 
      /> 

如果您在RatingBar設置secondaryProgressTint,它將與> = 21版本。要支持所有版本使用AppCompatRatingBar