Android屏幕适配方案,android屏幕适配

文章转载禁止用于商业用途,且不能带有虚拟货币、积分、注册等附加条件。转载须注明出处莫高雷草原以及作者@JiongBull。

Android屏幕适配方案

统计分析

1. 2014Q1活跃Android设备统计

参数表格:

机型

分辨率

像素密度

屏幕宽度

三星Galaxy Note2

720 * 1280

xhdpi

360dp

三星Galaxy S3

720 * 1280

xhdpi

360dp

小米手机2S

720 * 1280

xhdpi

360dp

三星Galaxy S4

1080 * 1920

xxhdpi

360dp

三星Galaxy S2

480 * 800

hdpi

320dp

三星Galaxy Note

800 * 1280

xhdpi

400dp

三星Galaxy Note3

1080 * 1920

xxhdpi

360dp

红米手机

720 * 1280

xhdpi

360dp

小米手机1S

720 * 1280

xhdpi

360dp

三星Galaxy Ace

480 * 800

hdpi

320dp

小米手机M2

720 * 1280

xhdpi

360dp

小米手机M3

1080 * 1920

xxhdpi

360dp

小米手机M1

480 * 854

hdpi

320dp

小米手机2A

720 * 1280

xhdpi

360dp

三星GT-S7568

480 * 800

hdpi

320dp

华为G520

480 * 854

hdpi

320dp

三星Galaxy Mega 5.8

540 * 960

hdpi

360dp

三星GT-S7562

480 * 800

hdpi

320dp

OPPO R821t

480 * 800

hdpi

320dp

华为C8815

540 * 960

hdpi

360dp

结论:绝大部分机型的屏幕宽度是320dp和360dp。

2. 2014Android操作系统趋势

结论:4.0版本以上的操作系统占据了90%以上的市场份额。

方案

1. 声明客户端支持的最小操作系统版本

过滤掉老旧版本操作系统,帮助我们减少针对时机型适配带来的工作量

可以使用Android 3.2(API等级13)版本提供的新特征利用屏幕的宽度对不同的屏幕做适配

2. 声明屏幕方向为竖屏

避免用户横屏时页面布局错乱。

android:screenOrientation="portrait"

3. 布局

针对手机设备,使用一套布局资源,布局中里用到的尺寸、颜色、文本等资源使用引用值。

res/layout/name.xml

4. 尺寸

参考统计分析里的参数表格,values-w320dp目录内属性适配屏幕宽度为320dp的机型,values-w360dp目录内的属性适配屏幕宽度为360dp的机型。

res/values-w320dp/dimens.xml

res/values-w360dp/dimens.xml

5. 图片

如果可以避免使用位图那就不要使用位图,这样可以节省空间资源,提高应用的性能

可以使用XML绘图代替位图,比如圆角矩形,使用XML绘制的色图比位图节省空间资源,而且可以自动适配

使用9-patch,9-patch可以缩放,我们可以使用很小的9-patch填充很大的UI控件,节省空间资源,提高应用的性能

尽量减少XML的布局层次,减少布局层次可以减少系统解析代码所做的工作,让界面的渲染速度变快

使用merge而不是include,使用merge可以达到减少布局层次的效果

尽量使用RelativeLayout,使用RelativeLayout相比使用多个LinearLayout来说可以减少布局的层次

每种切图都需要下面表格中的展示的三种规格

像素密度

系数

Logo分辨率

hdpi

1.5

72 * 72

xhdpi

2.0

96 * 96

xxhdpi

3.0

144 * 144

http://www.dengb.com/Androidjc/918534.htmlwww.dengb.comtruehttp://www.dengb.com/Androidjc/918534.htmlTechArticleAndroid屏幕适配方案,android屏幕适配 文章转载 禁止 用于商业用途,且不能带有虚拟货币、积分、注册等附加条件。转载须注明出处莫高雷...

