上周做的任务主要就是适配了,虽然网上有很多大神写的博客,但这里自己还是做一个总结,记性再好也有忘记的时候。
一般设计人员切的图是按照PX尺寸设计的,我们在适配机型的时候需要将其运用到不同分辨类型的设备中。我们常用到的dpi 有320,240,160等等,而且还有什么dp,px 这些。我们需要搞清楚一些基本的概念。
什么是dp,px,dip ?
关于dip 和dp 的概念可以看这里:关于android的单位dp,dip
dp 和dip其实是等同的,谷歌推荐使用的是dp,dp 是一个虚拟的单位,dip 是屏幕无关密度。
px 是像素点。px=dp*(dip/160),也就是在160dip下1dp=1px.
手机dip 的计算公式是:屏幕密度=对角线px/手机的尺寸 ,手机的尺寸即对角线的长度。
密度类型 代表的分辨率(px) 屏幕像素密度(dpi)
低密度(ldpi) 240x320 120
中密度(mdpi) 320x480 160
高密度(hdpi) 480x800 240
超高密度(xhdpi) 720x1280 320
超超高密度(xxhdpi) 1080x1920 480
适配的方法
1、布局推荐使用RelativeLayout
2、图片如果没有各个分辨率下的切图,可以使用点9图片。
3、使用资源限定符,比如最小宽度
4、将所有的尺寸数据放到dimens.xml里面,然后每个分辨率对应一个dimens.xml,根据不同的分辨率配置不同的dimens.xml文件