6

我的应用程序中有一个 android 评级栏,它只显示 int 评级。

例如:

float ratingValue = 1.5f;
myRatingBar.setRating(ratingValue);

评分栏显示 2 颗满星。我怎样才能让它显示一颗半星或两颗半星?

4

3 回答 3

7

尝试使用

float ratingValue = 1.5f;
myRatingBar.setRating(ratingValue); // to set rating value
myRatingBar.setStepSize(ratingValue);// to show to stars

公共无效setStepSize(浮动步长)

设置此评级栏的步长(粒度)。参数

stepSize 此评级栏的步长。例如,如果需要半星粒度,则为 0.5。

于 2011-09-07T18:43:04.050 回答
2

添加style="?android:attr/ratingBarStyle"到您的 xml

于 2015-07-09T03:47:52.443 回答
0

对我有用的解决方案是在设置评级值之前设置步长:
float ratingValue = 3.5f; myRatingBar.setStepSize(0.5f); myRatingBar.setRating(ratingValue);

于 2016-12-06T12:43:48.243 回答