Compose for Wear OS Beta 版发布!

f070495f7640964192240b609b42aa49.jpeg

/   今日科技快讯   /

近日,阿里巴巴集团发布2022财年年报。在致股东信中,阿里巴巴集团董事会主席兼首席执行官张勇说:“过去这一年,在风云变幻的国际、国内形势下,我们共同面临着很多的‘时代之问’。我们应对之道的基本原则是‘坚定信心,积极应变,做好自己’。”

/   前言   /

我们正式发布了 Compose for Wear OS 的 Beta 版,这是我们的现代声明式用户界面工具包,旨在帮助开发者为 Wear OS 构建精美的用户体验。 

Compose for Wear OS 增加了为手表优化的组件,这些组件均基于 Wear OS 的最新 Material 设计规范,且建立在核心 Compose 库之上。工具包充分活用了 Modern Android Development (现代 Android 开发),以加速整体开发进程。

在 Beta 版发布后,Compose for Wear OS 就拥有了 1.0 版本 (将于今年晚些时候发布) 所需的完整功能,且能供您构建生产就绪的应用。这也意味着它的 API 已经稳定,今后我们将专注于提升性能以及针对 1.0 版本继续打磨现有组件。

/   Beta 版本介绍   /

自去年的 I/O 大会以来,我们一直在努力将 Jetpack Compose 的优势带到 Wear OS,还通过 Slack 与社区互动,收集开发者对 API、组件和工具的反馈。一些组件也因此得到了改进,如导航、可缩放惰性列表 (scaling lazy list)、输入和手势支持等等。

在现在的 Beta 1 之前我们已经发布了 21 个 Alpha 版。让我们一起看看自 开发者预览版 发布以来的主要变化:

🆕 输入组件

开发者要求我们提供用户输入组件,所以我们增加了不同的 Composable,供大家为自己的手表应用进行定制:

215defea480ed897ee6e26659385855b.gif

  • Picker 可让用户从滚动列表中选择一个项目。默认情况下,这个包含可选择项目的列表会在两个方向上 "无限" 重复,从侧面看上去像是一个旋转的滚筒。有趣的是,Picker 在底层使用了 ScalingLazyColumn 来实现,并将许多 ScalingLazyColumn 的高级功能进行了拓展和打磨。

  • Slider 可让用户从一个数值范围内进行选择,是调整字体大小或亮度等设置的理想组件。

  • Stepper 是让用户从一个数值范围内进行选择的全屏控制组件。例如,用户可以用其控制耳机的音量。

🆕 对话框

我们增加了全屏警告和确认 Composable,它们既可以作为导航目的地,也可以用作传统的全屏 对话框 (Dialog),后者将被覆盖在任何其他内容之上。对话框支持滑动关闭,继而显示背景中的父级内容。

a83c55a81074089c6d547d359b352b07.gif

为了与 Scaffold 保持一致,全屏对话框会显示一个 PositionIndicator 和一个 Vignette。

🆕 进度指示器

我们添加了 CircularProgressIndicator,这是一个为手表屏幕优化的进度指示器,通过将指示器沿顺时针方向的圆形轨道绘制来显示进度:

b0e50d775f1b4e89c9208549938a8aea.gif

对于如何使用 CircularProgressIndicator,我们提供了以下几种选择: 要么显示无限的进度,要么表达正在进行的任务的完成比例。进度指示器允许在圆形轨道中留出空隙,为其他内容留出空间,例如在全屏时使用 TimeText。

🆕 页面指示器

为了帮助您实现分页,用户界面工具包还提供了 HorizontalPageIndicator 组件,会显示总页数和所选页数:

ee502706320deae359f24372ec10b47c.gif

HorizontalPageIndicator 将提供当前展示的页面以及在总页面数中的位置,并会根据屏幕的实际形状使用对应的视觉呈现方式。

改进一览

  • ScalingLazyColumn:改进了默认行为,使其与 Wear OS 的 Material 设计一致,包括更新了缩放参数、默认的额外填充,以及从其包含的内容获取尺寸。

  • Scaffold:增加了 PageIndicator 槽位,以保证在圆形屏幕上的正确定位。

  • Navigation:确保与 Compose Navigation 的功能一致,并增加了对边缘滑动的支持,以实现全屏和页面滚动的良好体验。

  • 曲线元素:增加了 CurvedModifier 和一个新的 DSL,使开发者能够使用极坐标相关的概念,如径向、角度、扫描、顺/逆时针、圈内/外等。CurvedLayout 是连接直角坐标和极坐标的桥梁,而 curvedComposable 可以用来引入传统的 Composable 组件 (前提是这样做有意义)。

在增加了这些最新的补充内容之后,用于 Wear OS 的 Compose Material 组件目录现在有了比基于视图 (View) 的布局更多的组件,并提供了基于新的 Wear OS 设计指南的开箱即用的实现。

/   工具   /

Android Studio Electric Eel 提供了最新的功能,让您获得 Compose for Wear OS 开发的最佳体验:

  • 编辑器和工具支持改进自动补全和编辑器动作

  • 针对 Wear OS 的 Composable Preview

  • 🆕 支持实时调试的实时编辑功能

  • 🆕 Compose for Wear OS 项目模板

/   Horologist   /

我们还发布了 Horologist。这是一个 Google 开源项目,提供了一套 Wear 开发库,对 Compose for Wear OS 和其他 Wear OS API 所提供的功能进行了补充。

f8c24fbcb2d92a870d39f9fd126332ad.png

△ 进一步了解 Horology Horologist

提供有用的 Compose 扩展供您选用:

  • 媒体用户界面组件,包括播放和音量控制界面

  • Material 风格的日期和时间选择器

  • 带有 TimeText 和 PositionIndicator 的导航感知 Scaffold,可与滚动和导航屏幕的变化保持同步。

Horologist 将不断发展,为开发者提供更多的工具,以便大家为不同的项目构建优秀的 Wear OS 应用。请在 Github 上查看 Horologist repo,为我们提供反馈,并贡献可能对 Wear 开发者有用的通用功能。请大家继续关注之后的版本!

项目地址:

https://github.com/google/horologist

推荐阅读:

我的新书,《第一行代码 第3版》已出版!

Android 13 Developer Preview一览

模仿Android微信小程序,实现小程序独立任务视图的效果

欢迎关注我的公众号

学习技术或投稿

18926e12cb6dbac7ba67c93dac8ac46c.png

f5613766e849e8f64aa0e77637b3fde1.jpeg

长按上图,识别图中二维码即可关注

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值