gpt4 book ai didi

java - 如何获得带刘海的 Android 手机的正确屏幕尺寸

转载 作者:行者123 更新时间:2023-12-02 05:00:44 25 4
gpt4 key购买 nike

我正在使用Java制作Android游戏,我需要将游戏屏幕尺寸映射到设备屏幕尺寸,我曾经使用以下代码来获取设备屏幕尺寸

getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
DisplayMetrics dm = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(dm);
int width=dm.widthPixels;
int height=dm.heightPixels;

我在使用带有缺口的新设备时遇到问题,上面的代码给了我与实际设备不同的屏幕高度,例如,实际设备高度是 2340 像素,但代码返回 2130 像素,我使用以下代码获取凹口高度

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) {
DisplayCutout displayCutout = getWindow().getDecorView().getRootWindowInsets().getDisplayCutout();
if (displayCutout.getBoundingRects().size() > 0) {
Rect notchRect = displayCutout.getBoundingRects().get(0);
}
}

原来是80,现在2130 + 80是2210,当我将游戏屏幕映射到设备屏幕时,仍然缺少130个像素,由于高度不正确而发生移位

最佳答案

到目前为止,还没有办法获得带有凹口的屏幕的真实尺寸

关于java - 如何获得带刘海的 Android 手机的正确屏幕尺寸,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56387804/

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