最大的原因是碎片化,因为Android的开源措施和各个厂商的自己细微修改,结果就变成了这个样

需要适配的屏幕尺寸就有这么多:

所以我们就只照顾大部分人,根据友盟的统计数据如下:

屏幕尺寸

根据google官方规定,其代表的像素密度如下:

一般图片大小要求如下:

使用wrap_contentmatch_parent

尽量在android_widthandroid_height上使用wrap_contentmatch_parent,因为这两个属性是随着容器的大小而进行改变的,所以适应性会很强。

使用RelativeLayout,保持元素的相对位置,禁止使用绝对布局,因为绝对布局会出现很多问题。

然后添加这两个文件:
res/values-large/layout.xml:

 <resources> <item name="main" type="layout">@layout/main_twopanes</item> </resources>

 <resources> <item name="main" type="layout">@layout/main_twopanes</item> </resources>

例如dp和sp,不要使用px。

要生成这些图片,我们应先提取矢量格式的原始资源,然后根据以下尺寸范围针对各密度生成相应的图片。

这样一来,只要我们引用 @drawable/id,系统都能根据相应屏幕的 dpi 选取合适的位图。

使用点9图, 点9图是andriod平台的应用开发里的一种特殊的图片格式,文件扩展名为:.9.png。

使用第三方库进行百分比布局。

您可能感兴趣的文章:

  • Android屏幕适配工具类 Android自动生成不同分辨率的值
  • Android中关于屏幕的三个小众知识(宽屏适配、禁止截屏和保持屏幕常亮)
  • 简单谈谈我的Android屏幕适配之路
  • Android 图片显示与屏幕适配的问题
  • Android 手机屏幕适配解决办法
  • Android-屏幕适配需要注意的地方总结
  • Android 简单好用的屏幕适配方案