我正在使用自定义弹出窗口。在加载时我必须传递窗口的高度和宽度。但是我想加载所有屏幕尺寸的弹出窗口。我使用以下函数加载弹出窗口。
private void loadPopup() {
LayoutInflater inflater = this.getLayoutInflater();
final View layout = inflater.inflate(R.layout.activity_pop_up_ad, null);
final PopupWindow windows = new PopupWindow(layout , 300,500,true);
layout.post(new Runnable() {
public void run() {
windows.showAtLocation(layout,Gravity.CENTER, 0, 0);
}
});
ImageButton close = (ImageButton) layout.findViewById(R.id.close);
close.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
windows.dismiss();
}
});
}
我试过这个。但它完成了屏幕尺寸。我不想那么多。
windows.setWindowLayoutMode(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT);
有什么想法吗?
答案 0 :(得分:0)
你不能只检测屏幕的高度/宽度,然后按某种因素缩小,这样它就不会像你想要的那样填满屏幕吗?
Display display = getWindowManager().getDefaultDisplay();
Point size = new Point();
display.getSize(size);
int width = size.x;
int height = size.y;
上面的代码可以为您提供屏幕的高度和宽度,然后您可以分割或减去高度和宽度,使弹出窗口尽可能多地填充屏幕。
这是你想要的吗?还是我误解了?