Android xml gradient注意事項

gradient:漸變
android:startColor和android:endColor分別爲起始和結束顏色,android:angle是漸變角度,必須爲45的整數倍。
另外漸變默認的模式爲android:type=“linear”,即線性漸變,可以指定漸變爲徑向漸變,android:type=“radial”,徑向漸變需要指定半徑android:gradientRadius=“50”。

android:angle網上有各種說法,這裏,我說說自己的實驗結果,漸變的時候,最原始的,即android:angle=“0”時,是從左到右,按照開始顏色到結束顏色來渲染的,android:angle=“90”是從下到上來渲染的,android:angle=“270”是從上到下來渲染的,android:angle=“180”是從右到左來渲染的,android:angle=“360”和android:angle=“0”是一樣的,所以這裏應該是這樣的,渲染時按照最原始的渲染色板(把控件內部看作一塊可以繞中心旋轉的板子)圍繞控件中心來逆時針旋轉相應的度數,即android:angle裏面的值就是所需要旋轉的角度,只是這個旋轉角度必須是45的整數倍

stroke:描邊
android:width=“2dp” 描邊的寬度,android:color 描邊的顏色。
我們還可以把描邊弄成虛線的形式,設置方式爲:
android:dashWidth=“5dp”
android:dashGap=“3dp”
其中android:dashWidth表示’-'這樣一個橫線的寬度,android:dashGap表示之間隔開的距離。

corners:圓角
android:radius爲角的弧度,值越大角越圓。
我們還可以把四個角設定成不同的角度,方法爲:
<corners
android:topRightRadius=“20dp” 右上角
android:bottomLeftRadius=“20dp” 右下角
android:topLeftRadius=“1dp” 左上角
android:bottomRightRadius=“0dp” 左下角
/>
這裏有個地方需要注意,bottomLeftRadius是右下角,而不是左下角,這個不要記錯了。
還有網上看到有人說設置成0dp無效,不過我在測試中發現是可以的,我用的是2.2,可能修復了這個問題吧,如果無效的話那就只能設成1dp了。

padding:間隔
中間文字距離邊框的間隔。

發佈了249 篇原創文章 · 獲贊 354 · 訪問量 54萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章