使用Android中的RatingBar小部件,您可以设置要显示的星数,但是有一种方法可以设置始终处于活动状态的星数的下限。作为一个例子评价一部电影或其他你不能提交1的评级?
答案 0 :(得分:7)
如果在strictyl的框架中无法做到这一点,你可以将android:rating
的默认值设置为1,并在RatingBar
上添加一个监听器以返回1用户试图降低否?
答案 1 :(得分:5)
是否可以设置始终有效的星数下限。
是的,您可以使用setRating()
方法设置评级。
例如:
ratingBar.setRating(rat);
作为一个例子评价一部电影或其他你不能提交1的评级?
为此,您必须在onRatingChanged()方法中实现一个条件。 例如:
ratingBar.setOnRatingBarChangeListener(new OnRatingBarChangeListener() {
@Override public void onRatingChanged(RatingBar ratingBar, float rating,
boolean fromUser) {
// implement your condition here
}
});
答案 2 :(得分:2)
<RatingBar android:id="@+id/ratingbar"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:numStars="5"
android:stepSize="1.0"
android:rating="1"/>
通过设置rating = 1,它显示评级为1.
答案 3 :(得分:1)
正如@sephy所说,支持他的回答。我正在添加一个我在我的应用程序中使用的示例代码。
mRatingBar.setOnRatingBarChangeListener(new RatingBar.OnRatingBarChangeListener() {
@Override
public void onRatingChanged(RatingBar ratingBar, float rating, boolean fromUser) {
if(selectedRating<=0) {
mRatingBar.setRating(1);
}
}
});