屏幕适配

像素(px):像素就是手机屏幕的最小构成单元,px = 1像素点 一般情况下UI设计师的设计图会以px作为统一的计量单位。

分辨率:手机在横向、纵向上的像素点数总和 一般描述成 宽*高 ,即横向像素点个数 * 纵向像素点个数(如1080 x 1920),单位:px。

屏幕尺寸:手机对角线的物理尺寸。单位 英寸(inch),一英寸大约2.54cm 常见的尺寸有4.7寸、5寸、5.5寸、6寸。

屏幕像素密度(dpi):每英寸的像素点数,例如每英寸内有160个像素点,则其像素密度为160dpi,单位:dpi(dots per inch)。

标准屏幕像素密度(mdpi): 每英寸长度上还有160个像素点(160dpi),即称为标准屏幕像素密度(mdpi)。

密度无关像素(dp):与终端上的实际物理像素点无关,可以保证在不同屏幕像素密度的设备上显示相同的效果,是安卓特有的长度单位,dp与px的转换:1dp = (dpi / 160 ) * 1px。

独立比例像素(sp):字体大小专用单位 Android开发时用此单位设置文字大小,推荐使用12sp、14sp、18sp、22sp作为字体大小

px:即像素,1px代表屏幕上一个物理的像素点;
Dp. 设备无关像素
Android系统定义了四种像素密度:低(120dpi)、中(160dpi)、高(240dpi)和超高(320dpi),它们对应的dp到px的系数分别为0.75、1、1.5和2,这个系数乘以dp长度就是像素数。
例如界面上有一个长度为“80dp”的图片,那么它在240dpi的手机上实际显示为80x1.5=120px,在320dpi的手机上实际显示为80x2=160px。

https://www.cnblogs.com/wangjiafang/p/4433912.html
sp除了受屏幕密度影响外,还受到用户的字体大小影响
通常情况下,建议使用sp来跟随用户字体大小设置

适配方案
适配的最多的3个分辨率:1280720,19201080,800*480。
解决方案:
对于Android的屏幕适配,我认为可以从以下4个方面来做:
1、布局组件适配

请务必使用密度无关像素 dp 或独立比例像素 sp 单位指定尺寸。
使用相对布局或线性布局,不要使用绝对布局
使用wrap_content、match_parent、权重
使用minWidth、minHeight、lines等属性

dimens使用:
不同的屏幕尺寸可以定义不同的数值,或者是不同的语言显示我们也可以定义不同的数值,因为翻译后的长度一般都不会跟中文的一致。此外,也可以使用百分比布局或者AndroidStudio2.2的新特性约束布局。

2、布局适配
使用限定符(屏幕密度限定符、尺寸限定符、最小宽度限定符、布局别名、屏幕方向限定符)根据屏幕的配置来加载相应的UI布局。
3、图片资源适配
使用自动拉伸图.9png图片格式使图片资源自适应屏幕尺寸。
普通图片和图标:
建议按照官方的密度类型进行切图即可,但一般我们只需xxhdpi或xxxhdpi的切图即可满足我们的需求;
4、代码适配:
在代码中使用Google提供的API对设备的屏幕宽度进行测量,然后按照需求进行设置。
5、接口配合:
本地加载图片前判断手机分辨率或像素密度,向服务器请求对应级别图片。

Android 目前最稳定和高效的UI适配方案
https://blog.csdn.net/weixin_44339238/article/details/102575586

ANDROIDAUTOSIZE今日头条适配方案 ===现在项目中使用的
https://www.freesion.com/article/1120735383/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值