• Android seekbar使用


    本文主要是介绍android seekbar的使用。

    一、含义
    SeekBar是拖动条,是ProgressBar的一个子类,如:音乐播放、音量条、播放进度条等。
    效果图:
    在这里插入图片描述
    二、常用属性和方法

    属性名含义
    progress设置该进度条的最大值
    progressDrawable自定义drawable显示
    secondaryProgress定义二级进度值,值介于0到max。该进度在主进度和背景之间。比如用于网络播放视频时,二级进度用于表示缓冲进度,主进度用于表示播放进度。
    thumb设置进度条的滑块图片
    splitTrack滑块底部 背景样式 (false为透明 )
    三、基本用法
    Java代码里只要setXxx即可
    android:max="100" //滑动条的最大值
    android:progress="60" //滑动条的当前值
    android:secondaryProgress="70" //二级滑动条的进度
    android:thumb = "@mipmap/sb_icon" //滑块的drawable
    getMax() //返回这个进度条的范围的上限getProgress():返回进度
    getsecondaryProgress() //返回二级进度
    incrementProgressBy(int diff) //指定增加的进度
    isIndeterminate() //指示进度条是否在不确定模式下
    setIndeterminate(boolean indeterminate) //设置不确定模式下
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    SeekBar的事件SeekBar.OnSeekBarChangeListener,需重写:

    onProgressChanged:进度发生改变时会触发
    onStartTrackingTouch:按住SeekBar时会触发
    onStopTrackingTouch:放开SeekBar时触发
    
    • 1
    • 2
    • 3

    四、实例
    1、自定义滑块的大小
    res/drawable/testshape2.xml

    <?xml version="1.0" encoding="utf-8"?>
    <shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle">
    <size android:height="40dp"
    android:width="20dp"/>
    <solid android:color="#8003a9f4"/>
    </shape>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    2、定义进度条的样式,其中第一个item 是进度条背景,第二个是当前进度
    layer_list.xml

    <?xml version="1.0" encoding="utf-8"?>
    <layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:id="@android:id/background">
    <shape>
    <solid android:color="#808080" />
    </shape>
    </item>
    
    <item android:id="@android:id/progress">
    <clip>
    <shape>
    <solid android:color="#FF96E85D" />
    </shape>
    </clip>
    </item>
    </layer-list>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16

    3、主xml文件引用
    activity_main.xml

    <SeekBar
    style="@style/tallerBarStyle"
    android:layout_width="400dp"
    android:layout_height="100dp"
    android:maxHeight="15dp"
    android:minHeight="15dp"
    android:progressDrawable="@drawable/layer_list"
    android:thumb="@drawable/testshape2" />
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
  • 相关阅读:
    MATLAB BP神经网络 笔记整理
    Pandas时序数据Time Series
    【从零开始学习 SystemVerilog】11.2、SystemVerilog 断言—— Immediate Assertions(立即断言)
    NeuralProphet之七:NeuralProphet + Optuna
    【2022河南萌新联赛第(四)场:郑州轻工业大学】【部分思路题解+代码解析】
    Java笔记:多线程基础
    详解DLT直接线性变换算法及代码示例
    使用Docker运行Mysql并通过Docker指令管理Mysql
    【白帽子讲Web安全】第一章 我的安全世界观
    [python学习]--使用相对路径导入包
  • 原文地址:https://blog.csdn.net/qq_33782617/article/details/126820085