APP兼容不同的设备之适配不同的屏幕
2017-02-27 16:12
309 查看
在适配不同的屏幕时,主要针对的是不同设备的尺寸大小和分辨率、同一设备的横屏和竖屏。
尺寸大小普遍的分为4类:small(小尺寸)、normal(普通尺寸)、large(大尺寸)、xlarge(超大尺寸)
分辨率普遍分为4类:ldpi(低精度)、mdpi(中精度)、hdpi(高精度)、xhdpi(超高精度)
与适配不同区域的语言类似,在APP中应该包含一些所需要的可选资源,针对不同的屏幕声明对应的UI布局资源layout和图片资源bitmap,然后将这些可选的资源存放在独立的对应的目录中。
在程序运行时,Android会根据屏幕尺寸的大小自动的测量layout文件,确保不同屏幕尺寸的XML文件存放于对应的目录中,并且XML文件要具有唯一性,不同目录下的XML文件 文件名 相同,内容不同。
在activity中直接引用资源文件即可:
支持横屏尺寸的layout资源:
ldpi:0.75
mdpi:1.0(这个是标准)
hdpi:1.5
xhdpi:2.0
也就是说,如果针对中精度mdpi的图片为48 X 48,那么低精度ldpi的图片为36 X 36,高精度hdpi的图片为72 X 72,超高精度的图片为96 X 96,然后将图片存入对应的mipmap资源目录中:
当使用@mipmap/ic_launcher.png引用图片资源时,系统将根据对应设备屏幕的分辨率选择合适的图片资源bitmap。
适配不同的系统版本,请关注我的下一篇文章---APP兼容不同的设备之适配不同的系统版本
尺寸大小普遍的分为4类:small(小尺寸)、normal(普通尺寸)、large(大尺寸)、xlarge(超大尺寸)
分辨率普遍分为4类:ldpi(低精度)、mdpi(中精度)、hdpi(高精度)、xhdpi(超高精度)
与适配不同区域的语言类似,在APP中应该包含一些所需要的可选资源,针对不同的屏幕声明对应的UI布局资源layout和图片资源bitmap,然后将这些可选的资源存放在独立的对应的目录中。
UI布局资源layout
根据所需要支持的屏幕尺寸大小创建唯一的XML文件,每一种资源文件存放在相应的资源目录中,资源目录以layout-<屏幕尺寸大小>命名。例如,超大尺寸屏幕目录layout-xlarge,针对超大尺寸屏幕有一资源文件activity_main.xml,那么该XML文件就应该存放在res/layout-xlarge/目录中。在程序运行时,Android会根据屏幕尺寸的大小自动的测量layout文件,确保不同屏幕尺寸的XML文件存放于对应的目录中,并且XML文件要具有唯一性,不同目录下的XML文件 文件名 相同,内容不同。
在activity中直接引用资源文件即可:
支持横屏尺寸的layout资源:
图片资源bitmap
为4中普遍存在的分辨率提供对应的图片资源bitmap,根据原始的矢量图片资源,按以下比例生成不同密度的图像:ldpi:0.75
mdpi:1.0(这个是标准)
hdpi:1.5
xhdpi:2.0
也就是说,如果针对中精度mdpi的图片为48 X 48,那么低精度ldpi的图片为36 X 36,高精度hdpi的图片为72 X 72,超高精度的图片为96 X 96,然后将图片存入对应的mipmap资源目录中:
当使用@mipmap/ic_launcher.png引用图片资源时,系统将根据对应设备屏幕的分辨率选择合适的图片资源bitmap。
适配不同的系统版本,请关注我的下一篇文章---APP兼容不同的设备之适配不同的系统版本
相关文章推荐
- 兼容不同的设备(2)---适配不同的屏幕
- APP兼容不同的设备之适配不同的系统版本
- APP兼容不同的设备之适配不同的语言
- Android兼容不同的设备之适配不同的系统版本
- android开发如何更好的解决适配不同屏幕大小移动设备的问题
- 一个APP在不同的项目中适配的一些笔记(支持多种屏幕)
- 兼容不同的设备(1)---适配不同的语言
- iOS 的 APP 在系统中如何适配不同的屏幕的尺寸
- android中如何使用一张图片适配不同屏幕尺寸的APP启动引导页
- 兼容不同的设备(2)---适配不同的系统版本
- APP支持不同的设备 之 支持不同屏幕
- 移动端h5页面不同尺寸屏幕适配兼容方法
- iOS:界面适配(三)--iPhone不同机型或设备不同尺寸适配(屏幕适配)和系统适配
- appnium之app定位方法:坐标定位(可以兼容不同手机屏幕),新建测试交流群651385084
- 一步步教你使用rem适配不同屏幕的移动设备
- App开发屏幕适配
- Android屏幕适配解析 - 详解像素,设备独立像素,归一化密度,精确密度及各种资源对应的尺寸密度分辨率适配问题
- iOS 不同机型屏幕适配
- APP UI屏幕适配
- 移动端适配不同设备(缩放效果)