2012-01-04 156 views
8

我正在研究一個應用程序,需要用4顆星動態創建一個不可編輯的小風格評級欄。評分欄只顯示半顆星而不是全星

當我打電話setRating(4)它顯示4星沒有任何問題。 但是當我打電話給setRating(3)時,它顯示3星和半星。 setRating(2)正確顯示2顆星, 但setrating(1)顯示1顆星和半顆星。

當我在另一個活動中使用正常的評級欄時,它工作正常,但是當我使用小型不可編輯評級欄時,它無法正常工作。

這是否與api級別或小風格的不可編輯評級欄有關?

初始化像這樣做:

RatingBar ioRatingBar = new RatingBar(this,null,android.R.attr.ratingBarStyleSmall); 
ioRatingBar.setNumStars(4); 

ioRatingBar.setRating(3); 

回答

14

您需要將RatingBarset the step size這樣

ratingBar.setStepSize(1.0); 

,並試圖定義max rating爲:

ratingBar.setMax(4); 
+0

它工作時,我把ratingBar.setMax(4);。謝謝你。 – akhil 2012-01-05 11:53:42

1

如果存在padding,刪除。我建議換成margin