Android 控件之RatingBar评分条
RatingBar是Adnroid中的评分条。效果挺得的
源码下载
一、概述
RatingBar是SeekBar和ProgressBar的扩展,用星星来评级。使用的默认大小RatingBar时,用户可以触摸/拖动或使用键来设置评分,它有俩种样式(大、小),其中大的只适合指示,不适合于用户交互。
二、实例
1.布局文件
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:paddingLeft="10dip"
android:layout_width="match_parent"
android:layout_height="match_parent">
<RatingBar android:id="@+id/ratingbar1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:numStars="3"
android:rating="2.5" />
<RatingBar android:id="@+id/ratingbar2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:numStars="5"
android:rating="2.25" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dip">
<TextView android:id="@+id/rating"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<RatingBar android:id="@+id/small_ratingbar"
style="?android:attr/ratingBarStyleSmall"
android:layout_marginLeft="5dip"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical" />
</LinearLayout>
<RatingBar android:id="@+id/indicator_ratingbar"
style="?android:attr/ratingBarStyleIndicator"
android:layout_marginLeft="5dip"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical" />
</LinearLayout>
2.Java代码
package wjq.WidgetDemo;
import android.app.Activity;
import android.os.Bundle;
import android.widget.RatingBar;
import android.widget.TextView;
import android.widget.RatingBar.OnRatingBarChangeListener;
public class RatingBarDemo extends Activity implements
OnRatingBarChangeListener {
private RatingBar mSmallRatingBar;
private RatingBar mIndicatorRatingBar;
private TextView mRatingText;
/*
* (non-Javadoc)
*
* @see android.app.Activity#onCreate(android.os.Bundle)
*/
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.ratingbarpage);
mRatingText = (TextView) findViewById(R.id.rating);
// We copy the most recently changed rating on to these indicator-only
// rating bars
mIndicatorRatingBar = (RatingBar) findViewById(R.id.indicator_ratingbar);
mSmallRatingBar = (RatingBar) findViewById(R.id.small_ratingbar);
// The different rating bars in the layout. Assign the listener to us.
((RatingBar)findViewById(R.id.ratingbar1)).setOnRatingBarChangeListener(this);
((RatingBar)findViewById(R.id.ratingbar2)).setOnRatingBarChangeListener(this);
}
@Override
public void onRatingChanged(RatingBar ratingBar, float rating,
boolean fromUser) {
final int numStars = ratingBar.getNumStars();
mRatingText.setText(
" 受欢迎度" + rating + "/" + numStars);
// Since this rating bar is updated to reflect any of the other rating
// bars, we should update it to the current values.
if (mIndicatorRatingBar.getNumStars() != numStars) {
mIndicatorRatingBar.setNumStars(numStars);
mSmallRatingBar.setNumStars(numStars);
}
if (mIndicatorRatingBar.getRating() != rating) {
mIndicatorRatingBar.setRating(rating);
mSmallRatingBar.setRating(rating);
}
final float ratingBarStepSize = ratingBar.getStepSize();
if (mIndicatorRatingBar.getStepSize() != ratingBarStepSize) {
mIndicatorRatingBar.setStepSize(ratingBarStepSize);
mSmallRatingBar.setStepSize(ratingBarStepSize);
}
}
}
Android 控件之RatingBar评分条相关推荐
- Android 控件之RatingBar评分条(五星)自定义样式
RatingBar的自定义效果 有时候android系统提供给我们的ratingbar效果并不达到我们的要求,这个时候就可以自定义自己喜欢的ratingbar. 从上面的效果可以看出,自定义这样的组件 ...
- Android控件点击圆形阴影反馈解决方案
Android控件点击圆形阴影反馈解决方案 愿景 对于手机App而言,没有反馈效果的按钮使用体验是不舒服的.最近在深入学习Material Design,对其中的ripple效果比较感兴趣.我想着尝试 ...
- 【079】用代码来创建 Android 控件
一般来说我们在创建控件的时候都是在 XML 文件中完成的, 实施起来还是蛮方便的, 而且修改起来也可以很快的看见效果, 但是有一个很大的劣势就是没办法动态的创建控件, 举个例子, 例如我从数据库中取出 ...
- Android 控件架构及View、ViewGroup的测量
附录:示例代码地址 控件在Android开发的过程中是必不可少的,无论是我们在使用系统控件还是自定义的控件.下面我们将讲解一下Android的控件架构,以及如何实现自定义控件. 1.Android控件 ...
- Android控件美化Shape
Android控件美化Shape你会用吗? -- 未审核 编辑文档 如果你对Android系统自带的UI控件感觉不够满意,可以尝试下自定义控件,我们就以Button为例,很早以前Android1 ...
- android控件属性
android控件属性 控件属性: android属性 Android功能强大,界面华丽,但是众多的布局属性就害苦了开发者,下面这篇文章结合了网上不少资料, 第一类:属性值为true或false an ...
- Android控件系列之RadioButtonRadioGroup
2019独角兽企业重金招聘Python工程师标准>>> 学习目的: 1.掌握在Android中如何建立RadioGroup和RadioButton 2.掌握RadioGroup的常用 ...
- 最简单也最难——如何获取到Android控件的高度,获取android控件
最简单也最难--如何获取到Android控件的高度,获取android控件 问题 如何获取一个控件的长和高,相信很多朋友第一眼看见这个问题都会觉得很简单,直接在onCreate里面调用getWidth ...
- 【Android】关于Android控件EditText的属性InputType的一些经验
关于Android控件EditText的属性InputType的一些经验 来源:http://blog.163.com/inflexible_simple/blog/static/16769468 ...
最新文章
- 服务器显示内存已超标,服务器显示内存已超标
- python判断是不是文件夹_Python判断文件和文件夹是否存在的方法
- 两个排序数组的中位数
- [CentOS Python系列] 三.阿里云MySQL数据库开启配置及SQL语句基础知识
- ^_-诚征BLOG友情连接
- ajax上送src,使用script的src实现跨域和类似ajax效果
- python中读取文本文件_利用Python读取文本文件?
- 怎么让电脑运行速度变快_加快电脑运行速度的6个秘笈,系统安装,电脑维修必备技巧...
- ztree隐藏指定节点后面的(重命名和删除)图标
- oracle10g配置tns,连接Oracle 10g时ORA-12514: TNS: 监听进程不能解析在连接描述符中给出的SID...
- Unity实现简单卡牌游戏框架
- 锂电池UN38.3测试项目介绍
- iOS Mac安装ipa文件的几种方法
- 微信小程序码无法解析到scene参数问题
- python web游戏实例_Python实现小黑屋游戏的完整实例
- CrowdPose: Efficient Crowded Scenes Pose Estimation and A New Benchmark
- linux常用运维shell,常用的shell命令,持续更新 | linux运维小站–linux系统架构_服务器运维_Linux运维工程师工作手札...
- 鸿蒙系统安装苹果电脑,好消息!华为鸿蒙OS系统,解决了苹果、安卓系统的一大难题...
- WLAN与WiFi各是什么意思有什么区别
- Thinkpad w530 换内存视频教程
热门文章
- 正几边形可以实现无缝拼接?
- 中文字符匹配java_java正则匹配HTML中a标签里的中文字符示例
- wemosD1_WIFI模块 与 arduino
- matlab vision工具箱使用手册,matlab-Computer Vision System ToolBox的系统对象使用
- linux jetty 安装目录结构,Linux下Jetty 9安装部署
- Hashcode 的作用
- Java 泛形通配符 ?
- mysql截取字符串中的部分内容_Mysql字符串截取及获取指定字符串中的数据
- 如何避免重复请求/并发请求?这样处理才足够优雅
- 推荐一款免费国产远程办公神器ToDesk,TeamViewer完美替代品