Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/180.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_Dimensions - Fatal编程技术网

Android 景观窗口维度

Android 景观窗口维度,android,dimensions,Android,Dimensions,我在获取android的屏幕尺寸时遇到了麻烦。我不希望状态栏的大小包含在我的维度中。我正在开发的应用程序将永久处于横向模式。我一直在用android蜂巢模拟器进行测试。当我使用中的代码获得维度时,我得到1280x800。我很好奇,为什么链接问题中的人会将状态栏的大小减去,而我的状态栏却不是这样。另外,我如何使状态栏的大小实际上被减去?如果需要任何额外的细节,我将定期检查以提供。谢谢 好的!我终于明白了。我从几个不同的来源拼凑了代码,所以我不知道为什么事情会这样发展。这是相关代码 Rect rec

我在获取android的屏幕尺寸时遇到了麻烦。我不希望状态栏的大小包含在我的维度中。我正在开发的应用程序将永久处于横向模式。我一直在用android蜂巢模拟器进行测试。当我使用中的代码获得维度时,我得到1280x800。我很好奇,为什么链接问题中的人会将状态栏的大小减去,而我的状态栏却不是这样。另外,我如何使状态栏的大小实际上被减去?如果需要任何额外的细节,我将定期检查以提供。谢谢

好的!我终于明白了。我从几个不同的来源拼凑了代码,所以我不知道为什么事情会这样发展。这是相关代码

Rect rect = new Rect();
Window win = getWindow();
win.getDecorView().getWindowVisibleDisplayFrame(rect);
screenWidth = Math.abs(rect.left-rect.right);
screenHeight = Math.abs(rect.top-rect.bottom);
不过有一个警告。此代码在onCreate()方法中不起作用。相反,把它放在

public void onWindowFocusChanged (boolean hasFocus)
这将解决获取窗口尺寸的任何问题


编辑:我相信这个解决方案也应该在纵向模式下工作。不过我还没有测试过。

好的!我终于明白了。我从几个不同的来源拼凑了代码,所以我不知道为什么事情会这样发展。这是相关代码

Rect rect = new Rect();
Window win = getWindow();
win.getDecorView().getWindowVisibleDisplayFrame(rect);
screenWidth = Math.abs(rect.left-rect.right);
screenHeight = Math.abs(rect.top-rect.bottom);
不过有一个警告。此代码在onCreate()方法中不起作用。相反,把它放在

public void onWindowFocusChanged (boolean hasFocus)
这将解决获取窗口尺寸的任何问题

编辑:我相信这个解决方案也应该在纵向模式下工作。不过我还没有测试过