Android多分辨率适配框架 扫二维码继续学习 二维码时效为半小时

(14 评论)

49.00元

课程介绍

Android的源码公开策略丰富了手持设备的多样性,但随之而来的却是较为严重的”碎片化”——版本繁多、尺寸多样、功能定制。在Android项目开发中,软件工程师都会面临一个问题:如何适配多不同分辨率的设备?

许多人采用的是这样的方式:利用不同的dimens和drawable资源适配不同分辨率的设备。这么做当然没错,可是它也同时带来一些弊端

  • 在调试UI时挨个修改多个dimen文件中的每个值。 
    多数时候会先做一个分辨率出来,比如1920*1080;然后再对照这个效果适配其他分辨率的展示效果。如果要调整某个尺寸的大小,那么先要找到其对应的dimens文件,再去修改。
  • UI标注的困惑 
    UI设计师一般只会在一套UI上标注具体的尺寸大小和颜色。比如,只在1920*1080上标注了一个TextView的长度是100px,那么在1280*720上的分辨率上该控件的大小又该是多少呢?自己再换算一下?
  • 多套drawable容易导致APK文件较大。 
    图片多了,那么资源所占的体积必然会随之增大;在发布前为了减小APK的大小,可能又不得不做一些瘦身的操作,至于效果有时也觉得不痛不痒,乏善可陈。
  • 不同drawable资源带来的繁琐 
    如果某个切图需要修改,那么就需要替换各个drawable中对应的图片。这个过程中,如果错放了或者漏放了某个尺寸的图片,那么又是一个小悲剧了,它会导致图片在某些分辨率的手机上失真

以上这些坑我都掉进去过,有的坑还有点深,快到我脖子了。 

为了避开这些坑,并且提高编码效率,减少在屏幕适配上花费过多的时间和精力我开发这个框架:一套图片,一套布局,一个dimen完成多分辨率的适配!

举个栗子:我们使用该框架对UI进行多分辨率的适配

两部手机:华为P7  5英寸 1920*1080 以及 HTC T392 4英寸 800*480

我们先来看该UI在华为P7上的效果:

 

我们再来看该UI在HTC T392上的效果:

 

嗯哼,看到了吧:在两部大小不一,分辨率也不一样的手机上该界面的显示效果是一致的。

框架的效果是看到了,那么在项目中该怎么使用这个框架呢?

嗯哼,只需要两句代码即可:

SupportMultipleScreensUtil.init( );
SupportMultipleScreensUtil.scale( );