2011-05-01 57 views
7

的背景,我有以下代碼:如何刪除(普通)模式(Android)

View view = new View(this); 
view.setBackgroundDrawable(...); 
... 

在這裏,我想刪除這樣的背景下。
只需將它恢復原樣。

我想這些和失敗:

view.setBackgroundDrawable(null); 
view.setBackgroundColor(0xFF000000); 
view.setBackgroundColor(0x00000000); 

任何更多的想法?

+0

是否調用'invalidate()'強制重繪有所作爲? – 2011-05-01 20:22:00

回答

17

view.setBackgroundDrawable(null);應該工作。

您可以嘗試下列操作之一:

v.setBackgroundColor(Color.WHITE); 
//or 
v.setBackgroundColor(Color.parseColor("#ff0000")); //whatever color 

確保視圖你申請的背景是正確的實例。

1

這是因爲view.setBackgroundColor(int)預計顏色資源不是「實際」整數值。嘗試在colors.xml中聲明它,請參閱this。但是,我不太清楚「刪除」背景的含義。如果您希望它具有原始值,那麼我建議您在某處存儲原始繪圖(使用getBackground())。否則,你很可能會失去格式,因爲Android中的大多數默認背景都是Drawable資源(選擇器),而不是簡單的顏色。