Android 关于资源适配

一. 关于图片资源

图片宽高 不要固定大小,在小屏幕和大屏幕,不同分频率上 ,采用不同的图片,这个要美工切图的。

不同的分辨率,界面的长宽比不一致,需要不同规格的图片
在drawable-hdpi,drawable-ldpi,drawable-mdpi 中放不同分辨率的图片
注:为了减小整个应用程序安装包大小,选用最高分辨率适配,特殊界面图片特殊处理

二. 关于布局适配。

Android手机屏幕大小不一,有480x320,640x360,800x480.怎样才能让App自动适应不同的屏幕呢?
其实很简单,只需要在res目录下创建不同的layout文件夹,比如:layout-640x360,layout-800x480,所有的layout文件在编译之后都会写入R.java里,而系统会根据屏幕的大小自己选择合适的layout进行使用。

1. 尽量不要使用绝对布局

2. 尽量使用match_parent,不要使用fill_parent,在布局中设置长度的时候,最好
   使用Wrap-content,match-parent,文本要使用sp,像素要使用dip/dp。

3. 能够使用权重的地方尽量使用权重(android:layout_weight)。

4. 如果是纯色背景,尽量使用android的shape 自定义

5. 如果需要在特定分辨率下适配,可以在res目录上新建layout-HxW.xml的文件夹。

比如要适配1080*1800的屏幕(魅族MX3采用此分辨率)则新建layout-
1800x1080.xml的文件夹,然后在下面定义布局。Android系统会优先查找分辨率
相同的布局,如果不存在则换使用默认的layout下的布局。

不同分辨率,界面的字体大小,字体等需要不同的样式,且需要动态生成的情况下,
需要把不同分辨率的配置信息保存到应用中。
例子:
在RES里创建 values-480x320 values-800x400  value-1280x720
并在创建的文件夹中分别创建dimens.xml
<dimen name="Text_size">30px</dimen>
在程序中直接调用R.dimen.Text_size
int sizeOfText = (int) this.getResources().getDimension(R.dimen.Text_size);
注:实际应用发现,字体大小适配时
比如只适配了如下屏幕字体
values-480x320 values-800x480  value-1280x720
当出现手机屏幕分辨率为 854x480时会自动找最大字体适配 (value-1280x720)
总结:如果字体800x480以上没有适配,手机自动按最大分辨率适配.

Android 关于资源适配,布布扣,bubuko.com

时间: 2024-10-27 00:48:49

Android 关于资源适配的相关文章

Android WebApp &amp; NativeApp 适配测试自动化平台GoGo实现 东海陈光剑

Android WebApp & NativeApp 适配测试自动化平台GoGo实现 东海陈光剑 2014年3月6日 18:27:55 源代码: https://github.com/universsky/AndroidAutomationTestUniverssky.git GoGo平台架构: 运行结果: http://10.73.72.122:88/report.html?run_stamp=20140306052855&sec=336&min=5 http://10.125.

我们来一探究竟 Android 7.0 适配中 FileProvider 部分

本文标签: Android7.0 FileProvider 由于 Android 7.0 或更高版本的系统在国内手机市场上的占比不是很高,很多 Android 开发人员并没有做 7.0 适配工作,同时测试人员也容易忽视这方面的兼容问题.这导致 7.0 及以上版本的手机用户在使用到应用部分功能时可能出现 App 崩溃闪退.其中,大部分原因都是由项目中使用到 file:// 类型的 URI 所引发的.本文我们便来一探究竟. Android 7.0 权限变更 为了提高私有目录的安全性,防止应用信息的泄

Android开发屏幕适配方案

Android屏幕适配方案总结 日常开发中,难免遇到屏幕适配的方案,网上也有很多方案,在这里本人只是做一个总结,以免日后使用 单位的概念 pt(point):磅,一个标准的固定长度单位,大小为1/72英寸,主要用于印刷与平面设计.1英寸=2.54厘米=72磅 1pt=0.03527cm px(pixel):像素,组成屏幕图像的最小点,一个相对大小单位.同尺寸屏幕中像素越小越多,代表屏幕分辨率越高,反之越高. 1pt=(ppi/72)*px 屏幕尺寸(screen size):屏幕物理尺寸,指屏幕

Android 7.0 适配中 FileProvider 部分总结

本文标签: Android7.0 FileProvider 由于 Android 7.0 或更高版本的系统在国内手机市场上的占比不是很高,很多 Android 开发人员并没有做 7.0 适配工作,同时测试人员也容易忽视这方面的兼容问题.这导致 7.0 及以上版本的手机用户在使用到应用部分功能时可能出现 App 崩溃闪退.其中,大部分原因都是由项目中使用到 file:// 类型的 URI 所引发的.本文我们便来一探究竟. Android 7.0 权限变更 为了提高私有目录的安全性,防止应用信息的泄

Android屏幕大小适配问题解决

? 一.一些基本概念 1.长度(真实长度):英寸.inch 2.分辨率:density 每英寸像素数  dpi(密度) 3.像素:px 4.dip的公式:px /dip=dpi/160  所以 dip 类似于英寸.长度(dp=dip,sp类似于dip)  dip=160*inch dip= 160/dpi * px 当dip一定时,dpi 越大,px就越大 5.广义分辨率=长px*宽px 二.经常使用规律 1.平时我们说 手机的分辨率是 320*480的,事实上的这里的分辨率是相对分辨率 意思是

关于 Android 7.0 适配中 FileProvider 部分的总结

原文地址:http://yifeng.studio/2017/05/03/android-7-0-compat-fileprovider/ 由于 Android 7.0 或更高版本的系统在国内手机市场上的占比不是很高,很多 Android 开发人员并没有做 7.0 适配工作,同时测试人员也容易忽视这方面的兼容问题.这导致 7.0 及以上版本的手机用户在使用到应用部分功能时可能出现 App 崩溃闪退.其中,大部分原因都是由项目中使用到 file:// 类型的 URI 所引发的.本文我们便来一探究竟

Android之屏幕适配

Android之屏幕适配 Android之屏幕适配 适配方式一图片适配 适配方式二dimensxml文件适配 适配方式三布局文件适配 适配方式四java代码适配 适配方式五权重适配 适配:即当前应用在相同的手机上面显示相同的效果.适配前需要首先确定当前手机所属像素密度类型(如:xhdpi.hdpi.mdpi等),以下已华为G700.模拟器为例,计算其像素密度. 案例一: 手机型号:G700 手机分辨率:1280*720 (注:手机两个直角边上分别放置了1280及720个像素点) 手机尺寸大小:5

Android本地化资源目录详解

我们可以设想,有两个不同分辨率的手机(320*480和480*800)要使用一些图像资源,为了使图像不失真,就需要为不同分辨率的手机指定不同的图像,为此就需要建立不同的资源目录. 在res目录中建立了3个图像资源目录:drawable.drawable-hdpi和drawable-mdpi.其中drawable为默认图像的图像资源目录,drawable-hdpi保存了在高屏幕密度(指480*800或相似的分辨率)情况系使用的图像资源,drawable-mdpi保存了中屏幕密度(值320*480或

Android 多分辨率机器适配

假设有如下分辨率机器: 800 x 480 1024 x 600 1024 x 768 1280 x 800 1920 x 1200 2048 x 1536 总共六种类分辨率机器,如果按照dp为单位来细分可以分为几种呢? 首先通过context.getResources().getDisplayMetrics().density获取到当前机器的屏幕密度,然后通过dp = px/density进行换算可以得到机器对应的以dp为单位的大小.比如,我分别打出了自己手里面设备对应的dp,值如下: 设备p