由于安卓是开源的,所以产生了各种各样的机型,屏幕适配问题随之而来。
1.首先了解几个重要概念
1.1屏幕尺寸/屏幕分辨率/屏幕像素密度
屏幕尺寸:屏幕对角线长度,单位是英寸,1英寸=2.54厘米
屏幕分辨率:屏幕纵横线上的像素点数,单位是px,1px=一个像素点
屏幕像素密度:屏幕每英寸上的像素点数
1.2dp/dpi/px/sp
px:屏幕分辨率的基本单位,一般美工作图以px为单位。
dp/dip:都是Density Independent Pixels的缩写,即密度无关像素(每英寸px数/160)。dpi为屏幕像素密度,假如1英寸内有160个像素,那么屏幕像素密度为160dpi。我们一般以160dpi为基准做dp和px的换算,假如说屏幕像素密度为160dpi,那么1dp=1px。如果说屏幕密度为320dpi,那么1dp=2px,以此类推。
sp:与dp类似,可以根据文字大小首选项进行放缩,通常用于设置文字大小。
1.3mdpi/hdpi/xhdpi/xxhdpi
用来修饰不同像素密度下drawable和values文件。
mdpi:160dpi
hdpi:240dpi
xhdpi:320dpi
xxhdpi:480dpi
xxxhdpi:640dpi
各种尺寸在不同的文件夹下应按照2:3:4:6:8进行缩放。
2.适配方案
2.1多套dimen文件
2.2网上有AutoLayout
2.3https://github.com/yatoooon/AndroidScreenAdaptation
本文深入探讨安卓设备屏幕适配问题,详细解释了屏幕尺寸、分辨率、像素密度等概念,介绍了dp、dpi、px、sp等单位及其换算方法,并提供了mdpi至xxxhdpi的资源缩放比例。此外,还分享了多种屏幕适配方案,如多套dimen文件、AutoLayout等,旨在帮助开发者解决安卓应用在不同屏幕尺寸下的显示问题。
265

被折叠的 条评论
为什么被折叠?



