Android屏幕尺寸适配
本文参考:http://www.jianshu.com/p/ec5a1a30694b
如今,安卓手机已经相当普及,作为安卓开发者,面对这些琳琅满目的设备,就必须要考虑到它们的适配问题。
- 相关单位的概念
- 屏幕尺寸适配解决方案
1-相关单位的概念
- 屏幕尺寸
概念:手机的对角线的物理长度
单位:英寸(inch),1英寸=2.54cm - 屏幕分辨率
概念:手机在纵横方向上的点数和,一般描述为宽*高,如320*480
单位:px(pixel),1px=1像素点 - 屏幕像素密度
概念:每英寸的像素点数
单位:dpi(dots per ich) 密度无关像素
概念:density-independent pixel,叫dp或dip,与终端上的实际物理像素点无关。
单位:dp,可以保证在不同屏幕像素密度的设备上显示相同的效果dp与px单位的转换:在Android中,规定以160dpi(即屏幕分辨率为320x480)为基准:1dp=1px
独立比例像素
概念:scale-independent pixel,叫sp或sip
单位:sp推荐使用12sp、14sp、18sp、22sp作为字体设置的大小,不推荐使用奇数和小数,容易造成精度的丢失问题;小于12sp的字体会太小导致用户看不清
2-屏幕适配解决方案
使得布局自适应屏幕尺寸
- 由于绝对布局的适配性不佳,因此很少使用绝对布局。
RelativeLayout,相对排列的方式,灵活性强
利用好”wrap_content”和”match_parent”
- 由于绝对布局的适配性不佳,因此很少使用绝对布局。
根据屏幕的配置来加载相应的UI布局
- 通过配置限定符使得程序在运行时根据当前设备的配置(屏幕尺寸)自动加载合适的布局资源
限定符类型:尺寸限定符、最小宽度限定符、布局别名、屏幕方向限定符。
- 通过配置限定符使得程序在运行时根据当前设备的配置(屏幕尺寸)自动加载合适的布局资源
使得布局组件自适应屏幕尺寸
使用”wrap_content”、”match_parent”和”weight“来控制视图组件的宽度和高度
使得图片资源自适应屏幕尺寸
使用自动拉伸位图:Nine-Patch的图片类型