Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android系統教程 >> Android開發教程 >> Android自定義SeekBar控件學習

Android自定義SeekBar控件學習

編輯:Android開發教程

從sdk中可以得知,它是ProgressBar的擴展,它比進度條多了一個功能就是可拖動性,這樣用戶就可以控 制進度條,比如播放電影,用戶可以通過拖動SeekBar進行快進與快退.

要實現其拖動的控制, 就需要對事件進行監聽,Android系統提供了一個監聽接口SeekBar.OnSeekBarChangeListener,要實現其監聽 功能只要實現其接口即可。在SeekBar中我們需要監聽的主要有如下三個事件

數值的改變 (onProgressChanged).

開始拖動(onStartTrackingTouch).

停止拖動 (onStopTrackingTouch).

SeekBar的使用跟Button之類的基本沒什麼區別,下面先說下其屬性

android:max   設置值的大小 .  
android:thumb="@drawable/"   顯示的那個可拖動圖標,如果沒有設置該參數則為系統默認,如果自己需要重

新定義,則將自己需要的圖標存放在資源目錄 /res/drawable下,然後調用即可.  
android:thumbOffset   拖動圖標的偏量值,可以讓拖動圖標超過bar的長度.  
android:progress    設置seekbar當前的默認值,范圍0到max之間.  
android:secondaryProgress 用過的迅雷的都知道拖動圖標隨著當前的播放時間的走動而走動,同時我們也注

意到了也有個緩沖看到的進度條,這個屬性就是用來設置默認顯示的值為多少,范圍為0到max.  
android:progressDrawable 當我們不想使用系統默認的SeekBar時可以自己定義一個,這個資源文件就是用來

調用

我們自己定義的Seekbar圖標的一般是在drawable下建立一個.xml文件s用layer-list來組織這 些圖標.

下圖是一個自定義的SeekBar

實現SeekBar代碼:

<SeekBar     
        android:id="@+id/seek_bar" 
        android:layout_width="fill_parent" 
        android:layout_height="wrap_content" 
                android:progressDrawable="@drawable/myseekbar_drawable"
                android:thumb="@drawable/my_seek_thumb"   />

myseekbar_drawable文件

<?xml version="1.0" encoding="UTF-8"?>    
<layer-list    
  xmlns:android="http://schemas.android.com/apk/res/android">    
    <item     
        android:id="@android:id/background" 
        android:drawable="@drawable/seek_bg"   /><!--最下層圖片 實例中藍色部分-->    
    <item     
        android:id="@android:id/secondaryProgress" 
        android:drawable="@drawable/seek_pro"   /><!--顯示第二進度的那個 實例中綠色部分--

>    
    <item     
        android:id="@android:id/progress" 
        android:drawable="@drawable/seek_bar"   /><!--顯示當前進度的圖片就是該實例中上面白色

部分-->    
</layer-list>
  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved