好久没有做android项目UI的适配了,好多基本概念都已经模糊了,于是萌生了将屏幕分辨率、常用单位、常用图标尺寸等信息规整的想法,一下就是通过查询资料,自己验证的一些随笔,如有失误之处,望大家及时予以指正,我将及时更新改正,有部分内容未添加,有些是不常用,有些是没有相关资料,希望在以后能慢慢补全。

一、常见单位:

1、px(pixels):(像素) 屏幕上可见像素点

2、dip/dp(Density independent pixels): 设备无关像素的长度单位。

3、sp(放大像素):scaled pixels,主要用于字体显示 best for text size (随系统字体大小设置而变化)

4、dpi:(dots per inch )一英寸多少个像素点。常见取值 120,160,240。我一般称作像素密度,简称密度

5、density:密度。常见取值 1.5 , 1.0 。和标准dpi的比例(160px/inc)

6、in (英寸):长度单位

7、mm(毫米):长度单位

8、pt:point (磅)一个标准的长度单位,1pt = 1/72英寸,常用于印刷业

二、常见概念:

1、分辨率:横纵2个方向的像素点的数量,如:480*800

2、屏幕尺寸:屏幕对角线长度,多以英寸为单位

3、屏幕比例:确定屏幕对角线长度后,屏幕形状没有确定,有了屏幕比例 4:3、16:9 这种屏幕比例后,就可以计算屏幕长宽

三、计算方法:

dpi = 对角线像素点数(根据分辨率通过勾股定理获取)/屏幕尺寸

density = dpi/160

四、屏幕尺寸与dp对照表:

资源文件夹

屏幕尺寸

