面對無限的客製化需求

這篇就介紹如何自訂ProgressBar

 

1. 參考網頁http://blog.csdn.net/mad1989/article/details/38042875

00.png

 

2. 首先在drawable內按滑鼠右鍵, 創立一個File

01.png

 

3. 隨意取一個符合規則的檔名, 建立成.xml檔

02.png

 

4. 在檔案中用android:id的方式來建立自己的progerssbar

<item
android:id="@android:id/background"
android:drawable="@android:color/black"/>

是用來設定背景的顏色, 這邊可以指定顏色或圖形

<item android:id="@android:id/progress">
<clip>
<nine-patch android:src="@drawable/red" />
</clip>
</item>

是用來指定第一個進度條, 這邊要用.9圖來設定

<item android:id="@android:id/secondaryProgress">
<clip>
<nine-patch android:src="@drawable/green" />
</clip>
</item>

是用來指定第二個進度條, 這邊要用.9圖來設定

03.png

 

5. xml設定完成之後, 在目標的水平progressbar上

使用progressDrawable設定該檔案就可以了

<ProgressBar
android:id="@+id/progress_bar"
style="@android:style/Widget.ProgressBar.Horizontal"
android:progressDrawable="@drawable/horizontal_progressbar"
android:layout_width="match_parent"
android:layout_height="wrap_content" />

04.png

 

6. 而indeterminate mode的progressbar也是一樣先自訂一個xml檔

也可以指定動畫的方式來處理

這邊就直接用參考網頁的內容

<rotate xmlns:android="http://schemas.android.com/apk/res/android"
android:drawable="@drawable/red"
android:fromDegrees="0"
android:pivotX="50%"
android:pivotY="50%"
android:toDegrees="360" >
</rotate>

05.png

 

7. 最後在目標的progressbar上面

直接設定inderminateDrawable為xml檔就可以了

<ProgressBar
style="@android:style/Widget.ProgressBar.Large"
android:indeterminateDrawable="@drawable/cycle_progressbar"
android:layout_width="match_parent"
android:layout_height="wrap_content" />

06.png  

    RX1226 發表在 痞客邦 留言(0) 人氣()