Android分辨率适配layout布局的问题
来源:互联网 发布:俊平护肤品怎么样知乎 编辑:程序博客网 时间:2024/05/21 20:51
android3.0之前,适配指定分辨率,将layout文件夹做如下命名:
layout layout-1024x768 layout-1024x600 layout-1280x768
android3.0以后,需将高度减去48像素,即底部状态栏的高度:
layout layout-1024x720 layout-1024x552 layout-1280x720
横屏版本的话,中间加上land,例如: layout-land-1024x720
但是需要注意
layout这个原来的文件夹及资源一定要存在,否则会出现错误
同时在命名layout文件夹时,大数放在小数的前面,否则会报错
关于系统的资源配置的目录(我只列出一些大概,默认项目会有一些资源配置目录)
Android系统支持多配置资源文件,我们可以追加新的资源目录到你的Android项目中。命名规范: 资源名字-限制符
layout
默认中等屏幕
layout-small
小屏幕
layout-large
大屏幕
layout-xlarge
特大屏幕
layout-land
横屏
layout-port
竖屏
drawable
默认中等密度
drawable-hdpi
高密度 ~240dpi
drawable-mdpi
中等密度 160dpi
drawable-xhdpi
更高密度 ~320dpi
drawable-nodpi
所有密度资源,无论什么密度屏幕都会适配。
drawable-tvdpi
介于mdpi~hdpi 约213dpi 主要应用在电视。
注:如果没有指定横屏或竖屏,则上面的布局和位图都适配横竖屏。如果要指定横屏,例如:drawable-land-hdpi竖屏drawable-port-hdpi,还有关键是drawable-xlarge和layout-xlarge,对api level都要求在9之上,等于说,你用android2.2系统的平板或者手机根本不匹配layout-xlarge。因为api level是8。drawable-tvadpi这个api等级需要13以上。
其实上面的layout-large这个目录其实是个范围。当系统根据当前屏幕的大小和密度,决定程序应该匹配那个目录。你也可以单独定制某些不符合谷歌标准的山寨版layout-l024x600(中间的符合是英文下的x字母),其中1024和600的单位是dp。你可以根据你设备的分辨率和密度,来判断你的设备需要定义那个文件。
但是,官方推荐使用尺寸来表示资源layout-large,不推荐使用分辨率layout-1024*600。
建议大家多看文档,官方说明:
xlarge screens are at least 960dp x 720dp
large screens are at least 640dp x 480dp
normal screens are at least 470dp x 320dp
small screens are at least 426dp x 320dp
上面是定义广义大小布局资源适配的一个范围,大家可以根据自己的设备知道系统会匹配那个文件的布局。
如果手上有个山寨华为的卖的比较火的mediapad,大家知道分辨率1280*800 密度尺寸7寸
通过勾股定了和分辨率可以得出其密度为215.69。然后根据dp=px/(dpi/160),可以得出个范围593.471。所以这个设备系统会匹配layout-large这个资源布局文件。
- Android分辨率适配layout布局的问题
- Android分辨率适配layout布局的问题
- Android分辨率适配layout布局的问题
- Android分辨率适配layout布局的问题
- Android分辨率适配layout布局的问题
- Android分辨率适配layout布局的问题
- Android分辨率适配layout布局的问题
- android中layout布局使用与多种分辨率问题
- Android多分辨率布局,多个layout
- 适应不同分辨率屏幕的问题 android layout
- Android的布局Layout
- Android布局layout如何适应不同的分辨率和不同大小的屏幕
- Android自适应不同分辨率或不同屏幕大小的layout布局(横屏|竖屏)
- Android自适应不同分辨率或不同屏幕大小的layout布局(横屏|竖屏)
- android屏幕自适应不同分辨率或不同屏幕大小的layout布局
- Android自适应不同分辨率或不同屏幕大小的layout布局
- Android自适应不同分辨率或不同屏幕大小的layout布局(横屏|竖屏)
- 如何让Android自适应不同分辨率或不同屏幕大小的layout布局
- linux(centos)下搭建Storm(0.8.1)集群(很长,但很详细!!!)
- 操作系统中堆和栈的区别
- Windows下安装storm-0.9.1
- python编码规范
- Cocos2d-X截屏并保存成png
- Android分辨率适配layout布局的问题
- 楼教主的ACM心路历程
- maven编译提示软件包找不到符号
- 解读Unity中的CG编写Shader系列3——表面剔除与剪裁模式
- 安装apk的时候总是提示 INSTALL_PARSE_FAILED_NO_CERTIFICATES 错误
- java.lang.AbstractMethodError: javax.servlet.jsp.JspFactory.getJspApplicationContext(Ljavax/servlet/
- 细谈select函数(C语言)
- CAKeyframeAnimation实现晃动
- 1046 Color Me Less