我有一個來自XML資源的drawable,我想使用該drawable但動態設置漸變顏色。到目前爲止,我有這樣的事情:Android - 動態設置drawable的漸變
<?xml version="1.0" encoding="utf-8"?>
<shape
xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<corners
android:radius="3dip">
</corners>
<gradient
android:angle="90"
android:type="linear"
android:startColor="#FFFFFFFF"
android:centerColor="#FFFF0000"
android:endColor="#FFFF0000">
</gradient>
</shape>
現在我想通,我將能夠通過獲取繪製在運行時,鑄造它作爲一個GradientDrawable,使用方法來設置顏色,使顏色動態。然而,GradientDrawable沒有這樣的方法,只能在構造函數中設置顏色。我覺得很奇怪,因爲梯度的其他方面都是可以設置的。有沒有比重寫onDraw()和自己做漸變更簡單的方法?我試圖使用的一些課程記錄很差..
注意GradientDrawable現在支持setColors:http://developer.android.com/reference/android/graphics/drawable/GradientDrawable.html#setColors(INT []) 作爲API級的16 – 2013-03-12 18:15:26
爲真棒感謝擡頭! – 2013-03-13 12:02:26