我正在尝试为我的某个应用创建自定义RatingBar。我已经按照本教程:http://kozyr.zydako.net/2010/05/23/pretty-ratingbar/
问题是我的RatingBar总是大小相同,而且总是被填满。我尝试显示不同的评级(0,1,2,3,4 ...)但评级栏在所有情况下都是相同的......
我有ratingBar:
<RatingBar
android:id="@+id/ratingBar"
style="@style/MyRatingBar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="20dp"
android:layout_marginTop="20dp"
android:layout_marginRight="20dp"/>
我的风格:
<style name="MyRatingBar" parent="@android:style/Widget.RatingBar">
<item name="android:progressDrawable">@drawable/rating_list</item>
<item name="android:minHeight">57dip</item>
<item name="android:maxHeight">57dip</item>
</style>
图层列表:
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:id="@android:id/background"
android:drawable="@color/white_text" />
<item android:id="@android:id/secondaryProgress"
android:drawable="@color/white_text" />
<item android:id="@android:id/progress"
android:drawable="@color/red_circle" />
谢谢。
答案 0 :(得分:1)
在<RatingBar>
使用中:
android:numStars
定义用于整个标尺的red_circle
个{。}}
android:rating
设置默认评级
android:stepSize
来定义RatingBar的步长。
<强> <Edit>
强>
我不相信RatingBar设计为使用直接填充颜色作为进度可绘制,这是您目前所拥有的。颜色没有尺寸,因此绘制2,3或4个颜色没有意义
它被设计为使用图像文件,如默认的星形png文件。
更改图层列表,以便进度可绘制指向Bitmap或9Patch,并且它可以正常工作。 <RatingBar>
扩展了ProgressBar,它使用9Patchs作为可绘制的进度。