制作自己的RatingBar,重载RatingBar的样式

    上一篇文章讲了如何使用RatingBar,但是那个样式是Android系统自带的,我们不能随心所欲的更换自己喜欢的图片,下面我就来讲讲如何制作自己的RatingBar样式。

    1、在res/data/style.xml文件中定义种样式:

<resources>
    <style name="myratingbar"    
               parent="@android:style/Widget.RatingBar.Small">
         <item 
              name="android:progressDrawable">
              @drawable/myratingbar
         </item>
         <item name="android:minHeight">36dip</item>
         <item name="android:maxHeight">36dip</item>
    <style>
</resources>

    其中继承的父类可以选择RatingBar,RatingBar.Indicator,RatingBar.Small;

    大小可以自己定义。

    注意:RatingBar,RatingBar.Indicator,RatingBar.Small的不同点除了他们的显示大小不同以外,主要的还有Ratingbar中的IsIndicator属性是false,其他两种是true.该属性为false表示可以相应用的点击事件,通过这种方式可以和用户交互。

 2、在res/drawable/myratingbar.xml文件指定不同图层的图片资源

<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
	<item android:id="@+android:id/background" 
	android:drawable="@drawable/myratingbar_off" />
	<item android:id="@+android:id/secondaryProgress"
		android:drawable="@drawable/myratingbar_half" />
	<item android:id="@+android:id/progress" 
	android:drawable="@drawable/myratingbar_on" />
</layer-list> 

 结果如下:(呵呵,自制的图片不好看哈,说明问题就行了) 

 

参考文章出处:http://kozyr.zydako.net/2010/05/23/pretty-ratingbar/

你可能感兴趣的:(android,xml,.net)