2013-08-09 11 views
22

Mam do czynienia z błędami w pakiecie SDK Facebooka i tak, aby usunąć błędy muszę ustawić ciągnąć do niczego nie NULL tylko nic lub pustej przestrzeni lub coś. Jak mogę to zrobić programowo?Jak ustawić pusty drawowalny

Drawable=... 

Odpowiedz

68

można wykorzystywać przejrzysty ColorDrawable:

Drawable transparentDrawable = new ColorDrawable(Color.TRANSPARENT); 

To Drawable który reprezentuje kolor przezroczysty i nie posiada wewnętrzną wielkość.

+0

Więc jeśli spróbujesz uzyskać wewnętrzną szerokość, co powróci? –

+1

Powiedziałbym, że -1, zgodnie ze źródłem. – njzk2

+0

Dzięki człowieku. Użyłem twojego kodu i zadziałało. Myślę, że zwrócił 0 lub coś. Nie ma znaczenia, że ​​zadziałało. –

3

Empty rozciągliwej z szerokości i wysokości mogą być wykonane przy użyciu przejrzystego ColorDrawable i funkcję setBounds (Rect)

int left=0,top=0,right=32,bottom=32; 
Drawable transparentDrawable = new ColorDrawable(Color.TRANSPARENT); 
transparentDrawable.setBounds(left,top,right,bottom); 

Jeśli chcesz pusty rozciągliwej wymiarów same jak innego rozciągliwej (słownie d):

Drawable d = getResources().getDrawable(R.drawable.my_drawable); 
Drawable transparentDrawable = new ColorDrawable(Color.TRANSPARENT); 
transparentDrawable.setBounds(new Rect(0, 0, d.getMinimumWidth(), d.getMinimumHeight()));