Android屏幕适配问题
来源:互联网 发布:荆州网络电视垄上行 编辑:程序博客网 时间:2024/06/07 20:02
1.各个尺寸单位的含义
- px(pixels)像素:手机屏幕上最小的显示单位
- in(英寸):屏幕的物理尺寸, 每英寸等于2.54厘米。
- pt(point):标准长度单位, 1pt=1/72英寸,用于印刷业,UI设计师会用,iOS字体单位,Android开发不涉及。
- dpi(dots per inch) :
1.打印分辨率,每英寸所能打印的点数,即打印精度
2.每英寸点数,即每英寸包含像素个数。 (这个含义其实是被广大的科技公司所应用,一般来说不应该使用dpi去定义屏幕的分辨率等问题,因为你会发现这个概念跟ppi的概念相同,但是科技大佬们的误用也使行业内很多人跟着用了,Android中的dpi其实就是ppi) - ppi(pixels per inch):每英寸所包含的像素数量
- dp(也即dip,device independent pixels)设备独立像素,这是Android中专门定义的一个虚拟的像素单位,就是为了应对Android碎片化问题而创造出使用的,它是根据屏幕大小和密度动态渲染的,计算公式:
px = dp * ( dpi / 160)
sp(Scale-independent Pixels):用于表示字体大小,其概念与dp是一致的,也是为了保持设备无关而使用的
注:一开始我也搞不清出dpi和ppi的区别但是看了这篇文章之后我就了解了大概,从设备上说dpi=ppi,只是使用习惯的问题,只是dpi一开始是用在印刷行业,如果上面的英文看不懂,可以看这篇翻译:这里是翻译
2.如何计算不同尺寸的手机的PPI
- 其实在理解了ppi的概念之后我们计算手机的ppi就非常简单了,我们知道了手机的尺寸(也就是对角线长度)和分辨率之后,通过勾股定理就能计算出手机的ppi,这里以三星s8为例(说实话我给这样一个例子我觉得很智障,因为ppi参数网上都有,捂脸):
1.计算屏幕高宽比:2960:1440=18.5:9
2.计算出高或者宽的尺寸(这里以宽度为例):9*5.8/√18.5²+9² ~2.53 in
3.计算ppi:1440 pixel/2.53 in ~ 569 ppi
3.不同PPI分辨率下该如何放置不同大小的图片呢
1.我们在做屏幕适配时可以把不同大小的图片添加到不同的drawable- dpi文件夹下进行适配,但是网上这样的资料很少,我都搞不清楚到底什么ppi范围对应什么drawable -dpi文件夹,但是经过我的测试我总结出来了其对应关系:- 120-160ppi:mdpi
- 160-240ppi:hdpi
- 240-320ppi:xhdpi
- 320-480ppi:xxhdpi
- 480-640ppi :xxxhdpi
注:虽然其对应关系不是绝对的,具体还要看手机的尺寸大小,但是目前而言手机屏幕的大小比例基本是16:9,所以没什么问题。
常见的设备屏幕尺寸比例和屏幕密度(density)见GOOGLE官网:常见屏幕分辨率和密度
4.GOOGLE的百分比库的使用
- 暂时没有使用,以后添加
阅读全文
0 0
- android 屏幕适配问题
- android 屏幕适配问题
- android 屏幕适配问题
- android 屏幕适配问题
- android 屏幕适配问题
- android 屏幕适配问题
- Android屏幕适配问题
- android 屏幕适配问题
- android 屏幕适配问题
- android 屏幕适配问题
- Android 屏幕适配问题
- android 屏幕适配问题
- android 屏幕适配问题
- android 屏幕适配问题
- android 屏幕适配问题
- android 屏幕适配问题
- android 屏幕适配问题
- android 屏幕适配问题
- Python 爬虫简单实战之CSDN
- Python初学笔记
- CDQ分治--模板 BZOJ 3262--陌上花开【三维偏序】
- bootstrap-markdown使用
- c#winform选择文件,文件夹,打开指定目录方法
- Android屏幕适配问题
- Android的数据存储之SharedPreference与文件File
- Array----- 120. Triangle(计算路径最小和)
- LeetCode 448. Find All Numbers Disappeared in an Array
- 前端、Vue.js和SVG的一些知识
- 实用的60个CSS代码片段
- tomcat 提交war任务及idea配置tomcat
- Ubuntu 16.04 安装Sublime Text 3
- 索引的应用