android-为什么总是使屏幕英寸尺寸错误?

android-为什么总是使屏幕英寸尺寸错误?,第1张

概述我想按英寸计算设备尺寸.我正在使用此代码,每次搜索都会出现.但是问题是当我将4.5英寸的设备放在androidstudio中时,我的答案是4.我尝试了5.2英寸的设备,然后又得到了4.3英寸和10.1英寸->答案是9.0.那么如何获得准确的答案?DisplayMetricsdm=newDisplayMetrics();getWi

我想按英寸计算设备尺寸.我正在使用此代码,每次搜索都会出现.但是问题是当我将4.5英寸的设备放在android studio中时,我的答案是4.我尝试了5.2英寸的设备,然后又得到了4.3英寸和10.1英寸->答案是9.0.那么如何获得准确的答案?

 displayMetrics dm = new displayMetrics();    getwindowManager().getDefaultdisplay().getMetrics(dm);    double wi=(double)dm.wIDthPixels/dm.xdpi;    double hi=(double)dm.heightPixels/dm.ydpi;    double x = Math.pow(wi,2);    double y = Math.pow(hi,2);    double screenInches = Math.sqrt(x+y);    Log.e("hello"," "+screenInches);

解决方法:

您的代码存在的问题是它没有考虑在内

动作条

软键

屏幕方向

使用以下答案

 WindowManager windowManager = getwindowManager();display display = windowManager.getDefaultdisplay();displayMetrics displayMetrics = new displayMetrics();display.getMetrics(displayMetrics);// since SDK_INT = 1;mWIDthPixels = displayMetrics.wIDthPixels;mHeightPixels = displayMetrics.heightPixels;// includes window decorations (statusbar bar/menu bar)if (Build.VERSION.SDK_INT >= 14 && Build.VERSION.SDK_INT < 17){    try    {        mWIDthPixels = (Integer) display.class.getmethod("getRawWIDth").invoke(display);        mHeightPixels = (Integer) display.class.getmethod("getRawHeight").invoke(display);    }    catch (Exception ignored)    {    }}// includes window decorations (statusbar bar/menu bar)if (Build.VERSION.SDK_INT >= 17){    try    {        Point realSize = new Point();        display.class.getmethod("getRealSize", Point.class).invoke(display, realSize);        mWIDthPixels = realSize.x;        mHeightPixels = realSize.y;    }    catch (Exception ignored)    {    } displayMetrics dm = new displayMetrics();getwindowManager().getDefaultdisplay().getMetrics(dm);double x = Math.pow(mWIDthPixels/dm.xdpi,2);double y = Math.pow(mHeightPixels/dm.ydpi,2);double screenInches = Math.sqrt(x+y);Log.d("deBUG","Screen inches : " + screenInches);

归功于him

总结

以上是内存溢出为你收集整理的android-为什么总是使屏幕英寸尺寸错误?全部内容,希望文章能够帮你解决android-为什么总是使屏幕英寸尺寸错误?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1121004.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-29
下一篇2022-05-29

发表评论

登录后才能评论

评论列表(0条)

    保存