一谈到Android开发,就少不了拉扯到屏幕适配问题,为什么要屏幕适配?原因很简单,因为Android手机相关设备款式型号太多太多(据统计,2012年支持Android的设备共有3997种,2013年达到11868种,到2014年时高达18796种,现在会更多),不同的设置屏幕大小不同,如果我们用单一的方式去就对待所有的手机,那结果可想而知!所以我们需要针对不同设备做屏幕适配。
谈到尺寸,我们就要涉及到相关的概念:
1,屏幕尺寸:指设备屏幕对角线的长度,一般以英寸(inch)为单位,
2,屏幕分辨率:指屏幕在横纵方向上的像素点数,单位是我们常用的px,1px=1像素点,我们手机通常以纵向像素*横抽像素来表示,如1920*1080,
3,屏幕像素密度:指单们尺寸(每英寸)上的像素点数,单位是dpi(dot per inch),像素密度与屏幕的尺寸和分辨率有关,
4,dp和dip:dp是Density Independent Pixels的缩写,指与屏幕密度无关的像素,以160dpi为基准,1dip=1px,
5,sp:是Scale Independent Pixels的缩写,指可以根据 文字大小 首选项进行缩放的像素单位,一般用与字体大小 设置,也是Google所推荐的,
6,我们在开发app时,官方推荐使用的字体大小分别有:12sp,14sp,18sp,22sp,不推荐使用奇数大小的字体。
另外我们在项目中存在几个图片文件夹区别:
名称 像素密度范围
drawable-mdpi 120dpi-160dpi
drawable- hdpi 160dpi-240dpi
drawable-xhdpi 240dpi-320dpi
drawable-xxhdpi 320dpi-400dpi
现在也出现了xxxhdpi的屏幕,对应的像素范围400dpi-480dpi
屏幕适配解决方案: