本文主要是介绍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"
getMax()
getsecondaryProgress()
incrementProgressBy(int diff)
isIndeterminate()
setIndeterminate(boolean indeterminate)
SeekBar的事件SeekBar.OnSeekBarChangeListener,需重写:
onProgressChanged:进度发生改变时会触发
onStartTrackingTouch:按住SeekBar时会触发
onStopTrackingTouch:放开SeekBar时触发
四、实例 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>
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>
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" />
|