Android之RatingBar实现评论星级效果

简介: Android之RatingBar实现评论星级效果

效果图:

image.png

1.布局

<RatingBar
        android:id="@+id/ratingbar"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:numStars="5"  //设置数量
        android:rating="3"  //设置默认选中
        style="@style/mRatingBar"
        android:progressTint="@android:color/holo_orange_dark"  //设置颜色
        android:stepSize="1" /> //设置选中数值


2.自定义背景图片

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


3.style

<style name="mRatingBar" parent="@android:style/Widget.RatingBar">
        <item name="android:progressDrawable">@drawable/ratingbar</item>
        <item name="android:minHeight">38dp</item>
        <item name="android:maxHeight">38dp</item> //这里是图片的高度
    </style>


4.MainActivity

RatingBar mRatingBar = (RatingBar) findViewById(R.id.ratingbar);
        mRatingBar.setOnRatingBarChangeListener(new RatingBar.OnRatingBarChangeListener() {
            @Override
            public void onRatingChanged(RatingBar ratingBar, float rating, boolean fromUser) {
                Toast.makeText(MainActivity.this, "评分星级=" + rating, Toast.LENGTH_SHORT).show();
            }
        });


设置监听,第二个参数就是数值


也可以用对象去get


float rating = mRatingBar.getRating();//获取星级

image.png

Demo地址:https://github.com/yechaoa/RatingBarDemo

目录
相关文章
|
Android开发
flutter中实现仿Android端的onResume和onPause方法
flutter中实现仿Android端的onResume和onPause方法
|
5月前
|
Java API Android开发
21. 【Android教程】评分条 RatingBar
21. 【Android教程】评分条 RatingBar
55 3
|
4月前
|
Android开发
Android 开发中跳转到评论页面
Android 开发中跳转到评论页面
63 0
|
缓存 JSON Java
java 实现读取txt文件,反射创建对象,android 手机缓存文件目录
java 实现读取txt文件,反射创建对象,android 手机缓存文件目录
438 1
java 实现读取txt文件,反射创建对象,android 手机缓存文件目录
|
Android开发 容器
Android实现面包屑效果,支持Fragment联动
Android实现面包屑效果,支持Fragment联动
|
Android开发
Android实现连线题效果
Android实现连线题效果
|
移动开发 JavaScript Android开发
通过howler.js实现在Android下的微信浏览器自动播放音频
通过howler.js实现在Android下的微信浏览器自动播放音频
534 0
通过howler.js实现在Android下的微信浏览器自动播放音频
|
数据库 Android开发
android 多级下拉菜单实现教程 greendao使用
android 多级下拉菜单实现教程 greendao使用
243 0
android 多级下拉菜单实现教程 greendao使用
|
存储 API Android开发
深入剖析Android四大组件(四)——Messenger实现Android IPC
深入剖析Android四大组件(四)——Messenger实现Android IPC
146 2
|
监控 前端开发 Java
Android自定义控件(十)——SurfaceView实战实现天气APP背景移动效果
Android自定义控件(十)——SurfaceView实战实现天气APP背景移动效果
453 0
下一篇
无影云桌面