2013-08-09 31 views
22

Tôi đang đối phó với các lỗi trong SDK Facebook và do đó để loại bỏ các lỗi tôi sẽ cần phải thiết lập một drawable không có gì NULL không chỉ là không có gì hoặc không gian trống hoặc một cái gì đó. Làm thế nào tôi có thể làm điều đó theo chương trình?Làm thế nào để thiết lập một rỗng có thể rút ra

Drawable=... 

Trả lời

68

Bạn có thể sử dụng một cách minh bạch ColorDrawable:

Drawable transparentDrawable = new ColorDrawable(Color.TRANSPARENT); 

Đó là một Drawable đại diện cho màu sắc trong suốt và không có một kích thước bên trong.

+0

Vì vậy, nếu bạn cố gắng lấy chiều rộng nội tại, nó sẽ trở lại như thế nào? –

+1

tôi muốn nói -1, theo nguồn tin. – njzk2

+0

Cảm ơn người đàn ông. Tôi đã sử dụng mã của bạn và nó hoạt động. Tôi nghĩ rằng nó trả về 0 hoặc một cái gì đó. Không quan trọng nó hoạt động. –

3

drawable rỗng với chiều rộng và chiều cao có thể được thực hiện bằng cách sử dụng suốt ColorDrawable và chức năng setBounds (Rect)

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

Nếu bạn muốn một drawable trống có kích thước tương tự như drawable khác (nói 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()));