Android学习笔记(24):进度条组件ProgressBar及其子类-阿里云开发者社区

开发者社区> 开发与运维> 正文

Android学习笔记(24):进度条组件ProgressBar及其子类

简介:

ProgressBar作为进度条组件使用,它还派生了SeekBar(拖动条)RatingBar(星级评分条)

 

ProgressBar支持的XML属性:

Attribute Name

Related Method

Description

style

 

设置ProgressBar指定风格

android:indeterminate

 

设置为true时,进度条不显示进度

android:indeterminateBehavior

 

indeterminate模式下,当进度条达到最大值时的动画处理行为:

 "repeat"|Animation.RESTART,动画将从头开始执行。 

"cycle" |Animation.REVERSE,动画将反向从头开始执行。

android:indeterminateDrawable

 

indeterminate模式下使用的Drawable对象。该对象如果是动画对象(继承自Animatable), 将会在onDraw方法中被启动动画。

android:indeterminateDuration

 

indeterminate模式下进度条的持续时间

android:indeterminateOnly

 

强制indeterminate模式

android:max

 

设置该进度条的最大值

android:maxHeight

 

设置ProgressBar的规格

android:maxWidth

 

android:minHeight

 

android:minWidth

 

android:progress

 

设置该进度条已完成进度值

android:progressDrawable

 

设置进度条轨道的Drawable对象

 

 

style属性支持的属性值:

@android:style/Widget.ProgressBar.Horizontal:水平进度条

@android:style/Widget.ProgressBar.Inverse:普通大小的环形进度条

@android:style/Widget.ProgressBar.Large:大环形进度条

@android:style/Widget.ProgressBar.Large.Inverse:大环形进度条

@android:style/Widget.ProgressBar.Small:小环形进度条

@android:style/Widget.ProgressBar.Small.Inverse:小环形进度条

 

progressDrawable属性可以设置为LayerDrawable对象,是完成进度和未完成进度显示不同的图像。LayerDrawable对象可以在XML文件中用<layer-list>元素配置。

 

对进度的操作有如下的方法:

setProgress(int):设置进度完成的百分比。

incrementProgressBy(int):设置进度增加或减少(正负)

 

 

另外Android中还有一种直接显示在窗口标题上的进度条,直接由Activity的方法启用:

requestWindowFeature()传入参数Window.FEATURE_INDETERMINATE_PROGRESS设置不显示进度的进度条,传入参数Window.FEATURE_PROGRESS设置显示进度的进度条。setProgressBarIndeterminateVisibility(boolean)setProgressBarVisibility(boolean)设置进度条的显示和隐藏。

 

拖动条SeekBar

通过滑块的位置可以得到相应的数值。

android:thumb:指定滑块的Drawable对象。

为了监听滑块位置的变化,需要为它绑定一个OnSeekBarChangeListener监听器。

 

星级评分条RatingBar

通过星级来表示进度。

 

RatingBar支持的XML属性:

Attribute Name

Related Method

Description

android:isIndicator

 

设置星级评分条是否允许用户改变

android:numStars

 

设置星级评分条总共有多少个星级

android:rating

 

设置默认的星级

android:stepSize

 

设置每次最少需要改变多少个星级

 

为了监听星级评分条的变化,需要为它绑定一个OnRatingBarChangeListener监听器。

版权声明:本文首发在云栖社区,遵循云栖社区版权声明:本文内容由互联网用户自发贡献,版权归用户作者所有,云栖社区不为本文内容承担相关法律责任。云栖社区已升级为阿里云开发者社区。如果您发现本文中有涉嫌抄袭的内容,欢迎发送邮件至:developer2020@service.aliyun.com 进行举报,并提供相关证据,一经查实,阿里云开发者社区将协助删除涉嫌侵权内容。

分享:
开发与运维
使用钉钉扫一扫加入圈子
+ 订阅

集结各类场景实战经验,助你开发运维畅行无忧

其他文章