方法
- setProgress(int value) 设置滑块的位置
- setMax(int value) 设置进度条的最大长度
- setOnSeekBarChangeListener(OnSeekBarCHangeListener l) 设置SeekBar的进度改变事件
属性
- android:secondaryProgress[integer] 设置第二进度,通常用做显示视频等得缓冲效果
- android:thumb[drawable]设置滑块的图样
- android:progressDrawable[drawable]设置进度条的图样
- android:thumbOffset="0dip" 即可实现thumb滑块不被覆盖
事件监听
通过设置事件监听器setOnSeekBarChangeListener来获取SeekBar的当前状态,通常要监听以下3个事件
1.public voidonProgressChanged(SeekBar seekBae,int progress,boolean fromUser); 用于监听SeekBar进度值的改变
2.public voidonStartTrackingTouch(SeekBar seekBar);用于监听SeekBar开始拖动
3.public voidonStopTrackingTouch(SeekBar seekBar);用于监听SeekBar停止拖动
自定义图片的SeekBar代码如下:
第一个drawable下xml资源代码:设置进度条的属性
<?xmlversion="1.0" encoding="utf-8"?>
<layer-listxmlns:android="http://schemas.android.com/apk/res/android" >
<!--滑竿背景-->
<item
android:id="@android:id/background"
android:drawable="@drawable/total" />
<!--第二进度条式样 -->
<item
android:id="@android:id/secondaryProgress"
android:drawable="@drawable/part2"/>
<!--进度条样式 -->
<item
android:id="@android:id/progress"
android:drawable="@drawable/part" />
</layer-list>
第二个drawable下xml资源代码:设置滑块的属性
<?xmlversion="1.0" encoding="utf-8"?>
<selectorxmlns:android="http://schemas.android.com/apk/res/android">
<!--滑块未压下时 -->
<item
android:state_pressed="false"
android:drawable="@drawable/a" />
<!--滑块压下时 -->
<item
android:state_pressed="true"
android:drawable="@drawable/ic_launcher" />
</selector>
SeekBar布局代码:
<SeekBar
android:id="@+id/seek_bar"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:minHeight="5dip"
android:maxHeight="5dip"
android:secondaryProgress="50"
android:progressDrawable="@drawable/seek_img"
android:thumb="@drawable/thumb" />