评分条RatingBar

RatingBar是基于SeekBarProgressBar的扩展,用星型来显示等级评定。使用RatingBar的默认大小时,用户可以触摸/拖动或使用键来设置评分,它有两种样式(小风格用ratingBarStyleSmall,大风格用ratingBarStyleIndicator),其中大的只适合指示,不适合于用户交互。

  主要用于评分。

一、设计界面

  1、打开“res/layout/activity_main.xml”文件。

  从工具栏向activity拖出1个评分条RatingBar

wKioL1Y4InzyM5-iAAEzuk54QNk971.jpg

2、打开activity_main.xml文件。

  代码如下:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >

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

</LinearLayout>

二、程序文件  

  打开“src/com.genwoxue.ratingbar/MainActivity.java”文件。

  然后输入以下代码:  

import android.app.Activity;
import android.os.Bundle;
import android.widget.RatingBar;
import android.widget.Toast;

public class MainActivity extends Activity {
	//声明RatingBar
	private RatingBar rbScore = null;
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		//获取RatingBar
		rbScore = (RatingBar) findViewById(R.id.ratingbar);
		//设置监听事件
		rbScore.setOnRatingBarChangeListener(new RatingBar.OnRatingBarChangeListener() {
			
			@Override
			public void onRatingChanged(RatingBar ratingBar, float rating, boolean fromUser) {
				Toast.makeText(getApplication(), "rating:"+String.valueOf(rating), Toast.LENGTH_LONG).show();
			}
		});
	}
}

说明:RatingBar监听事件。

 

  public void setOnRatingBarChangeListener (RatingBar.OnRatingBarChangeListener listener)

  设置当评分等级发生改变时回调的监听器

 

三、运行效果

wKiom1Y4I0vxlpUbAABfhnM217g426.jpg

本文出自 “没有水勒鱼” 博客,转载请与作者联系!

你可能感兴趣的:(android,RatingBar,layout,Activity,触摸)