2011-06-24 11 views
25

Więc ja ustawienie tła guzik w ten sposób:Jak przywrócić domyślne tło przycisku (programowo)?

b.setBackgroundResource(R.drawable.custom_button1); 

Jak programowo ustawić ją z powrotem do (nudny szary) Przycisk Android domyślnie? Czy istnieje identyfikator zasobu R.android.boring_grey, do którego mogę się odwoływać, nie odtwarzając tych stanów osobiście? Nie można tego znaleźć. Może moje umiejętności Googling zawodzą mnie.

No i przy okazji próbowałem to:

b.setBackgroundResource(0); 

i przycisk rzeczywiście zniknął (zmieszany z czarnym tle?).

Odpowiedz

34

Wypróbowałeś to?

android.R.drawable.btn_default; 
+1

To jeden, dzięki. Nie mogłem go znaleźć na moje życie. Widziałem poprzedni post na ten temat, ale oni opuścili część "android.R" i po prostu mieli "R.drawable" – Fraggle

+0

Poniższa odpowiedź pasuje do osób, które początkowo dostosowały swoje przyciski w różny sposób. –

+1

Czy jest jakiś sposób na uzyskanie domyślnego przycisku systemowego zamiast tego, który wygląda jak domyślny przycisk Gingerbread? – reubenjohn

17

najpierw uzyskać domyślnego tła Button b; korzystając

Drawable d = b.getBackground(); 

następnie ustawić inną tło wyboru

b.setBackgroundResource(R.drawable.custom_button1); 

jeśli trzeba domyślne tło ponownie użyć tego

b.setBackgroundDrawable(d); 
+0

Powiedziałbym, że ta odpowiedź jest lepsza niż akceptowana. Przyjęta odpowiedź dała mi androidowy przycisk w stylu 2.3, a to dało mi dokładnie oryginalny przycisk (co jest bardziej prawdopodobne niż zaakceptowana odpowiedź). – Timmiej93

+0

dziękuję bardzo za tę odpowiedź! Szukałem odpowiedniego rozwiązania na tak długo iw końcu znalazłem go tutaj. właśnie tego chciałem. –

4

Użyj tego

b.tr.setBackgroundDrawable(null); 
+1

metoda setBackgroundDrawable jest przestarzała – Panciz

+1

użyj setBackground (Drawable) zamiast – stefan222

2

Zrobiłem to przez

this.setBackgroundResource (android.R.drawable. btn_default);

Powiązane problemy