Android 团队发布了 Jetpack Compose 1.2 版本,这是 Android 的现代原生 UI 工具包,可以帮助开发者更快地构建应用程序。这个版本包含新的功能,如可下载的字体、以及对平板电脑和 chromeOS 的改进。
Compose 是官方推荐的为手机、平板电脑和可折叠设备构建 Android 应用的方式。此次还发布了适用于 Wear OS 的 Compose 1.0,这使得 Compose 也成为构建 Wear OS 应用的最佳方式。
新的稳定功能和 API
LazyHorizontalGrid
和LazyVerticalGrid
的 API 让你在网格中放置项目列表。这些 API 已经存在于 Compose 1.1 中,但被标记为@Experimental
(实验性)。WindowInsets
类提供了windowInsetsPadding
、systemBarsPadding
和windowInsetsTopHeight
等修改器来处理设备的嵌入。这个类在很大程度上是基于 Accompanist insets 库,并取代它成为 Insets 的首选机制。Modifier.nestedScroll
提供了与视图的嵌套滚动互操作性- 增加了 Easing curves,能够有效地编写出更好的动画
- 通过添加
Modifier.pointerHoverIcon
、PointerEventType.Scroll
和PointerEvent.scrollDelta
,改进了对鼠标的支持。
新的实验性 API
- 用
LazyLayout
创建你自己的高效滚动布局。使用Modifier.overscroll
为你的可滚动容器添加自定义的过度滚动效果 - 使用
GoogleFont
下载字体 - 增加了许多文本功能,比如允许自定义
includeFontPadding
、Brush
API,并增加了pluralStringResource
- 改进了测试 API
错误修复
- 让动画遵循系统定义的 “Animator duration scale”
- 通过添加
userScrollEnabled
参数,允许禁用 lazy layouts 的滚动 - 让
TextField
中的返回按钮行为与EditText
中的行为相同
更多详情可查看:https://android-developers.googleblog.com/2022/07/jetpack-compose-1-2-is-now-stable.html