Compose Material 3 自适应

  
使用 Material 3 自适应库创建自适应界面 它会根据当前时段自动进行调整 窗口大小类别或设备折叠状态等配置该库提供了 默认基架实现和必要的构建块可组合项 打造自己的自定义体验。
最近更新时间 稳定版 候选版 Beta 版 Alpha 版
2024 年 9 月 4 日 1.0.0 - - 1.1.0-alpha02

声明依赖项

要添加 Compose 的依赖项,您必须将 Google Maven 代码库添加到 项目。如需了解详情,请参阅 Google 的 Maven 代码库

在应用或模块的 build.gradle 文件中添加所需工件的依赖项:

Groovy

dependencies {
    implementation "androidx.compose.material3.adaptive:adaptive:1.1.0-alpha02"
    implementation "androidx.compose.material3.adaptive:adaptive-layout:1.1.0-alpha02"
    implementation "androidx.compose.material3.adaptive:adaptive-navigation:1.1.0-alpha02"
}

Kotlin

dependencies {
    implementation("androidx.compose.material3.adaptive:adaptive:1.1.0-alpha02")
    implementation "androidx.compose.material3.adaptive:adaptive-layout:1.1.0-alpha02"
    implementation "androidx.compose.material3.adaptive:adaptive-navigation:1.1.0-alpha02"
}

如需详细了解依赖项,请参阅添加 build 依赖项

反馈

您的反馈将帮助我们改进 Jetpack。如果您发现了新问题,或对此库有任何改进建议,请告诉我们。创建新问题前,请先查看此库中的现有问题。您可以点击星标按钮,为现有问题投票。

创建新问题

如需了解详情,请参阅问题跟踪器文档

Compose Material3 Adaptive 版本 1.1

版本 1.1.0-alpha02

2024 年 9 月 4 日

发布了 androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha02。版本 1.1.0-alpha02 中包含这些提交内容

新功能

  • 支持动画自定义 (I0bf9c)、(I80e66),以便制作者在自适应 Scaffold 状态变化期间更改默认动作。制作者可以从一组默认的进入和退出转场效果中进行选择,也可以使用通过新的运动范围提供的信息实现纯自定义转场效果。
  • 实现了窗格展开拖动手柄的淡出动画 (46e3c69)
  • 将已保存的 PaneExpansionState 设为可保存 (61ff76f)

API 变更

  • 向 Scaffold 添加了缺失的窗格扩展 API (Ic5bc0)
  • ThreePaneScaffoldDestinationItem.content 已重命名为 contentKeyrememberListDetailPaneScaffoldNavigatorrememberSupportingPaneScaffoldNavigator 的默认类型参数已从 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 中包含这些提交内容

新功能

  • 引入了对自适应 Scaffold 的窗格展开支持。

API 变更

  • 向公开团队引入了窗格展开 API (I301d6)
  • 引入了 ThreePaneScaffoldState 来控制窗格值转换。添加了接受此状态的 ListDetailPaneScaffoldSupportingPaneScaffold 的重载。(I5db3b
  • 引入了窗格扩展键和密钥提供程序接口 (Id621f)

bug 修复

  • 修复了出现排除的合页时计算错误的分区问题。(9dfd483

Compose Material3 Adaptive 版本 1.0

版本 1.0.0

2024 年 9 月 4 日

发布了 androidx.compose.material3.adaptive:adaptive-*:1.0.0。版本 1.0.0 中包含这些提交内容

1.0.0 的主要功能

版本 1.0.0-rc01

2024 年 8 月 21 日

发布了 androidx.compose.material3.adaptive:adaptive-*:1.0.0-rc01。版本 1.0.0-rc01 中包含这些提交内容

bug 修复

  • 修复了出现排除的合页时计算错误的分区问题。(9dfd483

版本 1.0.0-beta04

2024 年 6 月 26 日

发布了 androidx.compose.material3.adaptive:adaptive-*:1.0.0-beta04。版本 1.0.0-beta04 包含这些提交内容

bug 修复

  • 修复了当合页边界更新时布局未相应地更新的问题。(71e9cf1)

版本 1.0.0-beta03

2024 年 6 月 12 日

发布了 androidx.compose.material3.adaptive:adaptive-*:1.0.0-beta03。版本 1.0.0-beta03 包含这些提交内容

bug 修复

  • 修复了由于 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 变更

  • HingeInfo 添加了 isFlat 信息(Ie0516b/333784198
  • 将自适应 API 设为非实验性 API (I1d038)
  • 将自适应布局 API 设为非实验性 API (Id23df)
  • BackNavigationBehavior 从枚举更改为了值类 (Id8757)

bug 修复

  • 将转换分数更改为 lambda (I6f5a9)
  • 修复了 SizeTracker 的初始状态问题 (18326a9)
  • Posture 相等性检查中添加了合页列表 (6687137)

版本 1.0.0-alpha11

2024 年 4 月 17 日

发布了 androidx.compose.material3.adaptive:adaptive-*:1.0.0-alpha11。版本 1.0.0-alpha11 中包含这些提交内容

API 变更

  • 将作用域接口密封。(Iefa57
  • 引入了 AnimatedPaneScope。(I62d73b/332750742
  • 确保 AdaptStrategy 已密封且稳定。(Ia28b2
  • 引入了 PaneScaffoldDirective 的复制方法。(I9291f
  • ThreePaneScaffoldScope 标记为实验性。(I9d527
  • 提供易于使用且支持导航的 Scaffold API。(I263f0b/321010778

版本 1.0.0-alpha10

2024 年 4 月 3 日

发布了 androidx.compose.material3.adaptive:adaptive-*:1.0.0-alpha10。版本 1.0.0-alpha10 中包含这些提交内容

API 变更

  • 使默认的首选宽度可自适应且可自定义。(Ic3abc)
  • 重命名了 Scaffold 指令计算函数。(I10855
  • 从 Scaffold 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 变更

  • ThreePaneScaffoldScope 添加了状态转换字段。(I3d917
  • 对 Scaffold 参数重新排序。(I4dff5
  • 提供 AnimatedPane 修饰符参数的默认值。(I77dd7

bug 修复

  • 将分隔符大小包含在窗格运动中。(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 日