Android 屏幕分辨率
查看android源码说可使用getSize替代,于是换成getSize并把代码提炼到工具类中
用了一阵发现又有不便,原因是getWindowManager方法只能在activity中使用或者被activity实例调用,那像我们在Fragment或者Adapter中想获得屏幕分辨率,又有困难了(因为Fragment和Adapter一般只有Context),虽然可以通过强制类型转换来处理,可是毕竟劳民伤财需要时时记得去转换。所以又改了从Context获取系统服务,然后再去取分辨率,改后的代码如下
再后来发现通过DisplayMetrics也能获取分辨率,依网上的做法照猫画虎如下:
不久便发现这个新方法时常量错了,找来找去又自己反复实践,结果确认widthPixels和heightPixels就是宽和高,无需再乘上density。因为widthPixels和heightPixels的单位都是像素,而density指的是像素密度,即一个单位内有几个像素,所以在我这边乘上density没有意义,只有除以density才有意义。dm.widthPixels/dm.density指的是宽度上有多少单位,dm.heightPixels/dm.density指的是高度上有多少单位。网上乘以density的做法,可能只是他们恰好遇上部分特殊机型罢了。最后的代码如下:
发布日期:2021-11-12 07:57:32
浏览次数:37
分类:技术文章
本文共 1991 字,大约阅读时间需要 6 分钟。
原文地址:http://blog.csdn.net/aqi00/article/details/50035541
在app编码中经常需要获取手机的屏幕分辨率(宽*高),原来我直接上网拷贝代码,但在使用过程中却发现诸多不便。
不便一:下面代码中的getWidth和getHeight在adt上提示deprecated已经废弃了,实在扎眼
查看android源码说可使用getSize替代,于是换成getSize并把代码提炼到工具类中
用了一阵发现又有不便,原因是getWindowManager方法只能在activity中使用或者被activity实例调用,那像我们在Fragment或者Adapter中想获得屏幕分辨率,又有困难了(因为Fragment和Adapter一般只有Context),虽然可以通过强制类型转换来处理,可是毕竟劳民伤财需要时时记得去转换。所以又改了从Context获取系统服务,然后再去取分辨率,改后的代码如下
再后来发现通过DisplayMetrics也能获取分辨率,依网上的做法照猫画虎如下:
不久便发现这个新方法时常量错了,找来找去又自己反复实践,结果确认widthPixels和heightPixels就是宽和高,无需再乘上density。因为widthPixels和heightPixels的单位都是像素,而density指的是像素密度,即一个单位内有几个像素,所以在我这边乘上density没有意义,只有除以density才有意义。dm.widthPixels/dm.density指的是宽度上有多少单位,dm.heightPixels/dm.density指的是高度上有多少单位。网上乘以density的做法,可能只是他们恰好遇上部分特殊机型罢了。最后的代码如下:
转载地址:https://blog.csdn.net/happy_love1990/article/details/76599162 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
逛到本站,mark一下
[***.202.152.39]2024年03月14日 00时13分55秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
java按钮退出_java – 如何在此程序中添加退出按钮?怎么样“清楚”?
2019-04-21
python土味情话_Python 将土味情话语录设置为桌面壁纸
2019-04-21
幻兽天下修复版java_宠物天下四-幻兽天下
2019-04-21
java ip 范围内打卡_定位地理位置PHP判断员工打卡签到经纬度是否在打卡之内
2019-04-21
与java线程有关的,线程多少和什么有关?大神们表示有话要说!
2019-04-21
php正则表达式 匹配数字,正则表达式之匹配数字范围
2019-04-21
php中带?错误,参考-此错误在PHP中意味着什么?
2019-04-21
php生成链接列表,根据URL链接和抛文本生成链接<a>标签的PHP函数
2019-04-21
php html标签自定义属性,浅谈JS读取DOM对象(标签)的自定义属性
2019-04-21
php 实现 model层,Thinkhphp5控制器调用的Model层的方法总结
2019-04-21
matlab6.0序列号,MFC软件获取USB设备的制造商、产品、序列号
2019-04-21
matlab中多边形滤波器,几种常见空间滤波器MATLAB实现
2019-04-21
matlab fminimax 例子,Matlab应用实例(8)—fminimax
2019-04-21
php://filter利用条件,浅谈php://filter技巧
2019-04-21
mplayer-php,mplayer+smplayer 前后端播放器安装
2019-04-21
oracle昨日时间,。。今日,昨日,上周,本月,本年,按时间统计总金额
2019-04-21
php验证卡号,PHP验证信用卡卡号是否正确函数
2019-04-21