9

I've used a PopupWindow. With this PopupWindow I set the BackgroundDrawable to an empty BitmapDrawable.

When I use the following code it gives a deprecated warning:

myPopupWindow.setBackgroundDrawable(new BitmapDrawable());

So I changed it to:

myPopupWindow.setBackgroundDrawable(new BitmapDrawable(
    getApplicationContext().getResources(),
    Bitmap.createBitmap(0, 0, Bitmap.Config.ARGB_8888)
));

This gave me an error that a Bitmap must have a width and height bigger than 0.

Right now I use:

myPopupWindow.setBackgroundDrawable(new BitmapDrawable(
    getApplicationContext().getResources(),
    Bitmap.createBitmap(1, 1, Bitmap.Config.ARGB_8888)
));

And it works. But it just seems a bit wrong to use a 1x1 pixel Bitmap instead of a completely empty one like I want to. Is there another way to actually use an empty BitmapDrawable, instead of one that is 1 by 1 pixels?

Manuel Allenspach
  • 12,467
  • 14
  • 54
  • 76
Kevin Cruijssen
  • 9,153
  • 9
  • 61
  • 135
  • @Manu Is it against stackoverflow rules to add "Thanks in advance for the responses?".. Btw, if that's your reason to downvote me it's kinda childish.. You could also just have said something instead. – Kevin Cruijssen Jun 02 '14 at 07:23
  • 2
    It is not against the rules, but it doesn't belong in a post ([source](http://meta.stackexchange.com/questions/131009/what-should-i-keep-out-of-my-posts-and-titles)). I just upvoted you, it was another user who downvoted. – Manuel Allenspach Jun 02 '14 at 07:29
  • 1
    @Manu Ah ok, sorry I pointed fingers at you for downvoting me while you weren't.. And thanks for that source-post, I will from now one leave the "Thank in advance for the responses." out. – Kevin Cruijssen Jun 02 '14 at 07:33

1 Answers1

24

Ok, instead of

myPopupWindow.setBackgroundDrawable(new BitmapDrawable());

OR

myPopupWindow.setBackgroundDrawable(new BitmapDrawable(
    getApplicationContext().getResources(),
    Bitmap.createBitmap(1, 1, Bitmap.Config.ARGB_8888)
));

I just use a background-color (new ColorDrawable(android.graphics.Color color)) that I want to set to the PopupWindow. So for example, one of my PopupWindows just had a few Images without margins in between them, so I used a Transparent background for it:

myPopupWindow.setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));

And for another one I wanted to use a white background anyway, so I've used:

myPopupWindow.setBackgroundDrawable(new ColorDrawable(Color.WHITE));
Kevin Cruijssen
  • 9,153
  • 9
  • 61
  • 135