由于android屏幕尺寸大小种类很多,密度像素也有不同,从小型手机到大型电视机,因此,若想给更多的用户良好的体验,应用程序设计为与所有屏幕尺寸兼容。
一、支持不同的屏幕尺寸
使用灵活布局后,还应提供几种替代布局来定位不同的屏幕配置,如使用配置限定符,根据当前设备的配置自动选择适当的资源。例如:给大屏幕展示两页,手机屏幕显示一页。
文件夹别名或布局文件同名。
使用可扩展的位图.9.png,可在androidstudio中自行制作
二、支持不同的密度
开发中设计布局应避免一个常见的缺陷:使用绝对像素来定义局距离或大小,不同的屏幕像素密度不一样,相同的像素可能在不同的设备中出现不同的物理尺寸。
可以使用与密度无关的dp单位定义距离或大小,使用与尺度无关的sp单位定义文本大小。
给不同密度提供不同像素密度的图片资源。
三、自适应UI
在一些自适应的视图中或一些动作可能会有不同的结果,取决于当前的布局,需判断用户正在浏览的视图,通过getVisibility()方法可查看视图或控件是否可见。
多个屏幕的设计中,重复出现的模式是将部分界面实现为某些屏幕配置上的窗格,并将其作为其他配置的单独活动。通过Fragment在多个活动中重用相同的子类来避免代码重复
另外推荐一套我用过的屏幕适配方案,该方案是通过百分百来适配屏幕大小达到所有屏幕同样的效果。
http://blog.csdn.net/lmj623565791/article/details/46695347
该博文讲解了 Android 百分比布局库(percent-support-lib) 解析与扩展