android屏幕适配教程,Android屏幕适配方案,android屏幕适配相关推荐

  1. [Android Studio 权威教程]Windows下安装Android Studio

    从AS 0.5版本号開始使用.也是AS的推行者,在ApkBus公布的第一篇Android Studio Perview 2 获得了50K的浏览,1800多条回复下载. 在我的[Android Stud ...

  2. 《Android UI基础教程》——1.2节Android 应用程序的基本结构

    本节书摘来自异步社区<Android UI基础教程>一书中的第1章,第1.2节Android 应用程序的基本结构,作者 [美]Jason Ostrander,更多章节内容可以访问云栖社区& ...

  3. 微信 Android design 代码,[教程]让微信界面更加 Android Design

    在早期 Android 的生态链还未完全建立起来的时候,很多 Android 软件基本上都是照搬 iOS 上面的那一套拟物风格,包括界面.样式.交互等,如此生搬硬套使得很多 Android 软件体验不 ...

  4. android换iphone教程,换手机必看 Android转iPhone换机教程

    2.短信 微信只有备份通讯录的功能,第三方软件包括QQ同步助手等虽然支持通话记录.短信的备份,但是无法再Android和iOS之间互通,想要在不越狱的情况下完成短信的备份有些繁琐,接下来我们就为大家演 ...

  5. 【Android 安装包优化】Android 中使用 SVG 图片 ( Android 5.0 以下的矢量图方案 | 矢量图生成为 PNG 图片 )

    文章目录 一.Android 5.0 以下的矢量图方案 二.矢量图生成为 PNG 图片 三.完整的 build.gradle 构建脚本 四.编译效果 五.参考资料 一.Android 5.0 以下的矢 ...

  6. android,项目,一些教程

    常用的自定义view和第三方类库 Android快速开发框架,MVP架构 Java无框架实现爬取知乎用户信息.图片和知乎推荐内容并下载到本地或数据库中 让接口和文档见鬼去吧!客户端定义服务端返回JSO ...

  7. Android Studio 权威教程

    [Android Studio 权威教程]打包.生成jks密钥.签名Apk.多渠道打包 [Android Studio 权威教程]多渠道打包和一键完成(全部产品)打包并签名 [Android Stud ...

  8. ANDROID STUDIO详细教程汇总

    这个系列教程在Android Studio Beta版本的时候就开始着手编写,当时就认为AS绝对会成为Android开发的未来,时至今日印证了当时的观点,作为国内最早一批AS教程之一,可以帮助从未接触 ...

  9. Android游戏开发教程汇总

    Android游戏开发教程汇总 把最近搜集到的Android游戏开发教程列出来,希望对大家有用. 1.Android2.0游戏开发实战宝典源代码,当然可能大家已经把书也买回家啦. 2.Pro.Andr ...

  10. 最新Android基础入门教程目录(完结版)

    第一章:环境搭建与开发相关(已完结 10/10) https://blog.csdn.net/coder_pig/article/details/50000773 Android基础入门教程--1.1 ...

最新文章

  1. 北斗时钟在国内各行业的应用前景
  2. Android Studio 从安装到 Hello World
  3. MVC防止CSRF攻击
  4. 前端 JS/TS 调用 ASP.NET Core gRPC-Web
  5. 第七十二期:Visual Studio Online 终于公开上线了
  6. a标签的href传递信息
  7. 编程之美--高效率算出1的数目之扩展问题
  8. Helpful links
  9. Cloudera迁移scm数据库
  10. 网络调试助手做什么用的
  11. 微信扫码支付开发流程
  12. 使用wait函数获取子进程终止状态
  13. 折腾家里的龟速网络有感
  14. Can‘t get JDBC type for struct<date:int,day:int,hours:int,minutes:int,month:int,seconds:int,time:big
  15. optics算法matlab实现,OPTICS聚类算法的matlab实现
  16. 状态空间方程的能控性与能观性判断
  17. 电脑启动项和系统引导项设置
  18. Cong! ZOJ 100AC!
  19. [python作业]给定字符串“site sea suede sweet see kase sse ssee loses“,匹配出所有s开头,e结尾的单词。
  20. (六)ArcCatalog应用基础——目录内容浏览

热门文章

  1. TypeError: 'float' object is not iterable
  2. VS2010 转VS2008
  3. ibatis 如何直接执行sql语句
  4. 杭电5620 KK's Steel
  5. InternetCheckConnection 通过尝试连接特定的网址,可以用来判断目前机器是否接通外网
  6. C语言和设计模式(责任链模式)
  7. android 滑动取值_Android-自定义ViewGroup-上下滑动整体实践下
  8. python创建一个csv文件_python如何写入csv
  9. go语言和python-新学语言,选GO还是Python
  10. Java过滤器处理Ajax请求,Java拦截器处理Ajax请求,java 判断请求是不是ajax请求