Android RatingBar 评价栏 星星 大小 样式 设置

来源:互联网 发布:cad三维绘图软件 编辑:程序博客网 时间:2024/06/06 02:08
Android系统自带RatingBar,无法直接指定宽高,不然会出现无法全部显示的情况,使用系统自带的两个主题
?android:attr/ratingBarStyleIndicator


?android:attr/ratingBarStyleSmall

也只能做到固定小版或者大版。

按照以下几个步骤 可以做到自控ratingbar 宽高。


第一步 准备选中何为选中的两种星星,大小相同。

Step-1. You need your own rating stars in res/drawable ...

A full star

Empty star


第二部 为星星定义选中与非选中状态

Step-2 In res/drawable you need ratingstars.xml as follow ...

<?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/star_empty" />    <item android:id="@android:id/secondaryProgress"          android:drawable="@drawable/star_empty" />    <item android:id="@android:id/progress"          android:drawable="@drawable/star" /></layer-list>


第三步,为Ratingbar设置style,此处开始正式指定高度。

Step-3 In res/values you need styles.xml as follow ...<?xml version="1.0" encoding="utf-8"?><resources>    <style name="foodRatingBar" parent="@android:style/Widget.RatingBar">        <item name="android:progressDrawable">@drawable/ratingstars</item>        <item name="android:minHeight">22dip</item>        <item name="android:maxHeight">22dip</item>    </style></resources>

第四部,就可以直接使用了

Step-4 In your layout ...

<RatingBar      android:id="@+id/rtbProductRating"      android:layout_height="wrap_content"      android:layout_width="wrap_content"      android:numStars="5"      android:rating="3.5"      android:isIndicator="false"      style="@style/foodRatingBar"    /> 


http://blog.csdn.net/fff2666/article/details/50498238

0 0
原创粉丝点击