美文网首页
简单实用的自定义AndroidRatingBar

简单实用的自定义AndroidRatingBar

作者: HeavenRobot | 来源:发表于2017-04-14 09:31 被阅读0次

作为一个初级小菜逼码农,刚做的几个项目都有设计到评分这一块的功能(感觉很少有应用不做吧……),系统自带的ratingbar用来用去真是费劲,背景图片还得去单独建立一个资源文件,用起来很是不简洁,就琢磨着自己写一个,很简单的自定义控件,简单实用,基本需求都有O(∩_∩)O~
已经上传到GitHub和jcenter,加一句依赖就可以随便用啦。

GitHub地址:
https://github.com/heavenrobotxu/HrRatingBar

使用

依赖

Gradle

compile 'com.xztot:xzratingbar:1.0.1'

现在你可以在XMl文件中直接使用了,就像这样

<com.hr.xz.hratingbar.HrRatingBar
        android:id="@+id/my_rating_bar"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        app:starTotalNum="5"
        app:starSelectedNum="3"
        app:starDefaultDrawable="@mipmap/star_default"
        app:starSelectedDrawable="@mipmap/star_selected"
        app:starHalfDrawable="@mipmap/star_half"
        app:isIndicator="true"
        app:starMargin="10dp"
        app:isShowHalf="true"
        app:starHeight="20dp"
        app:starWidth="20dp"
        />

可使用的属性

starTotalNum : 要显示的星星总数(默认为5)

starSelectedNum : 已选择星星数(默认为5)

starDefaultDrawable : 默认星星图标

starHalfDrawable : 半星图标

starSelectedDrawable : 被选中星星图标

starMargin : 星星之间间隔(可选,不设置的话默认为0)

isIndicator : 是否仅做展示不响应点击事件(默认为false)

isShowHalf : 是否显示半颗星(默认为false)

starHeight : 单个星星高度(可选,不设置的话按照图片为准)

starWidth : 单个星星宽度(可选,不设置的话按照图片为准)

监听回调代码

mRb = (HrRatingBar) findViewById(R.id.my_rating_bar);
        mRb.setRatingChangeListener(new HrRatingBar.OnRatingChangListener() {
            @Override
            public void onRatingChange(float rating) {
                Toast.makeText(MainActivity.this, rating + "", Toast.LENGTH_SHORT).show();
            }
        });

怎么样是不是很无脑简单……小控件一枚,也是第一次上传到jcenter(搞了好久……),各位大大可以试试,非常欢迎批评指教_

相关文章

网友评论

      本文标题:简单实用的自定义AndroidRatingBar

      本文链接:https://www.haomeiwen.com/subject/svqwattx.html