各位看官们,大家好,上一回中咱们说的是Android中UI控件之SeekBar的例子,这一回咱们的例子是UI控件之RatingBar。闲话休提,言归正转。让我们一起Talk Android吧!
看官们,RatingBar通常翻译为评分条,评分条通常用来做评分统计,这个大家肯定使用过,我就不多说了。接下来我们通过代码结合文本的方式来演示如何使用这种控件。
- 1.在布局中添加RatingBar,通常是在Activity的布局文件中添加
<RatingBar
android:id="@+id/ratingbar_id" //配置RatingBar的ID
android:layout_width="wrap_content" //配置RatingBar的宽度和高度属性
android:layout_height="wrap_content"
android:layout_gravity="center" //配置RatingBar的位置,让它居中
android:numStars="5" //配置RatingBar显示的星星数量,通常使用5个星星
android:max="100"/> //配置RatingBar的最大评分值
- 2.在代码中获取布局文件中的RatingBar。通常位于Activity的onCreate方法中。
mRatingBar = (RatingBar)findViewById(R.id.ratingbar_id);
- 3.在代码中获取RatingBar上的评分值。通常需要给RatingBar配置一个监听器,并且在监听器中获取RatingBar上具体的评分值。
mRatingBar.setOnRatingBarChangeListener(new RatingBar.OnRatingBarChangeListener() {
@Override
public void onRatingChanged(RatingBar ratingBar, float v, boolean b) {
int progres = (int)(v*20);
mProgressBar.setProgress(progres);
}
});
在该代码中我们给RatingBar
配置了监听器,并且重写了监听器中的onRatingChanged()
方法,该方法中的第二个参数就是当前评分条上具体的评分值,不过它是一个百分比数值,该程序中每个星星代表1/5,而最大值是100,所以我们乘以20,为了演示,我们在代码中对进度条进行了调节。在实际运行程序时,进度条会随着评分条的变化而变化,下面是程序运行时的效果图,请参考:
各位看官,关于Android中UI控件之RatingBar的例子咱们就介绍到这里,欲知后面还有什么例子,且听下回分解!