drawable.xmlandroid
<?xml version="1.0" encoding="utf-8"?> <rotate xmlns:android="http://schemas.android.com/apk/res/android" android:fromDegrees="0.0" android:pivotX="50.0%" android:pivotY="50.0%" android:toDegrees="360.0" > <shape android:innerRadiusRatio="3.0" android:shape="ring" android:thicknessRatio="8.0" android:useLevel="false" > <gradient android:centerColor="#ffffb0cc" android:centerY="0.5" android:endColor="#ffffffff" android:startColor="#ffff6699" android:type="sweep" android:useLevel="false" /> </shape> </rotate>
main.xmlweb
<ProgressBar android:id="@+id/progressbar" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerInParent="true" android:focusable="false" android:indeterminateDrawable="@drawable/myprogressdrawable" />
android:shapespa
關鍵屬性,它定義了形狀的類型,有效值以下:code
值orm |
說明xml |
rectangle對象 |
在View對象中填充一個矩形。這是默認的形狀。utf-8 |
ovalci |
適合View對象大小的橢圓形。資源 |
line |
貫穿View對象寬度的一個條水平線。這個形狀須要用<stroke>元素來定義線的寬度。 |
ring |
一個圓環 |
下列屬性只在android:shape=」ring」時使用:
android:innerRadiux
尺寸值,它用尺寸值或尺寸資源指定圓環內部的半徑(指中間的圓孔的半徑)。
android:innerRadiusRatio
浮點值,它用圓環寬度的比率來表示內部圓環的半徑。例如,若是android:innerRadiusRatio=」5」,那麼內部半徑就等於圓環的寬度除以5。這個值會被android:innerRadius的值覆蓋。默認是9。
android:thickness
尺寸值,它用一個尺寸值或尺寸資源來定義圓環的厚度。
android:thicknessRatio
浮點值。它用圓環寬度的比率來表示圓環的厚度。例如,若是android:thicknessRatio=」2」,那麼厚度就等於圓環的寬度除以2。這個值會被android:innerRadius覆蓋。默認值是3。
android:useLevel
布爾值,若是這個形狀要用於LevelListDrawable對象,那麼就設置爲true。一般應該設置爲false或者讓形狀不可見。
<corners>
給幾何形狀建立一個圓角,它只應用與矩形。
屬性(ATTRIBUTES):
android:radius
尺寸值,用尺寸值或尺寸資源(dimension resource)定義全部圓角的半徑,它會被下列屬性定義的每一個角的值所覆蓋。
android:topLeftRadius
尺寸值,它用尺寸值或尺寸資源定義左上角的圓角半徑。
android:topRightRadius
尺寸值,它用尺寸值或尺寸資源定義右上角的圓角半徑。
android:bottomLeftRadius
尺寸值,它用尺寸值或尺寸資源定義左下角的圓角半徑。
android:bottomRightRadius
尺寸值,它用尺寸值或尺寸資源定義右下角的圓角半徑。
注意:最初必須給每一個角提供一個比1大的圓角半徑,不然角不會被圓化。若是要想讓角沒有圓弧,一種工做方式是使用android:radius屬性來設置默認的大於1的圓角半徑,而後對於不想要圓弧的角,設置對應的屬性爲0dp,這樣這個角就不會有圓弧了。
<gradient>
爲幾何形狀指定漸變色。
屬性(ATTRIBUTES):
android:angle
整數值,以度爲單位,指定漸變的角度。從左到右是0度,從下到上是90度。它必須是45的倍數,默認值是0.
android:centerX
浮點數,它指定了漸變中心的X點的相對位置(0-1.0)
android:centerY
浮點數,它指定了漸變中心的Y點的相對位置(0-1.0)
android:centerColor
顏色值。它指定了開始和結束顏色之間的可選顏色,用十六進制的顏色值或顏色資源來表示。
android:endColor
顏色值。它指定了漸變結束時的顏色,用十六進制的顏色值或顏色資源來表示。
android:gradientRadius
浮點值,它指定了漸變的半徑,只有在android:type=」radial」時才使用這個設置。
android:startColor
顏色值,它指定了漸變開始時的顏色,用十六進制的顏色值或顏色資源來表示。
android:type
關鍵設置,它指定了要使用的漸變模式的類型,下表是有效值:
值 |
說明 |
linear |
線性漸變,這是默認設置 |
radial |
放射性漸變,以開始色爲中心。 |
sweep |
掃描線式的漸變。 |
android:useLevel
布爾值,若是要使用LevelListDrawable對象,就要設置爲true。
<padding>
它定義了與包含形狀的View元素相適應的邊距(這個邊距是View對象內容的位置,而不是形狀的位置)。
屬性(ATTRIBUTES):
android:left
尺寸值,它用尺寸值或尺寸資源定義了左邊距。
android:top
尺寸值,它用尺寸值或尺寸資源定義了上邊距。
android:right
尺寸值,它用尺寸值或尺寸資源定義了右邊距。
android:bottom
尺寸值,它用尺寸值或尺寸資源定義了下邊距。
<size>
它定義了幾何形狀的大小。
屬性(ATTRIBUTES):
android:height
尺寸值,它用尺寸值或尺寸資源定義了幾何形狀的高度。
android:width
尺寸值,它用尺寸值或尺寸資源定義了幾何形狀的寬度。
注意:默認狀況下,幾何形狀定義的尺寸會被縮放到與它的容器相適應的尺寸。在ImageView對象中使用幾何形狀時,可以經過把android:scaleType屬性設置爲center來限制縮放。
<solid>
定義填充幾何形狀的實體顏色。
屬性(ATTRIBUTES):
android:color
顏色值。它指定應用與幾何形狀的顏色值。用十六進制的顏色值或顏色資源來表示。
<stroke>
給形狀定義一個虛線。
屬性(ATTRIBUTES):
android:width
尺寸值。它指定了線的厚度,用尺寸值或尺寸資源來表示。
android:color
顏色值。它指定了線的顏色,用十六進制的顏色值或顏色資源來表示。
android:dashGap
尺寸值,它定義了破折線之間的距離,用尺寸值或尺寸資源來表示。只有設置了android:dashWidth屬性時,這個屬性纔有效。
android:dashWidth
尺寸值,它定義了每一個破折線的尺寸,用尺寸值或尺寸資源來表示。只有設置了android:dashGap屬性時,這個屬性纔有效。