Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/222.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如何获得具有填充父布局的对话框的宽度/高度?_Android_Android Layout - Fatal编程技术网

Android 如何获得具有填充父布局的对话框的宽度/高度?

Android 如何获得具有填充父布局的对话框的宽度/高度?,android,android-layout,Android,Android Layout,我和你有一个活动 android:theme="@android:style/Theme.Dialog" 将其显示为浮动窗口。我还有一句台词 getWindow().setLayout(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT); 我需要这个窗口的宽度/高度来正确显示内容 我已经测试了四个选项,但没有得到答案: //1 int width = getWindowManager().getDefaultDisplay().getW

我和你有一个活动

android:theme="@android:style/Theme.Dialog" 
将其显示为浮动窗口。我还有一句台词

getWindow().setLayout(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT);
我需要这个窗口的宽度/高度来正确显示内容

我已经测试了四个选项,但没有得到答案:

//1 
int width = getWindowManager().getDefaultDisplay().getWidth();

//2 
int width = getWindow().getDecorView().getWidth();

//3 
getWindow().getDecorView().getWindowVisibleDisplayFrame(rect);

//4 
int width = getWindow().getAttributes().width;
谢谢

使用此功能:

private int getting_screen_width(Dialog dialog) 
    { 
    DisplayMetrics dm = new DisplayMetrics();
     dialog.getWindow().getWindowManager().getDefaultDisplay().getMetrics(dm);
    String width = ""+dm.widthPixels ;
    dm = null;
       return (Integer.parseInt(width));

此函数返回屏幕宽度的值

您的函数返回屏幕宽度,但我需要弹出窗口的宽度。对话框样式的活动显示为弹出窗口,W(和H)大约小于screen-W(-H)10px。最后的编辑也会这样做:返回屏幕宽度,但我需要实际的窗口宽度)您是否在当前对话框中使用dialog.getWindow()?奇怪的是,我很快也会在我的项目上测试它