Compose マテリアル 3 アダプティブ
最新の更新 | 安定版リリース | リリース候補版 | ベータ版リリース | アルファ版リリース |
---|---|---|---|---|
2025 年 7 月 2 日 | 1.1.0 | - | - | 1.2.0-alpha08 |
依存関係の宣言
compose への依存関係を追加するには、Google の Maven リポジトリをプロジェクトに追加する必要があります。詳しくは、Google の Maven リポジトリをご覧ください。
アプリまたはモジュールの build.gradle
ファイルに、必要なアーティファクトの依存関係を追加します。
Groovy
dependencies { implementation "androidx.compose.material3.adaptive:adaptive:1.2.0-alpha08" implementation "androidx.compose.material3.adaptive:adaptive-layout:1.2.0-alpha08" implementation "androidx.compose.material3.adaptive:adaptive-navigation:1.2.0-alpha08" }
Kotlin
dependencies { implementation("androidx.compose.material3.adaptive:adaptive:1.2.0-alpha08") implementation "androidx.compose.material3.adaptive:adaptive-layout:1.2.0-alpha08" implementation "androidx.compose.material3.adaptive:adaptive-navigation:1.2.0-alpha08" }
依存関係について詳しくは、ビルド依存関係の追加をご覧ください。
フィードバック
お寄せいただいたフィードバックは Jetpack 改善の参考にさせていただきます。新しい問題が見つかった場合や、このライブラリを改善するアイデアをお持ちの場合は、お知らせください。新しい問題を報告していただく前に、このライブラリの既存の問題をご確認ください。スターボタンをクリックすると、既存の問題に投票できます。
詳細については、Issue Tracker のドキュメントをご覧ください。
Compose Material3 Adaptive バージョン 1.2
バージョン 1.2.0-alpha08
2025 年 7 月 2 日
androidx.compose.material3.adaptive:adaptive-*:1.2.0-alpha08
がリリースされました。バージョン 1.2.0-alpha08 には、これらの commit が含まれています。
バージョン 1.2.0-alpha07
2025 年 6 月 18 日
androidx.compose.material3.adaptive:adaptive-*:1.2.0-alpha07
がリリースされました。バージョン 1.2.0-alpha07 には、これらの commit が含まれています。
API の変更
currentWindowAdaptiveInfo()
関数で大と特大のウィンドウ幅サイズクラスをサポートし、calculatePosture()
関数とcurrentWindowDpSize()
関数を安定版に昇格させます。(I92e97)
バージョン 1.2.0-alpha06
2025 年 5 月 20 日
androidx.compose.material3.adaptive:adaptive-*:1.2.0-alpha06
がリリースされました。バージョン 1.2.0-alpha06 にはこれらの commit が含まれています。
新機能
- デフォルトのペイン スキャフォールド ディレクティブの計算関数が、L と XL のウィンドウ幅サイズクラスをサポートするようになりました。
API の変更
Modifier.paneExpansionDraggable
でデフォルトのユーザー補助セマンティクスを提供し、関連する API を安定版に昇格(Idb818)- 浮遊ペインのドラッグしてサイズ変更をサポート(Idadd3)
- 浮遊ペインのスクリムをサポート(I9b091)
バージョン 1.2.0-alpha05
2025 年 5 月 7 日
androidx.compose.material3.adaptive:adaptive-*:1.2.0-alpha05
がリリースされました。バージョン 1.2.0-alpha05 には、これらの commit が含まれています。
新機能
- Material3 のアダプティブ レイアウトで、ペインをフローティング ポップアップに変換できる Levitated アダプティブ戦略がサポートされるようになりました。
API の変更
バグの修正
- アダプティブ サンプルでのコルーチン スコープの使用を修正(7631016)
バージョン 1.2.0-alpha04
2025 年 4 月 23 日
androidx.compose.material3.adaptive:adaptive-*:1.2.0-alpha04
がリリースされました。バージョン 1.2.0-alpha04 には、これらの commit が含まれています。
新機能
ListDetailPaneScaffold
とSupportingPaneScaffold
でリフロー戦略が利用できるようになりました。これにより、関連付けられたペインがシングルペイン レイアウト設定でリフローされます。
API の変更
バグの修正
- 最初のトランジションでペインがアニメーションしないバグを修正しました。(Ib0415)
- 優先される高さが機能しない問題を修正。(I1913b)
- スキャフォールディング ディレクティブが正しく更新されないバグを修正しました。(0403ab)
バージョン 1.2.0-alpha03
2025 年 4 月 9 日
androidx.compose.material3.adaptive:adaptive-*:1.2.0-alpha03
がリリースされました。バージョン 1.2.0-alpha03 には、これらの commit が含まれています。
バグの修正
- 単一ペイン レイアウトでドラッグ ハンドルが正しく表示されない問題を修正しました。(806e443 )
依存関係の更新
- このライブラリは Kotlin 2.0 言語レベルをターゲットとするようになり、KGP 2.0.0 以降が必要になりました。(Idb6b5)
バージョン 1.2.0-alpha02
2025 年 3 月 26 日
androidx.compose.material3.adaptive:adaptive-*:1.2.0-alpha02
がリリースされました。バージョン 1.2.0-alpha02 には、これらの commit が含まれています。
バージョン 1.2.0-alpha01
2025 年 3 月 12 日
androidx.compose.material3.adaptive:adaptive-*:1.2.0-alpha01
がリリースされました。バージョン 1.2.0-alpha01 にはこれらの commit が含まれています。
API の変更
- デベロッパーが新しい適応戦略で適用されるペインの推奨の高さを指定するための
PaneScaffoldScope.preferredHeight
修飾子を導入します。(I957dd、b/220960090) ComponentOverride
型の名前をOverride
に、ComponentOverrideContext
型の名前をOverrideScope
に変更しました。(Id973c)- 一部のコンポーネント オーバーライド メソッドの名前を変更しました。(I222b3)
Compose Material3 アダプティブ バージョン 1.1
バージョン 1.1.0
2025 年 3 月 12 日
androidx.compose.material3.adaptive:adaptive-*:1.1.0
がリリースされました。バージョン 1.1.0 にはこれらの commit が含まれています。
1.0.0 以降の重要な変更
ListDetailPaneScaffold
とSupportingPaneScaffold
でペインの展開機能がサポートされるようになりました。ユーザーはドラッグしてデュアルペイン レイアウトのデフォルトのペイン分割を変更できます。デベロッパーは、新たに導入されたPaneExpansionState
を変更することで、実行時にペイン分割を変更することもできます。NavigableListDetailPaneScaffold
とNavigableSupportingPaneScaffold
でデフォルトの予測型「戻る」のサポートが利用できるようになりました。ThreePaneScaffoldPredictiveBackHandler
を使用して、独自の 3 ペイン スキャフォールド実装で予測型「戻る」のサポートを提供することもできます。AnimatedPane
に異なるEnterTransition
とExitTransition
を指定することで、ペインの切り替え時のペインの動きをカスタマイズできるようになりました。
バージョン 1.1.0-rc01
2025 年 2 月 26 日
androidx.compose.material3.adaptive:adaptive-*:1.1.0-rc01
がリリースされました。バージョン 1.1.0-rc01 にはこれらの commit が含まれています。
バグの修正
- 3 ペイン スキャフォールドの予測型「戻る」スケールを無効化(ab6fd0b)
バージョン 1.1.0-beta02
2025 年 2 月 12 日
androidx.compose.material3.adaptive:adaptive-*:1.1.0-beta02
がリリースされました。バージョン 1.1.0-beta02 には、これらの commit が含まれています。
API の変更
- 状態の一貫性を維持するために、
MutableThreePaneScaffoldState
アニメーション関数でisPredictiveBackInProgress
を設定する方法を変更しました。(Idc97f)
バグの修正
- ライブラリの他の部分との一貫性を保つため、
NavigableListDetailPaneScaffold
とNavigableSupportingPaneScaffold
のデフォルトの戻る動作がPopUntilScaffoldValueChange
に変更されました。(I873f0) - ペイン スキャフォールドのアクセシビリティ トラバーシングの順序を正しく設定します。(67d030)
- ペインのコンテンツの状態が保存されない問題を修正しました。(88b0ff)
- ドラッグの代わりにユーザー補助の代替アクションをサポートします。(28266d)
- 現在のペイン分割が変更された後、それをアナウンスします。(0c3a80)
バージョン 1.1.0-beta01
2025 年 1 月 29 日
androidx.compose.material3.adaptive:adaptive-*:1.1.0-beta01
がリリースされました。バージョン 1.1.0-beta01 にはこれらの commit が含まれています。
API の変更
- オフセット タイプのペイン展開アンカーをそれぞれ開始と終了から作成するファクトリー関数を導入します。(I2eb21)
PaneMotion
インターフェースを封印し、そのデフォルトの遷移メソッドを削除しました。(Ifc4c7)- 現在のアクティブなアンカーを取得し、アンカーにアニメーションで移動する API を導入します。(Icf95d)
- ペイン展開用のアクセシビリティ API を導入(Icc669)
PaneScaffoldParentData.preferredWidth
のタイプを DP に変更します。(Id98ee)
バージョン 1.1.0-alpha09
2025 年 1 月 15 日
androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha09
がリリースされました。バージョン 1.1.0-alpha09 にはこれらの commit が含まれています。
API の変更
- 新しい試験運用版のアノテーション
ExperimentalMaterial3AdaptiveComponentOverrideApi
を追加して使用します。(Id45aa) ThreePaneScaffoldHorizontalOrder.toLtrOrder
を非表示にします。(I6f8d2)ThreePaneScaffoldPredictiveBackHandler
が公開されました。(I1a995、b/370543873)isPredictiveBackInProgress
プロパティをThreePaneScaffoldState
に追加しました。(I1a995、b/370543873)- さまざまなフォーム ファクタのサイドローディング実装をサポートするため、
AnimatedPane
のオーバーライド メカニズムを作成します。(Id7622)
バグの修正
- セトリングの方向にアンカーがない場合の問題を修正しました。(df8257d)
バージョン 1.1.0-alpha08
2024 年 12 月 12 日
androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha08
がリリースされました。バージョン 1.1.0-alpha08 には、これらの commit が含まれています。
API の変更
currentWindowDpSize
関数を導入します。(I99125、b/296300441)PaneScaffoldParentData
とThreePaneScaffoldHorizontalOrder.toLtrOrder()
を公開(I2d6b7)PaneScaffoldMotionScope
を削除し、PaneScaffoldTransitionScope
のフィールドにします。また、名前をPaneScaffoldMotionDataProvider
に変更し、PaneMotionData の基盤となるデータ構造へのアクセスを削除します。代わりに、データにアクセスするためのゲッター メソッドとループ メソッドを提供します。(Id8884)- さまざまなフォーム ファクタのサイドローディング実装をサポートするため、
ThreePaneScaffold
のオーバーライド メカニズムを作成します。(I5280f) - ペインの展開状態をデフォルトで null にします(Ia65f8、b/376394520)
バージョン 1.1.0-alpha07
2024 年 11 月 13 日
androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha07
がリリースされました。バージョン 1.1.0-alpha07 にはこれらの commit が含まれています。
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 にはこれらの commit が含まれています。
API の変更
PaneScaffoldTransitionScope.motionProgress
にFloatRange
を追加しました。(Iac0dd)- ナビゲーション可能なスキャフォールドでナビゲーター パラメータの型をジェネリック型に変更します。(I1da6e)
バージョン 1.1.0-alpha05
2024 年 10 月 16 日
androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha05
がリリースされました。バージョン 1.1.0-alpha05 には、これらの commit が含まれています。
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 には、これらの commit が含まれています。
新機能
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 にはこれらの commit が含まれています。
バージョン 1.1.0-alpha02
2024 年 9 月 4 日
androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha02
がリリースされました。バージョン 1.1.0-alpha02 にはこれらの commit が含まれています。
新機能
- モーションのカスタマイズ(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 にはこれらの commit が含まれています。
新機能
- アダプティブ スキャフォールドのペイン展開サポートを導入します。
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 にはこれらの commit が含まれています。
1.0.0 の主な機能
- アプリを適応させるために必要なウィンドウ情報(ウィンドウ サイズや折りたたみ機能など)を取得する 1 行のコンポーザブル関数
currentWindowSize()
、collectFoldingFeaturesAsState()
、currentWindowAdaptiveInfo()
。 ListDetailPaneScaffold
とSupportingPaneScaffold
を使用して、さまざまなウィンドウ構成に応じて自動的に調整される 2 つのマテリアル 3 の正規レイアウトを提供します。この 2 つの足場は、メーカーのさまざまなニーズに合わせて完全にカスタマイズすることもできます。ThreePaneScaffoldNavigator
とその関連する記憶関数rememberListDetailPaneScaffoldNavigator()
とrememberSupportingPaneScaffoldNavigator()
を使用して、適応型スキャフォールド内でナビゲーション ソリューションを提供します。これにより、適応型でない世界で一般的な 1 つの宛先を一度に設定するのとは異なり、複数のナビゲーションの宛先を同時に表示できます。- アダプティブ スキャフォールドの状態を変更する際のデフォルトの組み込み Material3 アニメーション。
バージョン 1.0.0-rc01
2024 年 8 月 21 日
androidx.compose.material3.adaptive:adaptive-*:1.0.0-rc01
がリリースされました。バージョン 1.0.0-rc01 にはこれらの commit が含まれています。
バグの修正
- 除外されたヒンジが存在する場合の誤ったパーティション計算を修正。(9dfd483)
バージョン 1.0.0-beta04
2024 年 6 月 26 日
androidx.compose.material3.adaptive:adaptive-*:1.0.0-beta04
がリリースされました。バージョン 1.0.0-beta04 には、これらの commit が含まれています。
バグの修正
- ヒンジの境界が更新されたときにレイアウトがそれに応じて更新されない問題を修正します。(71e9cf1)
バージョン 1.0.0-beta03
2024 年 6 月 12 日
androidx.compose.material3.adaptive:adaptive-*:1.0.0-beta03
がリリースされました。バージョン 1.0.0-beta03 にはこれらの commit が含まれています。
バグの修正
- beta02 での依存関係の解決が正しくないために発生するクラッシュを修正しました。
バージョン 1.0.0-beta02
2024 年 5 月 29 日
androidx.compose.material3.adaptive:adaptive-*:1.0.0-beta02
がリリースされました。バージョン 1.0.0-beta02 にはこれらの commit が含まれています。
バージョン 1.0.0-beta01
2024 年 5 月 14 日
androidx.compose.material3.adaptive:adaptive-*:1.0.0-beta01
がリリースされました。バージョン 1.0.0-beta01 にはこれらの commit が含まれています。
バージョン 1.0.0-alpha12
2024 年 5 月 1 日
androidx.compose.material3.adaptive:adaptive-*:1.0.0-alpha12
がリリースされました。バージョン 1.0.0-alpha12 には、これらの commit が含まれています。
API の変更
isFlat
の情報をHingeInfo
に追加(Ie0516、b/333784198)- アダプティブ API を試験運用版ではなくしました(I1d038)
- アダプティブ レイアウト API を試験運用版ではなくしました(Id23df)
BackNavigationBehavior
を列挙型から値クラスに変更しました(Id8757)
バグの修正
バージョン 1.0.0-alpha11
2024 年 4 月 17 日
androidx.compose.material3.adaptive:adaptive-*:1.0.0-alpha11
がリリースされました。バージョン 1.0.0-alpha11 には、これらの commit が含まれています。
API の変更
- スコープ インターフェースを sealed にします。(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 にはこれらの commit が含まれています。
API の変更
- デフォルトの推奨幅を適応可能でカスタマイズ可能にします。(Ic3abc)
- スキャフォールディング ディレクティブの計算関数の名前を変更します。(I10855)
- スキャフォールディング API からパディングとインセットを削除しました。(I786f8)
- ジェネリック型のないナビゲーターの記憶メソッドを追加。(I607c3)
バージョン 1.0.0-alpha09
2024 年 3 月 20 日
androidx.compose.material3.adaptive:adaptive-*:1.0.0-alpha09
がリリースされました。バージョン 1.0.0-alpha09 には、これらの commit が含まれています。
API の変更
ThreePaneScaffoldScope
に状態遷移フィールドを追加します。(I3d917)- スキャフォールディング パラメータの順序を変更します。(I4dff5)
AnimatedPane
修飾子のパラメータのデフォルト値を指定します。(I77dd7)
バグの修正
- ペインのモーションにスペーサーのサイズを含めます。(a3174ca)
バージョン 1.0.0-alpha08
2024 年 3 月 6 日
androidx.compose.material3.adaptive:adaptive-*:1.0.0-alpha08
がリリースされました。バージョン 1.0.0-alpha08 にはこれらの commit が含まれています。
新機能
- ペインを切り替えるときに遅延スライドインを実装します。(I1a38e)
API の変更
ThreePaneScaffoldState
インターフェースを削除しました。(I63f23)
バージョン 1.0.0-alpha07
2024 年 2 月 21 日