Popupwindow停用边框

时间:2012-05-23 10:54:09

标签: android

我正在尝试创建叠加显示通知,如果它们到达我应用的底部。

我正在计划使用PopupWindow这样做,因为它很容易集成到每个活动中,而不会有一个具有覆盖作为屏幕上最后一个元素的RelativeLayout的麻烦。

我的测试代码如下:

 popUp = new PopupWindow(this);
 popUp.setContentView(LayoutInflater.from(this).inflate(R.layout.testwindow, null));
 popUp.showAtLocation(layout, Gravity.BOTTOM, 0, 0);
 popUp.update(0, 0, width, height);

其中width和height是我的设备的大小。但问题是弹出窗口并没有覆盖整个屏幕,显示了一个小边框 - 这不在我的布局中 - 还有一些填充。

我已经尝试将布局文件中的边框设置为0px,并为测量的屏幕宽度添加偏移量和额外宽度。但是左边的填充物无法移除。

如何将叠加层拉伸到窗口的整个宽度?现在它看起来像这样: not working overlay

1 个答案:

答案 0 :(得分:3)

这已经很多年了,但我正在为可能面临类似问题的其他人提出解决方案。

  1. 您可以添加以下内容,但BitmapDrawable已弃用,现在要求您传入上下文。
  2. popUp.setBackgroundDrawable(new BitmapDrawable());

    OR

    1. 我更喜欢这个解决方案,因为我传入null并避免潜在的泄漏和清理。
    2. popUp.setBackgroundDrawable(null);