如何将评级栏设置为最小一颗星?

时间:2014-10-14 11:48:49

标签: android actionlistener ratingbar

我要求为最少一颗星的用户评分,之后评分应该增加到0.5。但我的问题是用户不应该将星的最低评级更改为0.5或0. 1应该是默认评级。请帮助解决此问题并等待您之前的回复。我也试过来自link的侦听器,但是内部逻辑完全结构化 我的代码是:

ratingBar.setOnRatingBarChangeListener(new OnRatingBarChangeListener() {

    @Override public void onRatingChanged(RatingBar ratingBar, float rating, 
      boolean fromUser) {

    }
});

4 个答案:

答案 0 :(得分:25)

 ratingBar.setOnRatingBarChangeListener(new OnRatingBarChangeListener() {

@Override public void onRatingChanged(RatingBar ratingBar, float rating, 
  boolean fromUser) {
     if(rating<1.0f)
          ratingBar.setRating(1.0f);
}
});

答案 1 :(得分:2)

设置评级采用浮动值, 在案例中你的值是字符串:

ratingBar.setRating(Float.parseFloat(result));

答案 2 :(得分:1)

      ratingbar.setOnRatingBarChangeListener(new OnRatingBarChangeListener() {

        @Override
        public void onRatingChanged(RatingBar ratingBar, float rating,
                boolean fromUser) {

                  ratingBar.setRating(Float.parseFloat(""+Math.ceil(rating)));
                }
 }

答案 3 :(得分:0)

ratingBar.setOnRatingBarChangeListener(new RatingBar.OnRatingBarChangeListener() {
    public void onRatingChanged(RatingBar ratingBar, float rating,
                                boolean fromUser) {
            Toast.makeText(RateUsProductActivity.this,"Rating :-  "+String.valueOf(rating),Toast.LENGTH_SHORT).show();
        if(rating<1.0f)
            ratingBar.setRating(1.0f);
    }
});

当评分小于1时,自动设置评级1

快乐的编码干杯!