gpt4 book ai didi

android - 显示指标减去状态栏?

转载 作者:IT老高 更新时间:2023-10-28 21:49:01 25 4
gpt4 key购买 nike

我需要获取应用程序可以在设备上使用的显示矩形的尺寸。为此,我尝试使用:

Display display = getWindowManager().getDefaultDisplay();
int width = display.getWidth();
int height = display.getHeight();

我的问题是它给了我整个显示器的高度,并且显示器顶部有一个应用程序无法使用的“状态/通知”栏。

我需要应用程序可以使用的实际维度。

为了帮助您更好地理解问题,我会留下一张图片:

enter image description here

最佳答案

所有这一切的最大技巧是,在布局完成之前,您通常无法访问该 View 大小的真实值。这意味着 onCreate() (通常也是 onResume() )在计算过程中为时过早。以下代码将为您提供一个表示 Activity 内容 View 的 View ,此时您可以检查它的高度和宽度:

View content = getWindow().findViewById(Window.ID_ANDROID_CONTENT);
Log.d("DISPLAY", content.getWidth() + " x " + content.getHeight());

这也说明了您可能在 Activity 中设置的任何标题 View 。当 XML 膨胀时,您还可以获得对设置为内容 View 的根布局的引用,如果该布局在两个维度上都设置为 fill_parent,则执行相同的操作。

我经常这样调用的一个好方法是 onWindowFocusChanged(),它将在您的 Activity 对用户几乎可见时被调用。

希望有帮助!

关于android - 显示指标减去状态栏?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5886615/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com