zoukankan      html  css  js  c++  java
  • 星级评分进度条(RatingBar)

    星级评分进度条(RatingBar):(主要用于评价等方面)

    常用的xml属性;

    android:isIndicator:RatingBar是否是一个指示器(用户无法进行更改)

    android:numStars:显示的星星数量,必须是一个整型值,如“100”。

    android:rating:默认的评分,必须是浮点类型,像“1.2”。

    android:stepSize:评分的步长,必须是浮点类型,像“1.2”。

    常用的方法:

    监听方法:setOnRatingBarChangelistener 

    监听器:RatingBar.OnRatingBarChangeListener

    下面我们直接上代码:

    1.Activity

    //星级评分条
    public class RatingBarActivity extends Activity {
    
        private Context context;
        private RatingBar ratingBar;
        
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.rating_bar);
            
            context = this;
            ratingBar = (RatingBar)findViewById(R.id.room_ratingbar);
            
            ratingBar.setOnRatingBarChangeListener(new RatingBar.OnRatingBarChangeListener() {
                public void onRatingChanged(RatingBar ratingBar, float rating,
                        boolean fromUser) {
                    Toast.makeText(context, rating+"", Toast.LENGTH_SHORT).show();
                }
            });
    
        }
    
    }

    2.xml布局文件

    <?xml version="1.0" encoding="utf-8"?>
    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:padding="5dp" >
    <!-- 星级评分条 -->
        <RatingBar
            android:id="@+id/ratingBarId1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:isIndicator="true"
            android:numStars="5"
            android:rating="1.5" />
    
        <RatingBar
            android:id="@+id/room_ratingbar"
            style="@style/roomRatingBar"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_below="@id/ratingBarId1"
            android:layout_marginLeft="10dp"
            android:numStars="5"
            android:stepSize="1">
        
        </RatingBar>
    
    </RelativeLayout>

    3.style="@style/roomRatingBar"的布局文件

    <style name="roomRatingBar" parent="@android:style/Widget.RatingBar">
            <item name="android:progressDrawable">@drawable/aaa</item>
            <item name="android:minHeight">20dp</item>
            <item name="android:maxHeight">20dp</item>
        </style>
    </resources>

    4.星星图片的xml布局文件

    <?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/u53">
        </item>
    
        <item
            android:id="@+android:id/progress"
            android:drawable="@drawable/u45">
        </item>
    
    </layer-list>

    5.效果显示图

  • 相关阅读:
    Leetcode 16.25 LRU缓存 哈希表与双向链表的组合
    Leetcode437 路径总和 III 双递归与前缀和
    leetcode 0404 二叉树检查平衡性 DFS
    Leetcode 1219 黄金矿工 暴力回溯
    Leetcode1218 最长定差子序列 哈希表优化DP
    Leetcode 91 解码方法
    Leetcode 129 求根到叶子节点数字之和 DFS优化
    Leetcode 125 验证回文串 双指针
    Docker安装Mysql记录
    vmware虚拟机---Liunx配置静态IP
  • 原文地址:https://www.cnblogs.com/wuziyue/p/5470870.html
Copyright © 2011-2022 走看看