写星座运势,难免要写RatingBar。
用法:
1.属性
android:numStars : 星星个数
android:rating : 默认点亮的星星星星个数
android:stepSize : 步进数,1,0.5是常用值
2.监听:setOnRatingBarChangeListener
RatingBar自定义成自己需要的样式:
需要写一个style继承系统的Ratingbar样式,再在其中自定义一些自己需要的样式,Ratingbar和进度条很像,可以仿造自定义进度条样式来写。
代码如下:
自定义Ratingbar样式其中@android:style/Widget.Holo.RatingBar.Indicator是安卓系统定义的Ratingbar样式
系统样式:
"@android:style/Widget.RatingBar" 默认
@android:style/Widget.Material.RatingBar
@android:style/Widget.DeviceDefault.RatingBar
small 小 light 亮 Indicator 指示器,仅做展示,不能打分
其中@drawable/myratingbar:
backgroud:是用来填充背景图片的,和进度条非常类似,当我们设置最高评分时(android:numStars),系统就会根据我们的设置,来画出以星星为单位的背景(假如android:numStars="5",就会画出5颗灰色的星星)
progress:是用来在背景图片基础上进行填充的指示属性(和进度条类似,第一进度位置)
secondaryProgress:同progress一样属于第二进度位置(如果不定义这个,进度条拖动,每次就画出一整颗星星(亮),第二进度(暗)没有覆盖掉第一进度之后的位置,从左往右是拖不出来N.5颗星星的,这样评分效果就不完整)
网友评论