自定義ProgressBar


應用場景:自定義帶動畫進度條

效果圖:

1.xml文件中添加ProgressBar控件

代碼如下:

<ProgressBar android:id="@+id/customProgressBar" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="15.0dip" android:layout_marginBottom="5.0dip" android:layout_gravity="center_horizontal" style="?android:attr/progressBarStyle" android:indeterminate="false" android:indeterminateDrawable="@anim/loading" />

注:

1)style="?android:attr/progressBarStyle"//設置ProgressBar為默認風格的進度條

ProgressBar還有其它幾種風格:

style="?android:attr/ progressBarStyleSmall "//設置ProgressBar為小圓形進度條 

style="?android:attr/progressBarStyleLarge" //設置ProgressBar為大圓形進度條 

style="?android:attr/progressBarStyleHorizontal" //設置ProgressBar為水平進度條 

2)android:indeterminate="false"//進度條確定

進度條分不確定(indeterminate=true)和確定(indeterminate=false)2種,默認值是不確定(indeterminate=true)Android進度條。

3)android:indeterminateDrawable="@anim/loading"//這個屬性指向的是你自定義的樣式

2.res文件夾下創建anim文件夾,並在anim文件夾下創建loading.xml文件

代碼如下:

<?xml version="1.0" encoding="UTF-8"?>
<animation-list xmlns:android="http://schemas.android.com/apk/res/android" android:oneshot="false">
    <item android:duration="100" android:drawable="@drawable/loading_01" />
    <item android:duration="100" android:drawable="@drawable/loading_02" />
    <item android:duration="100" android:drawable="@drawable/loading_03" />
    <item android:duration="100" android:drawable="@drawable/loading_04" />
    <item android:duration="100" android:drawable="@drawable/loading_05" />
    <item android:duration="100" android:drawable="@drawable/loading_06" />
    <item android:duration="100" android:drawable="@drawable/loading_07" />
</animation-list>

注:

1)<animation-list>為動畫的總標簽,這里面放着的是幀動畫<item>標簽,也就是說若干<item>標簽的幀組合在一起就是幀動畫了。

2)android:oneshot="false"表示動畫循環播放,如果設置true 則表示動畫只播發一次。默認值為false。

3)android:duration="100" 表示這一幀持續100毫秒,可以根據這個值來調節動畫播放的速度。

4)<item>標簽中記錄着每一幀的信息android:drawable="@drawable/loading_01"表示這一幀用的圖片為"loading_01",以此類推。 

3.最后將圖片放在res文件夾下的drawable文件夾下。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM