ProgressBar、SeekBar、RatingBar

本文详细介绍了Android开发中常用的三种UI控件:ProgressBar进度条、SeekBar拖动条和RatingBar星级评分的功能及使用方法,包括如何配置样式、设置属性及添加监听器。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.ProgressBar进度条

Android支持几种风格的进度条,通过style属性可以为ProgressBar指定风格。

  • a)配置ProgressBar,为其设置style属性:
    @android:style/Widget.ProgressBar.Horizontal水平进度条
    @android:style/Widget.ProgressBar 中号圆形进度条
    @android:style/Widget.ProgressBar.Inverse 中号圆形进度条
    @android:style/Widget.ProgressBar.Small 小号圆形进度条
    @android:style/Widget.ProgressBar.Small.Inverse小号圆形进度条
    @android:style/Widget.ProgressBar.Large 大号圆形进度条
    @android:style/Widget.ProgressBar.Large.Inverse大号圆形进度条

  • b)水平进度条可以设置max、progress、secondaryProgress等属性
    max代表进度条的最大进度
    progress代表当前进度值
    secondaryProgress代表第二进度值,相当缓存值
    比如在看网络视频时候都会有一个缓存的进度条
    以及还要一个播放的进度,在这里缓存的进度就可以是android:secondaryProgress,而播放进度就是android:progress,有了secondProgress,可以很方便定制ProgressBar。

  • c)设置progressDrawable属性,使用layer-list图片资源, 用来自定义水平进度条的样式。

  • 注: setProgress(int):设置水平进度条的值
    getMax():获取水平进度条的最大值
    incrementProgressBy(int),设置进度条的进度增加或减少,当参数为正数时进度增加,为负数时进度减少。

2.SeekBar拖动条

拖动条和进度条非常相似,只是进度条采用颜色填充了来表明进度完成的程度,而拖动条通过滑块的位置来标识数值,拖动条允许用户拖动滑块改变值,因此拖动条通常用于对系统的某种数值进行调节,比如调节音量等。
  • thumb 代表使用自定义图片显示拖动块
  • style=”@android:style/Widget.SeekBar”这是之前的样式, android每个版本都有自己的样式,默认情况下就显示当前版本的样式。
    属性:max,progress,progressDrawable
  • 为seekbar添加SeekBar.OnSeekBarChangeListener监听器,监控其进度值变化.

    • 监听器中的第三个参数:

      • fromUser用来告诉函数当前进度值的改变是否是由用户执行的

        • //在拖动结束(手离开屏幕)的时候会回调
          @Override
          public void onStopTrackingTouch(SeekBar seekBar) {}
        • //在开始拖动的时候会回调
          @Override
          public void onStartTrackingTouch(SeekBar seekBar) {}

        • //在进度发生改变的时候会连续回调
          public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {}

3.RatingBar星级评分

 相关属性:
android:numStarts设置星级评分总共有多个星级
android:rating设置星级评分条默认的星级
android:stepSize设置每次至少需要改变多少个星级
为Ratingbar添加RatingBar.setOnRatingBarChangeListener监听器。监控其分数的变化
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值