标签:
这篇博文写一下Android屏幕适配
1、图片文字适配
用eclipse开发环境生成一个android项目后,系统会给我们生成drawable-ldpi、drawable-mdpi、 drawable-hdpi、drawable-xhdpi,drawable-xxhdpi五个版本来适应不同的屏幕。
文件目录 | 屏幕类型 | 分辨率 | dpi | dp|px对应 | 尺寸 | 规范图标 |
drawable-ldpi | QVGA | 240*320 | 120 | 0.75X | 小 | 36*36 |
drawable-mdpi | HVGA | 320*480 | 160 | 1X | 中 | 48*48 |
drawable-hdpi | WVGA | 480*800 | 240 | 1.5X | 大 | 72*72 |
drawable-xhdpi | 720P | 720*1280 | 320 | 2X | 标清 | 96*96 |
drawable-xxhdpi | 1080P | 1080*1920 | 480 | 3X | 高清 | 144*144 |
文字转换:1sp = 2px;例如16sp = 32px,14sp = 28px
2、一些设计原则:
1) 在layout文件中设置控件尺寸时应采用fill_parent、wrap_content、match_parent和dp;
具体来说,设置view的属性android:layout_width和android:layout_height的值时,wrap_content,match_parent或dp比px更好,文字大小应该使用sp来定义。
2) 在程序的代码中不要出现具体的像素值,在dimens.xml中定义;
为了使代码简单,android内部使用pix为单位表示控件的尺寸,但这是基于当前屏幕基础上的。为了适应多种屏幕,android建议开发者不要使用具体的像素来表示控件尺寸。
3) 使用9-patch PNG图片
使用图片资源时,如果出现拉伸,因为图片处理的原因,会变形,导致界面走形。9-patch PNG图片也是一种标准的PGN图片,在原生PNG图片四周空出一个像素间隔,用来标识PNG图片中哪些部分可以拉伸、哪些不可以拉伸、背景上的边框位置等。
3、不同的layout
Android手机屏幕大小不一,有480x320, 640x360, 800x480……
让Application自动适应不同的屏幕,只需要在res目录下创建不同的layout文件夹,比如:layout-640x360、layout-800x480……所有的layout文件在编译之后都会写入R.java里,而系统会根据屏幕的大小自己选择合适的layout进行使用。
安卓手机型号,屏幕分辨率太多了,很难兼顾所有,可以选择一些有代表性的机型测试:小米,三星,华为,中兴。。。
标签:
原文地址:http://www.cnblogs.com/pear-lemon/p/4711373.html