2012-01-27 19 views
0

我想選擇的顏色的圖標設置爲一個偏好:如何使一個可繪製對象與我選擇的顏色代碼

Preference prf = (Preference) findPreference("SelectColorPref"); 

prf.setIcon(Drawbale icon);

爲此,我需要選擇顏色的物體Drawable

這是可能使在java代碼Drawable圖標?請指導我..

問候,

/////////////////////////////////// ////////////////////////

以下阿萊克斯G公司的概念後,它解決的:

Preference TextClrPref = (Preference) findPreference("text_color_preference"); 

Bitmap bm = Bitmap.createBitmap(30, 30, Bitmap.Config.ARGB_8888); 
Canvas cnv = new Canvas(bm); 
int red = 0xffff0000; 
cnv.drawColor(red); 
Drawable drawable = new BitmapDrawable(bm); 

TextClrPref .setIcon(drawable); 

回答

2

你應該能夠創建使用類似於此的純色Drawable:

Bitmap bm = BitmapFactory.createBitmap(50, 50, Bitmap.Config.ARGB_8888); 
Canvas cnv = new Canvas(bm); 
int red = 0xff0000; 
cnv.drawColor(red); 
Drawable drawable = new BitmapDrawable(bm); 

這將創建一個包含50x50像素紅色正方形的Drawable。

(請注意,我還沒有測試此代碼,但我用我的代碼類似的東西。)

0

的使用最簡單的方法ShapeDrawable

ShapeDrawable sdrawable = new ShapeDrawable(new RectShape()); 
sdrawable.paint.Color = color.RED; 
sdrawable.setIntrinsicWidth(10); 
sdrawable.setIntrinsicHeight(40); 
相關問題