屏幕像素密度(dpidots per inch

密度(density

1dpdip

ldpi

0.75

0.75px

mdpi

320*480

1.0(160px/inc)

1px

hdpi

480*800

1.5

1.5px

xhdpi

1280*720

2.0

2px

xxhdpi

1920*1080

3.0

3px

五、activity中获取相关参数方式:

DisplayMetrics metric = new DisplayMetrics();

getWindowManager().getDefaultDisplay().getMetrics(metric);

int width = metric.widthPixels;  // 屏幕宽度(像素)

int height = metric.heightPixels;  // 屏幕高度(像素)

float density = metric.density;  // 屏幕密度(0.75 / 1.0 / 1.5)

int densityDpi = metric.densityDpi;  // 屏幕密度DPI(120 / 160 / 240)

六、常用图标尺寸设计规范:

ldpi

mdpi

hdpi

xhdpi

xxhdpi

应用启动图标

36 x 36 px

48 x 48 px

72 x 72 px

96 x 96 px

144 x 144 px

底部菜单图标

完整图片

36 x 36 px

48 x 48 px

72 x 72 px

图标

24 x 24 px

32 x 32 px

48 x 48 px

图标外边框

22 x 22 px

30 x 30 px

44 x 44 px

弹出对话框顶部图标

24 x 24 px

32 x 32 px

48 x 48 px

长列表内部列表项图标

24 x 24 px

32 x 32 px

48 x 48 px

底部或顶部tab标签图标

完整图片

24 x 24 px

32 x 32 px

48 x 48 px

图标

22 x 22 px

28 x 28 px

42 x 42 px

底部状态栏图标

18 x 18 px

24 x 24 px

36 x 36 px

48 x 48 px

android屏幕适配之度量单位、屏幕分类、图标尺寸归类分析的更多相关文章

  1. Android屏幕适配和文字屏幕适配

    http://blog.sina.com.cn/s/blog_9996c67e0101euwd.html 最近在一个项目中要实现屏幕适配平板和手机等不同的型号,而蛋疼的美工给了一套图,而且这些图纸有在 ...

  2. Android必知必会-App 常用图标尺寸规范汇总

    若移动端访问不佳,请使用 –> Github版 内容持续更新中,更新日期:2016-08-11 1. 程序启动图标(icon launcher) 放在mipmap-*dpi下,文件名为ic_la ...

  3. Android屏幕适配与切图_汇总

    首先和最后,还是先看好官方文档:http://developer.android.com/guide/practices/screens_support.html 对应的翻译blog有牛人做了:And ...

  4. 【Android 应用开发】Android屏幕适配解析 - 详解像素,设备独立像素,归一化密度,精确密度及各种资源对应的尺寸密度分辨率适配问题

    . 作者 :万境绝尘 转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/19698511 . 最近遇到了一系列的屏幕适配问题, 以及 ...

  5. Android屏幕适配解析 - 详解像素,设备独立像素,归一化密度,精确密度及各种资源对应的尺寸密度分辨率适配问题

    . 作者 :万境绝尘 转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/19698511 . 最近遇到了一系列的屏幕适配问题, 以及 ...

  6. iOS学习笔记24-不断进化的屏幕适配

    一.屏幕适配 iOS的屏幕适配可以分为3大块,代表着不同时期的屏幕适配主流: AutoResizing:在iOS6之前,完全能够胜任,因为当时苹果只有3.5寸屏,加上比较少的支持横屏,它有非常大的局限 ...

  7. 最清晰的Android多屏幕适配方案

    问题的引入 当您的Android应用即将发布的时候,如果你想让更多的用户去使用你的应用,摆在工程师面前的一个重要问题就是如何让你的应用能在各种各样的终端上运行,这里的各种各样首当其冲的就是不同的屏幕分 ...

  8. 【收藏】Android屏幕适配全攻略(最权威的Google官方适配指导)

    来源:http://blog.csdn.net/zhaokaiqiang1992 更多:Android AutoLayout全新的适配方式, 堪称适配终结者 Android的屏幕适配一直以来都在折磨着 ...

  9. Android屏幕适配全攻略(最权威的官方适配指导)(转),共大家分享。

    Android的屏幕适配一直以来都在折磨着我们这些开发者,本篇文章以Google的官方文档为基础,全面而深入的讲解了Android屏幕适配的原因.重要概念.解决方案及最佳实践,我相信如果你能认真的学习 ...

随机推荐

  1. SQL注入漏洞和SQL调优SQL注入漏洞和SQL调优

    SQL注入漏洞和SQL调优 最近读了程序员的SQL金典这本书,觉得里面的SQL注入漏洞和SQL调优总结得不错,下面简单讨论下SQL注入漏洞和SQL调优. 1. SQL注入漏洞 由于“'1'='1'”这 ...

  2. C#编程总结

    C#编程总结--总目录 多年的C#实战经历,希望通过一个系列课程对C#编程做系统总结. 总结过去,展望未来.新的一年,新的征程,新的开始! 希望我们在2014梦想成真,马到成功! 1.C#编程总结(一 ...

  3. ACE编译运行错误解决

    使用VS2010编译运行ACE版本号为6.0.1 按照网上步骤添加config.h,在ACE_wrappers/ace目录下 ,新建 config.h 文件加入以下内容: #include " ...

  4. Lex Yacc手册

    Python Lex Yacc手册 本文是PLY (Python Lex-Yacc)的中文翻译版.转载请注明出处.这里有更好的阅读体验. 如果你从事编译器或解析器的开发工作,你可能对lex和yacc不 ...

  5. C#有意思的算法题

    年底了,特贡献一些C#有意思的算法题   2013年,即将要过去了.屌丝C#程序员们拿到了年终奖不?是不是又想蠢蠢欲动了?是不是想通过跳槽来为自己实现加薪的梦想?好吧,跳槽之前还是做点准备吧,准备好C ...

  6. 关于Django模板引擎的研究

    原创博文,转载请注明出处. 以前曾遇到过错误Reverse for ‘*’ with arguments '()' and keyword arguments' not found.1其原因是没有给视 ...

  7. NetCat,在网络工具中有“瑞士军刀”美誉

    nc命令详解   NetCat,在网络工具中有“瑞士军刀”美誉,其有Windows和Linux的版本.因为它短小精悍(1.84版本也不过25k,旧版本或缩减版甚至更小).功能实用,被设计为一个简单.可 ...

  8. C add

    C++学习--应用篇(Windows/Linux)(书籍推荐及分享) 我将以平台划分,分别介绍Windows和Linux下个人认为的好书(与基础篇一样,大部分网络上都有电子版): 对于C++基础类的图 ...

  9. 对类sizeof的时候

    sizeof一个类的时候,都什么会被计算?静态成员会被计算进来么?如果这是一个子类,它的父类成员会被计算么? #include<stdio.h> #include<string.h& ...

  10. hdu2534-Score

    http://acm.hdu.edu.cn/showproblem.php?pid=2534 由题知, 每一个数据都可以由ax +by组成: ax1 + by1 - c x2 a - d y2 == ...