DisplayInfo
DisplayInfo
![](http://p.codekk.com/images/icon/ic_favorite_white.png)
display info of device
Github 链接https://github.com/ZQiang94/DisplayInfo
Download
![](https://raw.githubusercontent.com/ZQiang94/DisplayInfo/master/20160820231714.png)
扫描二维码进行下载或者点击下载
通过运行 DisplayInfo 获取当前设备屏幕的尺寸信息,运行效果如图(Honor 7):
通过运行结果可以看出,华为 Honor 7 的屏幕尺寸(4.94 约为 5.0),分辨率(Resolution)为 1080 * 1920(缺少的为下面的按键),DPI 为 480dpi 等信息。另外还有一些 Android 适配时需要了解的尺寸限定符,详细讲解见官方文档对尺寸限定符的解释。
Des:
场景:切图是在 1080 1920 的图上进行标注,套图时该如何进行适配。
现在市场主流的两种分辨率类型(分别是 1080 1920 与 720 1280),具体的分布情况在下图中展示。 如图展示的为 16 年 07 月份分辨率市场分布情况: 查看更详细信息(个推提供)
下面是分辨率与对应基线的关系图
通过上图可以看出,场景中给出的在 480dpi(1080 1920)的标注,要想适配 480dpi 的手机只需要将切图中的标注除以 3 即可(切图中的标注是 px,需要转换成 Android 中的 dp)。 想要使用 480dpi 的标注适配 320dpi(720 * 1280),可以使用先将 420dpi 的设计图缩放成 320dpi 的设计图,借助 ps 可以实现。
![](https://raw.githubusercontent.com/ZQiang94/DisplayInfo/master/display_00.png)
可以得出,1080 1920 缩放为 720 1280 时:
width:66.67% height:79.01%
在使用设计图为 480dpi(1080 1920)适配 720 1280 的时候先按照上述比例计算出 720 * 1280 的标注然后再除以 2。
基本概念
https://developer.android.com/reference/android/util/DisplayMetrics.html
1.屏幕尺寸:手机实际物理尺寸,一般用英寸来表示(1 英寸 = 2.54 厘米)。
手机尺寸计算方式=对角线尺寸/2.54
2.分辨率:屏幕上显示的像素个数,单位尺寸内像素点越多,显示的图像就越清楚。
分辨率 720*1280 表示手机水平方向的像素为 720,垂直方向为 1280.
3.屏幕密度:表示屏幕每英寸有多少个像素。
240dpi(480800) 、320dpi(7201280)、480dpi(10801920) (这里 240dpi 并不一定是 480 800 的分辨率,设计效果图时不用考虑这些,可以把 480 800 的分辨率“当成”是在 240dpi 下的设计, 因为实际 240dpi 下的分辨率可以和 480 800 的分辨率共用一套切图资源。)
4.单位
dip:dot per inch,就是每英寸的像素数,也叫做屏幕密度。这个值越大,屏幕就越清晰。
ppi:#####对 Android 而言,DPI 等价于 PPI(Pixels-Per-Inch)
px:pixels(像素),屏幕上的点,不同设备不同的显示屏显示效果相同,这是绝对像素,是多少就永远是多少不会改变。
dp:(andriod 开发中用于描述尺寸和间距)与密度无关的像素。
sp:scaled pixels — best for text size (放大像素)(与刻度无关的像素)和 dp 一样,只是用于描述字号和行距。
TODO
记录遇到过的机型信息
进一步创建相应机型的 layout 与 values 资源文件夹(用做测试)
res 下各种文件夹的定义
DisplayInfo相关推荐
- 引用类型(一):Object类型
对象表示方式 1.第一种方式:使用new操作符后跟Object构造函数 var person = new Object();<br/> person.name = 'Nicholas';& ...
- Extjs:添加查看全部按钮
var grid =new Ext.grid.GridPanel({renderTo:'tsllb',title:'产品成本列表',selModel:csm,height:350,columns:[c ...
- (转载)虚幻引擎3--9掌握虚幻技术UnrealScript 预处理器
第九章 – UNREALSCRIPT预处理器 9.1概述 9.2 MACRO(宏)的基础知识 指南 9.1 –您的第一个宏 9.3具有参数的宏 指南 9.2 – MACRO参数 9.4内置 ...
- Ext.ux.form.SearchField使用方法
这学期一直在做一个管理系统,前台用到了ExtJs,现在开始总结这一学期的学习心得,首先我们从Ext.ux.form.SearchField开始讲,因为这个东西一直困扰我好长时间,直到项目结束前几天我才 ...
- ExtJs之Ext.grid.GridPanel(部分未完)
今天在家休息,年假不用就作费啊. 看了几部香港老电影,陪爸爸看了勇士占奇才, 然后,测试了一下EXTJS未完的内容, 在京东上订了七本历史普及书,近两百块..:) 搞定. ? 1 2 3 4 5 6 ...
- ExtJs4–表格--Grid
1.首先定义对象: Ext.define('log',{extend:'Ext.data.Model',fields:[{name: 'id',mapping:'id'}, {name: 'user' ...
- Ext2.0框架的Grid使用介绍(转)
Ext2.0框架的Grid使用介绍 最近空闲时间在学习Ext2.0框架,只有一个字的感叹"强",我从未想到JS代码能够写出这么绚丽的Web页面出来,以前看到YUI,惊若天人,如今 ...
- ExtJS4.2学习(14)基于表格的扩展插件(2)
我曾经在第6节里讲到表格分页,还记得之前的分页组件是什么样的吗? 上面只有文字显示,我们来为其制作的更美观点,好吧,不卖关子了,讲本节的内容:进度条分页控件,这是表格扩展组件. 首先我们需要引入扩展组 ...
- 【SICP练习】30 练习1.36
练习1.36 这道题要求我们根据书上的newline和display来完成一个新版本的fixed-point.根据题目内容我们分为如下步骤: 1.写出能够打印出计算中产生的近似值序列的函数. 2 ...
最新文章
- Cell Research丨潘涛/骆观正合作团队揭示肠道菌群调控宿主RNA甲基化和基因表达新机制...
- Windows 10 全新开始屏幕曝光
- beego 文件服务器,beego自动化文档
- Codeforces 1276C/1277F/1259F Beautiful Rectangle (构造)
- 大家都较熟悉之 Kubernetes API 分析
- python开发个人博客_手把手教你用 Python + Flask 搭建个人博客
- 如何从管理IT服务提供商获得最大收益
- 算法-低位优先的字符串排序
- 人才缺口40万,摆地摊也没有它挣钱,这个神仙职业今年太火了!
- 如何搭建一套完整的深度学习系统?
- 二分答案——跳石头(洛谷 P2678)
- Java使用独立数据库连接池(DBCP为例)
- oracle展bom逻辑,oracle 求BOM树型展开的总用量
- jBPM4工作流应用开发指南
- Redis基础6(Redis6管道)
- Apache Flink 进阶(六):Flink 作业执行深度解析
- TestStand版本切换注意事项(重启电脑)
- H.265视频编码原理总结
- 初识语音合成软件eSpeak
- 字节和兆字节的换算_兆字节(MB)中有多少个字节?