布局文件:

<RatingBar
android:id="@+id/credit_rating"
style="@style/level_rating"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="5dp"
android:isIndicator="true"
android:numStars="5"
android:rating="0"
android:stepSize="0.5" />

android:isIndicator=”true”
意思是:是否是指示器,如果设置成true,意思是将RatingBar作为指示器,不可通过触摸改变RatingBar的进度。

样式文件:

<style name="level_rating" parent="@android:style/Widget.RatingBar">
<item name="android:progressDrawable">@drawable/rating_bar_worker_level</item>
<item name="android:minHeight">13dip</item>
<item name="android:maxHeight">13dip</item>
</style>

rating_bar_worker_level.xml:

<?xml version="1.0" encoding="utf-8"?>  
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@android:id/background"
android:drawable="@drawable/ddxq_icon_xx_pre" />

<item
android:id="@android:id/secondaryProgress"
android:drawable="@drawable/ddxq_icon_xx_pre"/>

<item android:id="@android:id/progress"
android:drawable="@drawable/ddxq_icon_xx" />

</layer-list>

注:如果去掉secondaryProgress属性会导致半颗星无法显示,需要注意!

使用的图片:

Android自定义RatingBar_android

Android自定义RatingBar_android_02