目前我们编写 UI 有三种方式,xml、代码编写自定义 View、Jetpack Compose。目前这三种方式全部在 Android Studio 4.0 上支持预览。

Android studio滑动条mqtt传输数据 android studio滑动切换页面_android studio

三者的预览界面都是一样的,分三种模式:编辑、预览、编辑+预览。别的不说自定义 View 支持预览那真是太方便了,能极大的提升开发效率。

Android studio滑动条mqtt传输数据 android studio滑动切换页面_android_02

而且,xml 的视图预览中支持多种不同分辨率设备的同时预览,还可以预览国际化时不同语言的排版情况,以及色盲模式的支持。(当然后面两项在 4.0 canary 1 中还没出现,只是在官方演示视频中做了讲解)

Android studio滑动条mqtt传输数据 android studio滑动切换页面_android_03

还有一项很牛逼的东西,就是 Android Studio 4.0 支持嵌入式模拟器,注意上图中的图像界面,不是我们第一个说的预览界面,是真正的模拟器,左边开发右边调试,再也不用切屏幕了。

Android studio滑动条mqtt传输数据 android studio滑动切换页面_Layout_04

Layout Inspector 也得到了更新,之前的 Layout Inspector 类似于布局快照,切换界面后,需要重新启动 Layout Inspector 。Android Studio 4.0 中 Layout Inspector 支持实时自动更新,当我们的设备切换页面后,布局分析器中的页面也会更新,同时关于资源文件的显示也更加完备,增加了完整调用链的信息展示。还有一个特牛逼的功能(划重点了!)就是 Layout Inspector 支持 3D 模型检查,就像下图这样:

![

Android studio滑动条mqtt传输数据 android studio滑动切换页面_Android_05

虽然官方视频中说到这些都会在 Android Studio 4.0 中出现,不过以我目前能下载到的 canary 1 版本来说,自定义 View 预览、嵌入式模拟器、新的 Layout Inspector 都没有找到,后续的 canary 应该会逐步支持。

动画方面

======================================================================

使用 MotionLayout 我们需要在 xml 中自定义 MotionScene,在 MotionScene 中指定不同 Layout 之间的变化。

查看到官方的 Demo 之后,说实话这种动画编写方式还是有些繁琐的,还好这次 Android Studio 4.0 支持了新的动画编辑器,让我们可以通过可视化的操作,来创建 MotionLayout 动画。

Android studio滑动条mqtt传输数据 android studio滑动切换页面_Android_06

我们可以指定 Layout 在 start 和 end 两个状态下的布局,设置动画持续时间,点击上方的 Transition 线,就可以预览动画,是不是非常简单!而且我们可以在持续时间中,任意添加关键帧,设置每一帧的状态,更细小颗粒度的控制动画效果,关键帧可以设置属性、相对位置。有了 MotionLayout 和全新的动画编辑器,在 Android 上做动画限制你的不再是 API 而是你的想象力。

其他

====================================================================

Android studio滑动条mqtt传输数据 android studio滑动切换页面_android_07

全新的 Resource Manager 支持多种资源的查看和管理,例如图片、颜色、布局、字符串、动画等等。

Android studio滑动条mqtt传输数据 android studio滑动切换页面_ide_08

内置的 Materiel Design Icon 提供了多种样式的选择:填充、线性、双色、圆角、矩形,终于不用自己切图了。

Android studio滑动条mqtt传输数据 android studio滑动切换页面_android_09

IDE 内置了很多简写代码指令模版,帮助我们快速使用,同时支持自定义插入,看了这次分享,才发现自己对 Android Studio 的使用还停留在会用的阶段,从来没有深入研究过,例如我最近才发现可以使用 File → New → Import Sample 查看官方提供了最佳实践代码,有 AAC 架构、有动画、有 CameraX、有 NDK 各种分类应有尽有,评论告诉我,我应该不说最后一个知道这个功能的吧。

Android studio滑动条mqtt传输数据 android studio滑动切换页面_Android_10

以上就是在本次 Android Dev Summit 中 Android Studio 最新进展的部分内容,当然在这些功能的背后,IDE 本身的内存占用、编译速度、都有很大的提升,不然也不会直接版本号跳跃到 4.0,想想隔壁苹果 Xcode 都出道 11 了,Android Studio 才到 4.0 真是慢工出细活啊。