Android 如何正确获取和计算手机屏幕的(对角)英寸?在线等

梅明子 梅明子 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
网上随便搜索copy过来的就请您不要回答了!因为我已经百度了一下午,也试了一下午,发现搜到的都是不准确的。比如5.0计算得到的却是4.6或4.4等... 有解决过这个问题的大神吗?欢迎讨论


/**
* 获取屏幕尺寸大小(英寸)
*
* @param context
* @return
*/
@SuppressLint("NewApi")
public static double getScreenInch(Activity context) {
// DisplayMetrics dm = new DisplayMetrics();
// context.getWindowManager().getDefaultDisplay().getMetrics(dm);
// int width = dm.widthPixels;
// int height = dm.heightPixels;
// int dens = dm.densityDpi;
// double wi = (double) width / (double) dens;
// double hi = (double) height / (double) dens;
// double x = Math.pow(wi, 2);
// double y = Math.pow(hi, 2);
// double screenInches = Math.sqrt(x + y);
// return TextUtil.formatDouble(screenInches, 1);

DisplayMetrics metric = new DisplayMetrics();
context.getWindowManager().getDefaultDisplay().getMetrics(metric);
int width = metric.widthPixels;
int height = metric.heightPixels;
int densityDpi = metric.densityDpi;// 屏幕密度DPI(120 / 160 / 240)
double diagonalPixels = Math.sqrt(Math.pow(width, 2) + Math.pow(height, 2));
double screenInches = diagonalPixels / densityDpi;
return TextUtil.formatDouble(screenInches, 1);
}


这些代码都是不准确的!
...全文

相关推荐

电脑屏幕扩展至安卓手机上

可以将电脑桌面扩展至安卓手机上脱离数据线的束缚,可以将视频的窗口拖到手机屏幕上,然后在电脑桌面上操作其他的内容。

qq_35063747

android获取屏幕大小的正确方法

android获取屏幕大小的正确方法,网上有很多资料和直接赋值粘贴的代码都不对或不准确,于是自己写了正确的获取方法

阳光岛主

安卓android手机主题制作教程

安卓android手机主题自己动手制作,按照教程做就行了,定制自己的个性化主题

billlboy

Android 手机屏幕适配解决办法

0. 前言 Android的屏幕适配,即使得某一元素在Android不同尺寸、不同分辨率的手机上具备相同的显示效果,这个问题一直以来都是我们Android开发者不得不面对的问题。本文参考了很多前人的博客,并对这一问题做一个总结,力求精简明了。 转载请注明出处:http://blog.csdn.net/seu_calvin/article/details/52690498 1. 基础概念 (1)屏幕尺寸,即手机对角线的物理尺寸 1英寸 = 2.54cm  常见手机尺寸有5英寸、5.5英寸、6英寸等。 (2)屏幕分辨率,即手机在横向、纵向上的像素点数总和(一般描述成屏幕的”宽x高”)

weixin_38637764

安卓获取当前屏幕的屏幕尺寸(像素)

在安卓开发过程中需要获得当前屏幕尺寸(像素)来做适配,或者图片尺寸设计,技术含量不大,望君采用,为你剩几秒钟,哈哈!!!

qq_34800306
评论
收藏 已收藏
分享
返回顶部
梅明子
Android 80,489 成员 91,375 内容