Android 拖动条/滑动条控件、星级评分控件
ProgressBar有2个子控件:
SeekBar 拖动条控件
RatingBar 星级评分控件
1、拖动条控件

<SeekBar
android:layout_width="300dp"
android:layout_height="wrap_content"
android:id="@+id/seekBar"
android:min="0"
android:max="100"
android:progress="50" /> <!--滑块默认位置-->
也可以使用自定义的滑块:

<SeekBar
android:layout_width="300dp"
android:layout_height="100dp"
android:id="@+id/seekBar"
android:thumb="@drawable/a" <!--使用自定义的图片作为滑块-->
android:min="0"
android:max="100"
android:progress="50" />
说明:
并不会自动显示对应的刻度值。
滑块可以滑动,但没有事件响应。需要我们在.java文件中添加事件监听:
SeekBar mySeekBar=findViewById(R.id.seekBar);
mySeekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
/*
三个形参:
SeekBar seekBar 触发此事件/监听的Seekbar
int progress 当前刻度值。
boolean fromUser 是否为用户拖动产生的响应,这个不常用
虽然setText(int x)可以设置int型的值,但这个int指的是 R.string.app_name 这样的常量值,不是整型数字。不能setText(progress)这样用,要先转换为String。
*/ //滑动滑块时触发
@Override
public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
//判断改变的是否是指定的滑动条。预防当前Activity对应的xml布局中有多个滑动条,如果只有一个滑动条,则不必判断
if (seekBar.getId()==R.id.seekBar){ }
} //滑动开始时触发
@Override
public void onStartTrackingTouch(SeekBar seekBar) {
if (seekBar.getId()==R.id.seekBar){ }
} //滑动停止时触发
@Override
public void onStopTrackingTouch(SeekBar seekBar) {
if (seekBar.getId()==R.id.seekBar){ }
}
});
}
滑动滑块一次触发的事件:
最先开始时触发 onStartTrackingTouch() ,滑动过程中一直触发 onProgressChanged(),最后停止时触发 onStopTrackingTouch()。
就是说滑动过程中会不停地触发 onProgressChanged() 。
2、星级评分控件

