我想展示一个占用尽可能多的屏幕空间的Dialog。
所以,这是一个样本:
AlertDialog dialog = new AlertDialog.Builder(ctx)......create();
Window w = dialog.getWindow();
WindowManager.LayoutParams lp = w.getAttributes();
lp.width = 320;
lp.height = 480;
w.setAttributes(lp);
问题是,这不会改变一件事。为什么呢?
TIA。
答案 0 :(得分:1)
我不知道如何做到你想要的东西,但这不是主要击败对话的目的吗?为什么不只是创建一个自定义Activity并使用Dialog主题,如果你只是想让它看起来像对话框。
答案 1 :(得分:0)
您需要在setContentView之后更改窗口布局参数。当你调用setContentView时,你在此之前对窗口做的任何事情(大小/位置方式)都会被抛弃。
http://devstream.stefanklumpp.com/2010/07/android-display-dialogs-in-fullscreen.html
答案 2 :(得分:0)
您需要在Dialog的xml布局文件中添加minWidth和minHeight属性。例如。您的屏幕尺寸为800 * 480,然后设置为android:minWidth="800dip"
,android:minHeight="400dip"