我正在尝试将评级栏的初始评级设置为浮动值。但输出总是完全充满星星!我不知道为什么会这样。
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
ratingText = (TextView) findViewById(R.id.rating);
ratingBar = ((RatingBar) findViewById(R.id.ratingBar1));
ratingBar.setRating(Float.parseFloat("3.5"));
((RatingBar) findViewById(R.id.ratingBar1))
.setOnRatingBarChangeListener(this);
}
这是评级栏:
<RatingBar
android:id="@+id/ratingBar1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:stepSize="0.5"
android:layout_marginLeft="22dp"
android:layout_marginTop="28dp" />
答案 0 :(得分:0)
您正在设置stepSize =&#34; 0.5&#34;。你应该把它改成0.1。
答案 1 :(得分:0)
尝试通过编程方式这样做
ratingBar = ((RatingBar) findViewById(R.id.ratingBar1));
ratingBar.setStepSize(0.5f);
ratingBar.ratingBar.setNumStars(5);
ratingBar.ratingBar.setMax(5);
ratingBar.setRating(Float.parseFloat("3.5"));
答案 2 :(得分:0)
您只需删除项目中的工具栏即可。我认为工具栏中存在一些问题。我尝试如下,它的工作原理
ratingBar = ((RatingBar) findViewById(R.id.ratingBar1));
ratingBar.setRating(Float.parseFloat("3.6"));
ratingBar = ((RatingBar) findViewById(R.id.ratingBar1));