Как убрать фон (обычного) вида (Android) - PullRequest
8 голосов
/ 02 мая 2011

У меня есть следующий код:

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

И здесь я хочу удалить этот фон.
Просто поверните его обратно, как это было раньше.

Я попробовал это и не смог:

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

Есть еще идеи?

Ответы [ 2 ]

20 голосов
/ 02 мая 2011

view.setBackgroundDrawable(null); должно работать.

Вы можете попробовать один из них:

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

Убедитесь, что представление, к которому вы применяете фон, является правильным экземпляром.

1 голос
/ 02 мая 2011

Это потому, что view.setBackgroundColor(int) ожидает цветовой ресурс, а не "фактическое" целочисленное значение. Попробуйте объявить его в файле colors.xml, см. this . Однако я не совсем уверен, что вы имеете в виду под «удалением» фона. Если вы хотите, чтобы оно имело исходное значение, я предлагаю вам где-нибудь сохранить исходный чертеж (используя getBackground()). В противном случае вы, скорее всего, потеряете форматирование, так как большинство фонов по умолчанию в Android - это Рисованные ресурсы (селекторы), а не простые цвета.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...