布局代码
<RatingBar
android:id="@+id/heart_ratingbar"
style="@style/EvaluateRatingBarStyle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:isIndicator="true"
android:numStars="5"
android:rating="0.0"
android:stepSize="0.01" />
(1)属性:numStars:表示总共多少个星星,一般是5个,例如:numStars="5"。
rating:表示初始化显示多少颗星星,该属性接收一个float的值,一般初始化时显示0个星星,例如:ration="0.0"。
stepSize:表示每次增加多少星级,该属性接收一个float的值,具体看业务需
求,例如:stepSize="0.01"。
isIndicator:表示是否让用户点击评分星级,该参数接收一个boolean值,true
表示用户点击无效,false则可以点击,具体看业务需求,例如:
isIndicator="true"。
progressDrawable:表示显示星级评分条的当前进度与总进度的背景样式,也是
整个RatingBar最重要的部分,该属性接收一个Drawable
类型,可以在项目Drawable目录下新建一个layer-list的
资源文件,例如如下格式:
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
星级评分条的背景是图片都可以一般是空心
<item
android:id="@android:id/background"
android:drawable="@drawable/relationship_kong_xin"/>
设置该样式才能显示半颗星级或更少星级,图片最好设置成空心背景相同就可以了
<item
android:id="@android:id/secondaryProgress"
android:drawable="@drawable/relationship_kong_xin"/>
<item
星级评分条的当前进度背景一般是实心
android:id="@android:id/progress"
android:drawable="@drawable/relationship_shi_xin"/>
</layer-list>
效果如下图