AppCompatRatingBar 这个控件很多年前用过,用来做商场评价用的,当时就碰到了很多坑,都摆平了,
多年未使用发现又掉坑了, 因为以前没记录,很多坑都忘记怎么干掉的了,花了一点时间终于又摆平了
为了下次使用方便,这里做个记录。
先看下正确使用后的效果图吧:
直接上使用的文件内容吧:
style="@style/RadingStyle"
android:layout_width="wrap_content"
android:layout_height="20dp"
android:isIndicator="false"
android:max="5" />
然后是自定义样式:
@drawable/appraise_rating_bar
20dp
20dp
//这里放一些你觉得公共的属性(你可以在控件里覆盖这里的属性)
appraise_rating_bar.xml
android:id="@android:id/background"
android:drawable="@mipmap/ic_star_grey">
android:id="@android:id/secondaryProgress"
android:drawable="@mipmap/ic_star_grey">
android:id="@android:id/progress"
android:drawable="@mipmap/ic_star_red">
图片资源:
ic_star_red 是选中图标,ic_star_grey是默认图标
直接把上面的复制到项目中就可以正常使用了,需要改图标的可以随便改的。
接下来说说遇到的坑
1、这个控件的使用真的不能从逻辑上去,首先就是会发现图标显示半截不全
解决方案:图标尺寸太高,需要缩小
2、控件选中图标和默认图标对不齐,底部还有像眼泪的一样往下掉,就是很奇怪的现象
解决方案:选中图标需要和默认图标尺寸一致
3、明明设置了最大max星星数,但是不起效果
解决方案:AppCompatRatingBar的宽度要设置为wrap_content,不能是match_parent
好了,又可以愉快玩耍了