shape可以定義下面四種類型的形狀:
rectangle-矩形(直角矩形、圓角矩形),默認的形狀
oval-橢圓形、圓形
line-線形(實線、虛線)
ring-環形、環形進度條
執行結果:
如果填色要填入漸層色的話,需要將solid標籤改成gradient標籤,用法如下:
執行結果:
oval和ring的漸層有三種類型(android:type):linear(線性)、radial(放射性)、sweep(掃描)
如果漸層效果為radial(放射性)的話,必須加上android:gradientRadius屬性(指定漸層的半徑)。
執行結果:
執行結果:
android:innerRadius 內環的半徑
android:thickness 環的厚度
android:useLevel 一般設為false,要不然環可能會無法顯示
執行結果:
rotate屬性:
android:fromDegrees:開始旋轉的角度位置
android:toDegrees:結束時轉到的角度位置
android:pivotX:旋轉起點的X軸座標位置,可以是數值、百分比、百分比p
android:pivotY:旋轉起點的Y軸座標位置,可以是數值、百分比、百分比p
2,在style.xml裡加上style樣式
3,在activity_main.xml裡加上progressBar標籤
執行結果:
執行結果:
參考資料:Keegan小钢
rectangle-矩形(直角矩形、圓角矩形),默認的形狀
oval-橢圓形、圓形
line-線形(實線、虛線)
ring-環形、環形進度條
rectangle
執行結果:
如果填色要填入漸層色的話,需要將solid標籤改成gradient標籤,用法如下:
執行結果:
oval
執行結果:oval和ring的漸層有三種類型(android:type):linear(線性)、radial(放射性)、sweep(掃描)
如果漸層效果為radial(放射性)的話,必須加上android:gradientRadius屬性(指定漸層的半徑)。
執行結果:
line
線的高度是透過stroke的android:width屬性設置,而size的android:height是定義整個形狀區域的高度,所以size的height必須大於stroke的width。執行結果:
ring
屬於ring的屬性:android:innerRadius 內環的半徑
android:thickness 環的厚度
android:useLevel 一般設為false,要不然環可能會無法顯示
執行結果:
將環設計成環狀進度條的樣式:
1,在shape標籤外再加上rotate標籤rotate屬性:
android:fromDegrees:開始旋轉的角度位置
android:toDegrees:結束時轉到的角度位置
android:pivotX:旋轉起點的X軸座標位置,可以是數值、百分比、百分比p
android:pivotY:旋轉起點的Y軸座標位置,可以是數值、百分比、百分比p
2,在style.xml裡加上style樣式
3,在activity_main.xml裡加上progressBar標籤
執行結果:
Shape加上陰影的方法
將selector標籤改成layer-list標籤,並在原本形狀的item標籤上面再加上一組item標籤,作為陰影的樣式
一定要設置陰影和物件的offset,要不然陰影和物件會重疊,會看不到效果。執行結果:
參考資料:Keegan小钢
留言
張貼留言