JessYanCoding / JessYanCoding/AndroidAutoSize

如何将旧项目从 AndroidAutoLayout 迁移至 AndroidAutoSize (AndroidAutoSize 已被 鸿洋 推荐为 AndroidAutoLayout 的官方替换方案)

未關閉
#90 0 則留言 0 個 reaction 已指派 0 人 在 GitHub 檢視
important
主要語言
Java
星號
13.7k
分支
2k
PR 合併指標
30 天內沒有已合併 PR

描述

由于 [AndroidAutoLayout](https://github.com/hongyangAndroid/AndroidAutoLayout) 已经停止维护, **AndroidAutoSize** 作为 [AndroidAutoLayout](https://github.com/hongyangAndroid/AndroidAutoLayout) 官方推荐的屏幕适配框架,所以为大家准备了详细的 **迁移指南**,方便大家将自己的项目快速从 [AndroidAutoLayout](https://github.com/hongyangAndroid/AndroidAutoLayout) 替换为 **AndroidAutoSize**

在迁移之前还是建议先看下框架的 [原理分析](https://juejin.im/post/5b7a29736fb9a019d53e7ee2),更加理解框架的原理,才可以更快地上手 **AndroidAutoSize**,当遇到问题时也不至于手足无措

在旧项目的迁移时这个 [issues](https://github.com/JessYanCoding/AndroidAutoSize/issues/233) 有可能会帮助到你。

迁移分为三个步骤:

1. 在 **app** 的 **build.gradle** 中将 **AndroidAutoLayout** 的依赖替换为 **AndroidAutoSize**

```diff
dependencies {
- implementation 'com.zhy:autolayout:1.4.5'
+ implementation 'me.jessyan:autosize:x.y.z'
}
```

2. 在 **app** 的 **AndroidManifest.xml** 中将 **AndroidAutoLayout** 填写设计图尺寸的方式改为 **AndroidAutoSize** 的方式

```diff

-
-
+
+

```

* 至于设计图尺寸是怎么算的我这里就不多说了,我的文章讲的很清楚,不懂就我的文章和 **demo**,如果使用副单位可以直接使用 1080 * 1920,不需要把设计图尺寸转换为 360 * 640,详情请看 [demo-subunits](https://github.com/JessYanCoding/AndroidAutoSize/blob/master/demo-subunits)

3. 检查项目中所有的 **xml** 文件,将项目中所有的 **AutoLayout** 控件还原为原控件,并将 **xml** 文件中填写的 **px** 尺寸全部替换为 **dp** 尺寸,如果使用的是副单位,就替换为副单位

```diff
-

-
+
```

**前两个步骤都比较简单,最后一个步骤,工作量比较大,所以可以在进行新业务开发的同时,抽时间慢慢完成旧代码的迁移工作**

可以参照 **MVPArms** 迁移过程中的这两个 **Commit**([删除 AndroidAutoLayout](https://github.com/JessYanCoding/MVPArms/commit/ecd9c435fa5cfff24cfe87fc4c0792b994a6a31e)、[使用 AndroidAutoSize](https://github.com/JessYanCoding/MVPArms/commit/8a99c6ca08f611a9c911647bbec96ff711af5ba7))

貢獻指南

這個儲存庫沒有索引到貢獻指南

評估

這個 Issue 還沒有評估資料。

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。