Compose Material 3 自适应
最新更新 | 稳定版 | 候选版本 | Beta 版本 | Alpha 版本 |
---|---|---|---|---|
2024 年 11 月 13 日 | 1.0.0 | - | - | 1.1.0-alpha07 |
声明依赖项
要添加对 Compose 的依赖项,您必须将 Google Maven 存储库添加到您的项目中。阅读Google 的 Maven 存储库以了解更多信息。
在应用或模块的 build.gradle
文件中添加所需工件的依赖项
Groovy
dependencies { implementation "androidx.compose.material3.adaptive:adaptive:1.1.0-alpha07" implementation "androidx.compose.material3.adaptive:adaptive-layout:1.1.0-alpha07" implementation "androidx.compose.material3.adaptive:adaptive-navigation:1.1.0-alpha07" }
Kotlin
dependencies { implementation("androidx.compose.material3.adaptive:adaptive:1.1.0-alpha07") implementation "androidx.compose.material3.adaptive:adaptive-layout:1.1.0-alpha07" implementation "androidx.compose.material3.adaptive:adaptive-navigation:1.1.0-alpha07" }
有关依赖项的更多信息,请参阅添加构建依赖项。
反馈
您的反馈有助于使 Jetpack 变得更好。如果您发现新问题或有改进此库的想法,请告诉我们。在创建新问题之前,请查看此库中现有的问题。您可以通过点击星形按钮为现有问题添加您的投票。
有关更多信息,请参阅问题跟踪器文档。
Compose Material3 自适应版本 1.1
版本 1.1.0-alpha07
2024 年 11 月 13 日
androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha07
已发布。版本 1.1.0-alpha07 包含 这些提交。
API 变更
- 从自适应库中移除拖动句柄实现,并鼓励用户使用 M3 版本的拖动句柄。同时引入一个修饰符,为提供的拖动句柄可组合项提供窗格展开拖动功能。此外,将
DraggableState
隐藏为实现细节,以便以后需要时可以更改它。(Ib50cd) - 根据 UXR 反馈,将窗格运动自定义的入口点从脚手架函数移至
AnimatedPane
。(I10f72) - 引入轻弹支持和窗格展开的自定义动画规范。(Ie207d,b/362584341)
错误修复
- 修复取消时的预测后退问题。(36a3e0a),(b/369899645)
版本 1.1.0-alpha06
2024 年 10 月 30 日
androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha06
已发布。版本 1.1.0-alpha06 包含 这些提交。
API 变更
- 将
FloatRange
添加到PaneScaffoldTransitionScope.motionProgress
。(Iac0dd) - 在可导航脚手架中将导航器参数的类型更改为泛型类型。(I1da6e)
版本 1.1.0-alpha05
2024 年 10 月 16 日
androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha05
已发布。版本 1.1.0-alpha05 包含 这些提交。
API 变更
- 引入动画规范类,以确保更一致的运动行为和未来的扩展性。(I2d3cc)
- 提供运动类型,并将
PaneMotionData
中的 currentXXXXX 重命名为 originXXXX。(I7c61a)
版本 1.1.0-alpha04
2024 年 10 月 2 日
androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha04
已发布。版本 1.1.0-alpha04 包含 这些提交。
新功能
- 为
NavigableListDetailPaneScaffold
和NavigableSupportingPaneScaffold
添加了预测后退支持。(I4dc21,b/359616816)
API 变更
- 将
ThreePaneScaffoldState
添加到ThreePaneScaffoldNavigator
。导航方法已变为suspend
以支持带动画的导航。添加了seekBack
以支持部分导航状态(例如预测后退)。(I5a651,b/359616816) - 添加
MutableThreePaneScaffoldState
以控制脚手架值之间的转换。现有的ThreePaneScaffoldState
已变为只读。(Idb3c6) - 公开默认窗格运动实现(I95a7b)
- 启用设置窗格展开状态的初始锚点(Ie41b3,b/362350560)
错误修复
- 强制拖动句柄的最小触摸目标大小为 48x48dp(7ce6635,b/366018217)
- 在配置更改后恢复锚定位置(3c9fc6b,b/362353672)
版本 1.1.0-alpha03
2024 年 9 月 18 日
androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha03
已发布。版本 1.1.0-alpha03 包含 这些提交。
版本 1.1.0-alpha02
2024 年 9 月 4 日
androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha02
已发布。版本 1.1.0-alpha02 包含 这些提交。
新功能
- 运动自定义(I0bf9c),(I80e66)支持开发者在自适应脚手架状态更改期间更改默认运动。开发者可以选择一组默认的进入和退出转换,或者使用通过新的运动范围提供的信息实现纯自定义转换。
- 实现窗格展开拖动句柄的淡入淡出动画(46e3c69)
- 使已记住的
PaneExpansionState
可保存(61ff76f)
API 变更
- 将缺失的窗格展开 API 添加到脚手架中(Ic5bc0)
ThreePaneScaffoldDestinationItem.content
重命名为contentKey
。rememberListDetailPaneScaffoldNavigator
和rememberSupportingPaneScaffoldNavigator
的默认类型参数从Nothing
更改为Any
。(I58749)- 将
ThreePaneScaffoldState
标记为稳定(I64aec) - 使拖动句柄参数具有作用域(Ic0aa2)
版本 1.1.0-alpha01
2024 年 8 月 21 日
androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha01
已发布。版本 1.1.0-alpha01 包含 这些提交。
新功能
- 引入自适应脚手架的窗格展开支持。
API 变更
- 将窗格展开 API 公开(I301d6)
- 引入
ThreePaneScaffoldState
以控制窗格值转换。添加了接受此状态的ListDetailPaneScaffold
和SupportingPaneScaffold
的重载。(I5db3b) - 引入窗格展开键和键提供程序接口(Id621f)
错误修复
- 修复存在排除铰链时分区计算错误的问题。(9dfd483)
Compose Material3 自适应版本 1.0
版本 1.0.0
2024 年 9 月 4 日
androidx.compose.material3.adaptive:adaptive-*:1.0.0
已发布。版本 1.0.0 包含 这些提交。
1.0.0 的主要功能
- 单行可组合函数
currentWindowSize()
、collectFoldingFeaturesAsState()
和currentWindowAdaptiveInfo()
用于获取适应应用所需窗口信息,例如窗口大小和折叠功能。 ListDetailPaneScaffold
和SupportingPaneScaffold
提供了两个 Material3 规范布局,它们会根据不同的窗口配置自动调整自身。这两个脚手架也完全可自定义,以满足开发者不同的需求。ThreePaneScaffoldNavigator
及其相关的 remember 函数,rememberListDetailPaneScaffoldNavigator()
和rememberSupportingPaneScaffoldNavigator()
提供自适应脚手架内的导航解决方案,与非自适应环境中常见的每次显示一个目的地的设置相比,它可以同时显示多个导航目的地。- 更改自适应脚手架状态时的默认内置 Material3 动画。
版本 1.0.0-rc01
2024 年 8 月 21 日
androidx.compose.material3.adaptive:adaptive-*:1.0.0-rc01
已发布。版本 1.0.0-rc01 包含 这些提交。
错误修复
- 修复存在排除铰链时分区计算错误的问题。(9dfd483)
版本 1.0.0-beta04
2024 年 6 月 26 日
androidx.compose.material3.adaptive:adaptive-*:1.0.0-beta04
已发布。版本 1.0.0-beta04 包含 这些提交。
错误修复
- 修复了铰链边界更新时布局未相应更新的问题。(71e9cf1)
版本 1.0.0-beta03
2024 年 6 月 12 日
androidx.compose.material3.adaptive:adaptive-*:1.0.0-beta03
已发布。版本 1.0.0-beta03 包含 这些提交。
错误修复
- 修复了 beta02 中由不正确的依赖项解析导致的崩溃。
版本 1.0.0-beta02
2024 年 5 月 29 日
androidx.compose.material3.adaptive:adaptive-*:1.0.0-beta02
已发布。1.0.0-beta02 版本包含这些提交。
1.0.0-beta01 版本
2024 年 5 月 14 日
androidx.compose.material3.adaptive:adaptive-*:1.0.0-beta01
已发布。1.0.0-beta01 版本包含这些提交。
1.0.0-alpha12 版本
2024 年 5 月 1 日
androidx.compose.material3.adaptive:adaptive-*:1.0.0-alpha12
已发布。1.0.0-alpha12 版本包含这些提交。
API 变更
- 将
isFlat
信息添加到HingeInfo
中 (Ie0516,b/333784198) - 使自适应 API 成为非实验性 API (I1d038)
- 使自适应布局 API 成为非实验性 API (Id23df)
- 将
BackNavigationBehavior
从枚举更改为值类 (Id8757)
错误修复
1.0.0-alpha11 版本
2024 年 4 月 17 日
androidx.compose.material3.adaptive:adaptive-*:1.0.0-alpha11
已发布。1.0.0-alpha11 版本包含这些提交。
API 变更
- 使作用域接口密封。(Iefa57)
- 引入
AnimatedPaneScope
。(I62d73,b/332750742) - 使
AdaptStrategy
密封且稳定。(Ia28b2) - 引入
PaneScaffoldDirective
的复制方法。(I9291f) - 将
ThreePaneScaffoldScope
标记为实验性。(I9d527) - 提供易于使用的支架 API,支持导航。(I263f0,b/321010778)
1.0.0-alpha10 版本
2024 年 4 月 3 日
androidx.compose.material3.adaptive:adaptive-*:1.0.0-alpha10
已发布。1.0.0-alpha10 版本包含这些提交。
API 变更
- 使默认首选宽度自适应且可自定义。(Ic3abc)
- 重命名支架指令计算函数。(I10855)
- 从支架 API 中移除填充和内边距。(I786f8)
- 添加没有泛型类型的导航器 remember 方法。(I607c3)
1.0.0-alpha09 版本
2024 年 3 月 20 日
androidx.compose.material3.adaptive:adaptive-*:1.0.0-alpha09
已发布。1.0.0-alpha09 版本包含这些提交。
API 变更
错误修复
- 将间隔符大小包含到窗格运动中。(a3174ca)
1.0.0-alpha08 版本
2024 年 3 月 6 日
androidx.compose.material3.adaptive:adaptive-*:1.0.0-alpha08
已发布。1.0.0-alpha08 版本包含这些提交。
新功能
- 在切换窗格时实现延迟滑动。(I1a38e)
API 变更
- 删除了
ThreePaneScaffoldState
接口。(I63f23)
1.0.0-alpha07 版本
2024 年 2 月 21 日