UI控件之RatingBar(星级评分条)

(一)概述
这里写图片描述单,相信你在某宝买完东西后评论的时候,肯定熟悉吧;
先来看看官方的类的结构图吧



(二)RatingBar的基本使用
运行结果:
UI控件之RatingBar(星级评分条)_第1张图片



实现代码:
xml文件

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" tools:context="com.example.android_ratingbar.MainActivity" >

    <TextView  android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="评分控件的使用" />

    <RatingBar  android:id="@+id/ratingBar1" android:layout_width="wrap_content" android:layout_height="wrap_content" />

</LinearLayout>

java代码:

public class MainActivity extends Activity implements OnRatingBarChangeListener{

    private  RatingBar ratingBar;


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        ratingBar = (RatingBar)findViewById(R.id.ratingBar1);
        ratingBar.setMax(100);//设置最大刻度
        ratingBar.setProgress(20);//设置当前刻度
        ratingBar.setOnRatingBarChangeListener(this);
    }


    @Override
    public void onRatingChanged(RatingBar ratingBar, float rating,
            boolean fromUser) {
        // TODO Auto-generated method stub
        int progress = ratingBar.getProgress();
        Toast.makeText(MainActivity.this, "progress: "+progress+"rating: "+rating, 1).show();
    }
}

(三)自定义环节
我们使用俩个妹子来做RatingBar吧,素材在这里:
这里写图片描述
这里写图片描述
是不是好像在哪里见过,对没错就是QQ群的那个东东,它本质上就是一个变异RatingBar,像这样:
UI控件之RatingBar(星级评分条)_第2张图片

这个的实现我打算放在进阶里面,今天我们想搞懂这个简单的自定义RatingBar ,运行结果如下:

实现代码:
draw下的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/kong"/>
     <item android:id="@android:id/secondaryProgress" android:drawable="@drawable/kong"/>
      <item android:id="@android:id/progress" android:drawable="@drawable/girle"/>

</layer-list>

主xml文件:


    <RatingBar  android:id="@+id/ratingBar1" style="@style/roomRatingBar" android:layout_width="wrap_content" android:layout_height="wrap_content" />

java文件什么都没改,只是记得加载正确的主xml文件

这里写图片描述

如果对你有一点启示吧,那就帮我点个赞吧~~~<完>

你可能感兴趣的:(UI,RatingBar,自定义,控件)