博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android学习笔记之RatingBar
阅读量:4105 次
发布时间:2019-05-25

本文共 1860 字,大约阅读时间需要 6 分钟。

<1>简介

RatingBar为评分条控件,默认效果为若干个绿色的星星,如果想将其换成其他自定义图片就要自定义它的style。

RatingBar是SeekBar 和 ProgressBar 的一种扩展,用星星表示等级。

当RatingBar使用默认的大小,用户可以点击/拉拽或使用方向键来设置等级。当RatingBar使用默认的大小。

它有两种样式(小风格用ratingBarStyleSmall,大风格用ratingBarStyleIndicator),其中大的只适合指示,不适合于用户交互(用户无法改变)。

    当使用可以支持用户交互的RatingBar时,无论将控件(widgets)放在它的左边还是右边都是不合适的。

只有当布局的宽被设置为wrap content时,设置的星星数量(通过函数setNumStars(int)或者在XML的布局文件中定义)将显示出来(如果设置为另一种布局宽的话,后果无法预知)。

次级进度一般不应该被修改,因为他仅仅是被当作星型部分内部的填充背景。

<2>属性

 

属性名称

描述

android:isIndicator

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

android:numStars

显示的星型数量必须是一个整形值,像“100”。

android:rating

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

android:stepSize

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

 

<3>方法:

public   int      getNumStars()

返回显示星星总共的的数目。

 

public     float      getRating()

获取当前等级(满星星的数目)。

 

public    float      getStepSize()

得到RatingBar的步长。

 

public      boolean      isIndicator()

返回这RatingBar是否只是一个指示器(只是起指示作用,用户无法进行交互)。

 

 

public    synchronized         void      setMax(int max)

设置这个进度条的范围为0……max

 

public     void      setNumStars(int numStars)

设置星星的数目。

 

public      void      setRating(float rating)

设置等级(星星的填充数目)。

 

public         void      setStepSize(float stepSize)

设置RatingBar的步长。

 

<4>范例

 

package xiaosi.ratingbar;import android.app.Activity;import android.os.Bundle;import android.widget.RatingBar;public class RatingBarActivity extends Activity {    /** Called when the activity is first created. */	private RatingBar ratingbar = null;    @Override    public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.main);        ratingbar = (RatingBar)findViewById(R.id.ratingbar);        ratingbar.setOnRatingBarChangeListener(new RatingBarListener());    }        private class RatingBarListener implements RatingBar.OnRatingBarChangeListener{		public void onRatingChanged(RatingBar ratingBar, float rating,				boolean fromUser) {			System.out.println("等级:" + rating);			System.out.println("星星:" + ratingBar.getNumStars());		}    }}

 

main.xml

 

 

 

 

 

 

 

转载地址:http://jvdsi.baihongyu.com/

你可能感兴趣的文章
Linux select TCP并发服务器与客户端编程
查看>>
Linux系统编程——线程池
查看>>
Linux系统编程——线程池
查看>>
yfan.qiu linux硬链接与软链接
查看>>
Linux C++线程池实例
查看>>
shared_ptr简介以及常见问题
查看>>
c++11 你需要知道这些就够了
查看>>
c++11 你需要知道这些就够了
查看>>
shared_ptr的一些尴尬
查看>>
C++总结8——shared_ptr和weak_ptr智能指针
查看>>
c++写时拷贝1
查看>>
C++ 写时拷贝 2
查看>>
Linux网络编程---I/O复用模型之poll
查看>>
Java NIO详解
查看>>
单列模式-编写类ConfigManager读取属性文件
查看>>
java中float和double的区别
查看>>
Statement与PreparedStatement区别
查看>>
Tomcat配置数据源步骤以及使用JNDI
查看>>
before start of result set 是什么错误
查看>>
(正则表达式)表单验证
查看>>