开发安卓app要面对很多机型,如果一套资源对应一个分辨率,不仅需要做很多的UI,而且app也会很大.针对这个情况需要找到一套标准方案来做到覆盖大多数机型的适配.
-
App方案
之前用过鸿翔大师的AutoLayout,需要添加AutoLayout模块,还需要继承其layout,在ListView等还需要写关于它的适配,感觉用着不是很方便,所有的地方都需要写px,字体大小也用px,感觉很别扭,而且感觉适配也不是很理想. AndroidAutoSize 这个方案,第一次使用,用起来比较方便.可以使用dp和px多种方案.
AndroidAutoSize 使用方法
-
在app模块添加依赖 implementation 'me.jessyan:autosize:1.1.2'
-
如果依赖不能下载代码,也可以下载工程,导入AndroidAutoSize模块
-
AndroidManifest中添加
-
<manifest>
<application>
<meta-data
android:name="design_width_in_dp"
android:value="360"/>
<meta-data
android:name="design_height_in_dp"
android:value="640"/>
</application>
</manifest>
- 找到一套标准设计图,安卓和IOS使用同一套方案,一般如果按照安卓为主的话,可以设计1080*1920分辨率的尺寸(XXhdpi),可以让UI按照这个来设计.
- 参照UI把设计图,把UI对应的尺寸转成DP,要对应设计的尺寸(xxhdpi),切图等,把图片资源放到xxhdpi下,控件大小可以参照设计图来填写,之前用过一个软件PxCook,可以转换尺寸,还可以看间距等,挺方便的.