Android屏幕适配;知识点+攻略+面试要点

引子

屏幕适配是android绕不开的一个问题。本文将屏幕适配的<代码>知识要点完整展现给各位读者。

正文大纲

<李>

android需要做屏幕适配的原因

<李>

基础知识点(很重要)

<李>

屏幕适配攻略

正文

android需要做屏幕适配的原因

android面世以来,谷歌开源了android系统,各家厂商各自为政,导致屏幕尺寸没有统一标准,屏幕的各种各样,也是各个厂家攀比的资本,导致android开发者想要用一套代码来适配所有的设备变得格外的困难,虽然出了dp单位来替代px,但是dp依然有它无法完全适配的地方。
这个也就是需要我们利用其他手段去完成适配的地方。

面试点

:关于屏幕适配,为什么有了<代码> dp 单位,依然要适配呢?
: <代码> dp> 原因是:谷歌<代码> 提供的<代码> dp 单位,在现有的android <代码> 市场环境下,是的,编码时的<代码> dp> px> 最就是:同样<代码> 300 dp> 后面会解释。

基础知识点(很重要)

以下概念很基础,但是也很重要,基础知识缺少一个环节,后面复杂的攻略理解起来就有障碍。

1。像素点

像素点是物理概念,用术语来解释,就是如下这段话:
<代码>通常所说的像素,就是CCD/CMOS上光电感应元件的数量,一个感光元件经过感光,光电信号转换,A/D转换等步骤以后,在输出的照片上就形成一个点,我们如果把影像放大数倍,会发现这些连续色调其实是由许多色彩相近的小方点所组成,这些小方点就是构成影像的最小单位“像素”(像素)。简而言之,像素就是手机屏幕的最小构成单元。

简单来说,像素点就是<代码>屏幕上色彩区域的最小单位>

2。分辨率

比如:1920 1080分辨率,表示当前设备的屏幕是由横向1080 纵向1920个像素点组合而成。

3。屏幕尺寸

屏幕对角线的长度。一般以英寸为单位,常见的屏幕尺寸有4.7 <代码> ,<代码> 5.5 ,<代码> 6.0

4。屏幕像素密度

: <代码>一平方英寸面积内,存在<代码>多少个> 同样是<代码> 1920 * 1080> 像素密度> : dpi(每英寸点)。
: 160 dpi。即:<代码>一平方英寸面积,存在<代码> 160>

5。屏幕尺寸,分辨率,像素密度三者之间的关系

<代码>像素密度> 屏幕尺寸和<代码>分辨率计算得出。
计算公式为:

 Android屏幕适配;知识点+攻略+面试要点

比如下图所示:

 Android屏幕适配;知识点+攻略+面试要点

我这里有一块1920 * 1080的5寸屏幕,通过上面的公式计算得出,它的像素密度为440 dpi。
可见,px是和像素密度有直接关系的像素单位。

6。密度无关的像素单位(dp,或者倾斜)

全英文为:密度独立像素。

使用dp作为长度单位,可以保证在不同的屏幕像素密度的手机上显示很相似的效果。
比如:使用<代码> 480 x800> 240 px> 320 x480> 160 px> 160 dp>

px和dp的换算公式为:<代码> px=dp * (dpi/160)

如果有一个屏幕密度为160 dpi的手机,在它上面,1 px=1 dp;
而如果是320 dpi的手机,则1 px=0.5 dp。
简而言之规律就是:

Android屏幕适配;知识点+攻略+面试要点