<RatingBar
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
总共默认5颗星,初始默认选择0颗星,默认可修改,默认步长为0.5,即可以点亮半颗星。也可手动设置:
<RatingBar
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/ratingBar"
android:isIndicator="true" <!--是否可修改,true是不可修改,false是可修改,默认为fasle-->
android:numStars="7" <!--总星数-->
android:rating="5" <!--初始默认星数-->
android:stepSize="1" /> <!--步长-->
有时候只是向用户展示评分,并不需要用户评分,比如排行旁的xx指数,这时就需要设置 android:isIndicator="true" 不可修改。
默认为false,可修改。
在.java文件中获取已点亮的星数:
RatingBar ratingBar=findViewById(R.id.ratingBar);
//获取已点的星数,因为步长可以为小数,所以获取到的是float
float rates=ratingBar.getRating();
在Android中,几乎所有控件都提供了setXxx()、getXxx()方法供我们在.java文件中操作控件的属性。
Android 拖动条/滑动条控件、星级评分控件的更多相关文章
- UWP开发---DIY星级评分控件
一,需求来源 在开发韩剧TV UWP过程中,遇到了星级评分的控件问题,在安卓和html中很容易用现有的轮子实现星级评分,搜索了一下目前UWP还未有相关文章,在WPF的一篇文章中使用Photo shop ...
- Android自定义Seekbar滑动条,Pop提示跟随滑动按钮一起滑动
由于项目需要做出此效果,自定义写了一个. 效果图 思路: 原始的seekbar只有滑动条并没有下方的提示文字,所以我们必须要继承Seekbar重写这个控件. 代码: 在values文件夹下新建attr ...
- 【Android】5.8 滑动条(SeekBar)
分类:C#.Android.VS2015: 创建日期:2016-02-07 一.简介 滑动条也叫拖动条(用户可拖动改变滑动条的值),比如可让用户调节音量大小.调节屏幕亮度.调节歌曲或视频当前播放的位置 ...
- Android星星评分控件RatingBar的使用
在Android的开发中,有一个叫做评分控件RatingBar,我们可以使用该控件做等级划分.评分等作用,星星形状显示,也可以半星级别,我们来看一下评分控件如何使用. 布局文件中定义控件以及属性,这里 ...
- OpenCV——图像的载入、显示、输出到文件和滑动条、鼠标操作
图像的载入.显示.输出到文件和滑动条 滑动条 示例: 鼠标操作
- iOS- 非整星的评分控件(支持小数)
概述 订单评论里实现星级评分控件: 简单整星评价与非整星的精评价. 详细 代码下载:http://www.demodashi.com/demo/10711.html 现在很多应用都有评分功能. 有了订 ...
- Android View 之进度条+拖动条+星级评论条....
PS:将来的你会感谢现在奋斗的自己.... 学习内容: 1.进度条 2.拖动条 3.星级评论条 1.进度条... 进图条这东西想必大家是很熟悉的...为了使用户不会觉得应用程序死掉了,因此 ...
- VC++ 中滑动条(slider控件)使用 [转+补充]
滑动控件slider是Windows中最常用的控件之一.一般而言它是由一个滑动条,一个滑块和可选的刻度组成,用户可以通过移动滑块在相应的控件中显示对应的值.通常,在滑动控件附近一定有标签控件或编辑框控 ...
- Android GridView 滑动条设置一直显示状态
模拟GridView控件: <GridView android:id="@+id/picture_grid" android:layout_width="match ...
随机推荐
- 9.python3实用编程技巧进阶(四)
4.1.如何读写csv数据 爬取豆瓣top250书籍 import requests import json import csv from bs4 import BeautifulSoup book ...
- RAID10(5块硬盘)的简介和创建
一. RAID10简介 (1)兼具速度和安全性,但成本很高. (2)继承了RAID0的快速与RAID1的安全,RAID1在这里提供了冗余备份的阵列,而RAID0则负责数据的读写阵列.因这 ...
- elementui-如何同时获取多选框的label和value
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <!-- impor ...
- centos7虚拟机端口命令
cat /etc/redhat-release # 查看centos 版本 Centos7端口常见命令 虚拟机新开了5005端口,系统内部是显示开了的,但是外部不能访问端口. 一些需要用到的命令: ...
- cookie:
Django Django处理一个请求的流程 在浏览器的地址栏中输入地址,回车,发了一个GET请求 wsgi模块接收了请求,将请求的相关信息封装成request对象 根据地址找到对应函数 执行函数获取 ...
- Log日志级别从高到低排序 ERROR、WARN、INFO、DEBUG
Log4j建议只使用四个级别,优先级从高到低分别是 ERROR.WARN.INFO.DEBUG.通过在这里定义的级别,您可以控制到应用程序中相应级别的日志信息的开关.比如在这里定义了INFO级别,则应 ...
- luoguP4770 [NOI2018]你的名字
题意 不妨先考虑\(l=1,r=|S|\)的情况: 这时我们要求的其实是\(S,T\)的本质不同的公共子串数量. 首先对\(S\)建一个后缀自动机,同时对于每个\(T\),我们也建一个自动机. 根据后 ...
- Paper | Feedback Networks
目录 读后总结 动机 故事 ConvLSTM图像分类网络 损失函数 与Episodic Curriculum Learning的结合 实验方法 发表在2017年CVPR. 读后总结 这篇论文旨在说明: ...
- CSP-J&S2019第二轮游记认证
Day 0 我毕竟不是竞赛省,在黑龙江这个弱省任何初中都没有竞赛生的----在初中,文化课第一----永远如此. 因而,我并不能翘掉周五的文化课来复习或是提前前往省城参加下午2:00~6:00的试机. ...
- powersploit使用实例
一.AntivirusBypass(绕过杀毒) Find-AVSignature 发现杀软的签名 1.先在靶机(windows 2008)上远程加载位于win7的Invoke-Shellcode.p ...