位置: 编程技术 - 正文
推荐整理分享android 常见分辨率(mdpi、hdpi 、xhdpi、xxhdpi )及屏幕适配注意事项(android主流分辨率),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:安卓机型分辨率,android主流分辨率,安卓机型分辨率,安卓机型分辨率,安卓手机平台主流分辨率有哪些,android分辨率统计,android分辨率统计,常见的android分辨率适配,内容如对您有帮助,希望把文章链接给更多的朋友!
1 Android手机目前常见的分辨率
1.1 手机常见分辨率:
4:3VGA * (Video Graphics Array)QVGA * (Quarter VGA)HVGA * (Half-size VGA)SVGA * (Super VGA)
5:3WVGA * (Wide VGA)
:9FWVGA * (Full Wide VGA)HD * High DefinitionQHD *p * 标清p * 高清
手机:iphone 4/4s * (3:2)iphone5 *小米1 *(FWVGA)小米2 *
1.2 分辨率对应DPI"HVGA mdpi"
"WVGA hdpi ""FWVGA hdpi ""QHD hdpi ""P xhdpi""P xxhdpi "
2 屏幕适配的注意事项2.1 基本设置
2.1.1 AndroidManifest.xml设置
在中Menifest中添加子元素
android:anyDensity="true"时,应用程序安装在不同密度的终端上时,程序会分别加载xxhdpi、xhdpi、hdpi、mdpi、ldpi文件夹中的资源。
相反,如果设为false,即使在文件夹下拥有相同资源,应用不会自动地去相应文件夹下寻找资源:
1) 如果drawable-hdpi、drawable-mdpi、drawable-ldpi三个文件夹中有同一张图片资源的不同密度表示,那么系统会去加载drawable_mdpi文件夹中的资源;
2) 如果drawable-hpdi中有高密度图片,其它两个文件夹中没有对应图片资源,那么系统会去加载drawable-hdpi中的资源,其他同理;
3) 如果drawable-hdpi,drawable-mdpi中有图片资源,drawable-ldpi中没有,系统会加载drawable-mdpi中的资源,其他同理,使用最接近的密度级别。
2.1.2 横屏竖屏目录区分1) drawable
a) drawable-hdpi该图片即适用于横屏,也适用于竖屏;
b) drawable-land-hdpi,当屏幕为横屏,且为高密度时,加载此文件夹的资源;
c) drawable-port-hdpi,当屏幕为竖屏,且为高密度时,加载此文件夹中的资源。其他同理。
2) layout
在res目录下建立layout-port和layout-land两个目录,里面分别放置竖屏和横屏两种布局文件,以适应对横屏竖屏自动切换。
2.2 多屏幕适配的4条黄金原则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) 不使用AbsoluteLayout(android1.5已废弃) ,可以使用RelativeLayout替代;
4) 对不同的屏幕提供合适大小的图片。
不同大小屏幕用不同大小的图片,low:medium:high:extra-high图片大小的比例为3:4:6:8;举例来说,对于中等密度(medium)的屏幕你的图片像素大小为×,那么低密度(low)屏幕的图片大小应为×,高(high)的为×,extra-high为×。
2.3 使用9-patch PNG图片使用图片资源时,如果出现拉伸,因为图片处理的原因,会变形,导致界面走形。9-patch PNG图片也是一种标准的PGN图片,在原生PNG图片四周空出一个像素间隔,用来标识PNG图片中哪些部分可以拉伸、哪些不可以拉伸、背景上的边框位置等。
“上、左”定义可拉伸区域
“右、下”定义显示区域,如果用到完整填充的背景图,建议不要通过android:padding来设置边距,而是通过9-patch方式来定义。
Android SDK中提供了编辑9-Patch图片的工具,在tools目录下draw9patch.bat,能够立刻看到编辑后的拉伸效果,也可以直接用其他图片编辑工具编辑,但是看不到效果。
2.4 不同的layoutAndroid手机屏幕大小不一,有x, x, x……
怎样才能让Application自动适应不同的屏幕呢?
其实很简单,只需要在res目录下创建不同的layout文件夹,比如:layout-x、layout-x……所有的layout文件在编译之后都会写入R.java里,而系统会根据屏幕的大小自己选择合适的layout进行使用。
2.5 测试验证一般使用AVD Manager创建多个不同大小的模拟器,如果条件具备,也可以直接用真机测试,这个比较靠谱。
3 参考资料
解决android开发在大屏手机图片出现内存溢出 说明这个问题,首先来看一下实际的内存占用情况。我们创建一个最简单的android应用,一个Activity,内容是一张图片,图片放在drawable-hdpi目录下。布局
【Java同步块】 原文链接作者:JakobJenkov译者:李同杰Java同步块(synchronizedblock)用来标记方法或者代码块是同步的。Java同步块用来避免竞争。本文介绍以下内容:Java
批处理一键打包apk 经过了4-5个小时的激烈斗争终于把批处理整出来了,修改里面的链接地址,然后双击即可打包。批处理会自动替换两个common文件中的地址,并调用ant命
标签: android主流分辨率
本文链接地址:https://www.jiuchutong.com/biancheng/379646.html 转载请保留说明!友情链接: 武汉网站建设