方法
- 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" />