Android組件(二)-水平ProgressBar

一、ProgressBar 水平

1、drawable樣式(progressbar_color.xml):
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >

    <!-- 背景  gradient是漸變,corners定義的是圓角 -->
    <item android:id="@android:id/background">
        <shape>
            <corners android:radius="10dp" />

            <solid android:color="#8fffffff" />
        </shape>
    </item>
    <!-- 第二條進度條顏色 -->
    <!--<item android:id="@android:id/secondaryProgress">
        <clip>
            <shape>
                <corners android:radius="10dip" />

                <gradient
                    android:angle="90.0"
                    android:centerColor="#ac6079"
                    android:centerY="0.45"
                    android:endColor="#6c213a"
                    android:startColor="#e71a5e" />
            </shape>
        </clip>
    </item>-->
    <!-- 進度條 -->
    <item android:id="@android:id/progress">
        <clip>
            <shape>
                <corners android:radius="10dip" />

                <solid android:color="#ffffffff" />
            </shape>
        </clip>
    </item>

</layer-list>

2、xml定義ProgressBar:
<ProgressBar 
        android:id="@+id/my_progress"
        android:layout_width="match_parent"
        android:layout_height="12dp"
        android:max="100"<!--進度條的最大值-->
        android:progress="40"<span style="font-family: Arial, Helvetica, sans-serif;"><!--當前進度條值 --></span>
        android:secondaryProgress="70"<span style="font-family: Arial, Helvetica, sans-serif;"><!--第二層進度條值 --></span>
        style="?android:attr/progressBarStyleHorizontal"<span style="font-family: Arial, Helvetica, sans-serif;"><!--水平進度條 --></span>
        android:progressDrawable="@drawable/progressbar_color"/>

3、重要方法:

    getMax():返回這個進度條的範圍的上限

               setProgress():設置進度條值

    getProgress():返回進度

    getSecondaryProgress():返回次要進度

    incrementProgressBy(int diff):指定增加的進度

    isIndeterminate():指示進度條是否在不確定模式下

    setIndeterminate(boolean indeterminate):設置不確定模式下

    setVisibility(int v):設置該進度條是否可視

    getMax():返回這個進度條的範圍的上限  

4、重要事件

    onSizeChanged(int w, int h, int oldw, int oldh):當進度值改變時引發此事件


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章