支持屏幕具有不同的分辨率,尺寸

术语和概念

屏幕尺寸

实际物理尺寸,以屏幕对角线测量。为简单起见,Android 将所有实际屏幕尺寸分为四种通用尺寸:小尺寸,普通尺寸,大尺寸和超大尺寸。

屏幕密度

屏幕物理区域内的像素数量; 通常称为 dpi(每英寸点数)。例如,与正常密度屏幕相比,密度屏幕在给定物理区域内具有更少的像素。为简单起见,Android 将所有实际屏幕密度分为六种通用密度:低,中,高,超高,超高和超额外超高。

取向

从用户的角度看屏幕的方向。这可以是横向或纵向,这意味着屏幕的宽高比分别为宽或高。请注意,默认情况下,不仅不同的设备在不同的方向上运行,但是当用户旋转设备时,方向可以在运行时更改。分辨率屏幕上的物理像素总数。添加对多个屏幕的支持时,应用程序无法直接使用分辨率; 应用程序应仅关注屏幕尺寸和密度,如通用尺寸和密度组所指定。与密度无关的像素(dp)在定义 UI 布局时应使用的虚拟像素单元,以与密度无关的方式表达布局尺寸或位置。与密度无关的像素相当于 160 dpi 屏幕上的一个物理像素,这是系统为中等密度屏幕假定的基线密度。在运行时,系统根据使用的屏幕的实际密度,根据需要透明地处理 dp 单元的任何缩放。dp 单位到屏幕像素的转换很简单:px = dp *(dpi / 160)。例如,在 240 dpi 屏幕上,1 dp 等于 1.5 个物理像素。在定义应用程序的 UI 时,应始终使用 dp 单位,以确保在具有不同密度的屏幕上正确显示 UI。根据使用中屏幕的实际密度。dp 单位到屏幕像素的转换很简单:px = dp *(dpi / 160)。例如,在 240 dpi 屏幕上,1 dp 等于 1.5 个物理像素。在定义应用程序的 UI 时,应始终使用 dp 单位,以确保在具有不同密度的屏幕上正确显示 UI。根据使用中屏幕的实际密度。dp 单位到屏幕像素的转换很简单:px = dp *(dpi / 160)。例如,在 240 dpi 屏幕上,1 dp 等于 1.5 个物理像素。在定义应用程序的 UI 时,应始终使用 dp 单位,以确保在具有不同密度的屏幕上正确显示 UI。


单位

  • PX

    像素 - 对应于屏幕上的实际像素。

  • 英寸 - 基于屏幕的物理尺寸。1 英寸= 2.54 厘米

  • 毫米

    毫米 - 基于屏幕的物理尺寸。

  • PT

    点数 - 基于屏幕物理尺寸的 1/72 英寸。

  • dp 或 dip

    密度无关像素 - 基于屏幕物理密度的抽象单元。这些单位相对于 160 dpi 的屏幕,因此一个 dp 是 160 dpi 屏幕上的一个像素。dp 与像素的比率将随着屏幕密度而变化,但不一定是成正比的。注意:编译器同时接受 dipdp,但 dp 更符合 sp

  • SP

    与比例无关的像素 - 这与 dp 单位类似,但它也可以通过用户的字体大小首选项进行缩放。建议你在指定字体大小时使用此单位,以便根据屏幕密度和用户偏好调整它们。从了解 Android 中的密度独立性:

单元 描述 每个物理英寸的单位 密度独立 每个屏幕上的物理尺寸相同
px 像素 不定 没有 没有
in 英寸 1
mm 毫米 25.4
pt 72
dp 密度无关像素 〜160 没有
sp 缩放独立像素 〜160 没有

参考文献: