最大化AlertDialog?

时间:2009-08-25 11:57:58

标签: android

我想展示一个占用尽可能多的屏幕空间的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。

3 个答案:

答案 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"