2026/10/20 1:33:56
网站建设
项目流程
屏幕参数
尺寸:
- 屏幕的对角线的长度,单位是英寸,1英寸=2.54厘米
像素:
- 以屏幕左上角为原点,X方向向右,Y轴方向向下,屏幕上的显示单元(像素)以行列式整齐排列
- 一个像素点,由红绿蓝三种像素点组成的
- 红绿蓝像素点中间的黑色区域,则叫做“格栅”,是为了防止像素点互相干扰的
屏幕分辨率:
- 单位面积中像素点的数量,我们通常用PPI这个量词(像素/英寸),比如: 400PPI = 在1英寸的屏幕尺寸中,包含了400个单位像素。
亮度:
- 最高亮度
- 对比度:屏幕显示的最亮白色与最暗黑色之间的亮度比值
- HDR 指的是高动态范围(High dynamic range),对应的显示技术是 SDR(标准动态范围,Standard dynamic range)。能够同时呈现更丰富的亮部细节和暗部细节,不至于亮部过曝、暗部太暗。
色彩:
- 色域:就是屏幕能显示多少色彩
- 色准:屏幕对色彩还原的准确度
- 色温
Android 屏幕
- dp:跟dip是同一个概念,基于屏幕密度抽象单位,会随着屏幕的密度进行自动的大小调整。
- dpi: 屏幕像素密度, 单位英寸上像素点的数量。
- sp:专用于文字大小的设置,可根据字体大小首选项进行缩放。
- google官方用的词是approximately,比如ldpi是值近似等于120dpi
- android.util.TypedValue类提供了一个函数,提供所有单位与px的换算关系
- dpi=√(X²+Y²)/Z (其中 X:纵向的像素个数;Y:横向的像素个数;Z:屏幕尺寸)
- 当前设备的dpi/160dpi = scale值
- pxs = dps * (dpi/160)
应用
- ldpi( 低)、mdpi(中)、hdpi(高)、xhdpi(超高)、xxhdpi(超超高)和xxxhdpi(超超超高)遵循 3:4:6:8:12:16 的缩放比率
- 使用限定符
- 使用尺寸限定符。res/layout-large目录下布局文件会在属于较大屏幕(例如 7 英寸或更大的平板电脑)的设备上使用
- 使用最小宽度限定符。 Android 3.2 版本引入 res/layout-sw600dp,最小宽度大于等于 600 dp 的设备,系统会选择 layout-sw600dp/main.xml(双面板)布局
- 使用布局别名。res/values-large/layout.xml,res/values-sw600dp/layout.xml定义布局别名,引用统一布局
- 使用屏幕方向限定符。res/values/layouts.xml,res/values-sw600dp-land/layouts.xml,res/values-sw600dp-port/layouts.xml,res/values-large-land/layouts.xml,res/values-large-port/layouts.xml
- 使用wrap_content、match_parent、weight,尽量不要硬编码
- 使用相对布局,禁用绝对布局
- 关于字体,字体大小 sp,但是如果字体呈现在一个固定高度的矩形框中时,再能调整字体大小的手机上时,可能会展示不全(展现字体的外部图片,背景等尽量不要写死高度)。
- .9 图片只能拉伸不能压缩,压缩会导致图片变形,因此在作图过程中要确定一下图片的最小尺寸,(比如,给出一个确定高度的矩形区域,里面放置一个初始高度大于矩形的 .9 图片,会导致图片压缩)。
- 特殊的文件夹res/drawable-nodpi/,放在里面的资源,不会被放大或者压缩,按照原大小展示