Compose マテリアル 3

マテリアル デザインの進化版であるマテリアル デザイン 3 コンポーネントで Jetpack Compose UI を構築します。マテリアル 3 には、最新のテーマ設定とコンポーネント、ダイナミック カラーなどの Material You のパーソナライズ機能が含まれており、Android 12 の新しい視覚的スタイルとシステム UI と調和するように設計されています。
最新の更新 安定版リリース リリース候補版 ベータ版リリース アルファ版リリース
2024 年 5 月 14 日 1.2.1 - 1.3.0-beta01 -

構造

Compose は、androidx 内の 7 つの Maven グループ ID の組み合わせです。各グループにはそれぞれの目的に応じて Compose の機能のサブセットが含まれており、それぞれに固有のリリースノートがあります。

次の表に、各グループの説明と、それぞれのリリースノートのリンクを示します。

グループ説明
compose.animationJetpack Compose アプリ内でアニメーションを作成して、ユーザー エクスペリエンスを高めます。
compose.compiler@Composable 関数を変換し、Kotlin コンパイラ プラグインで最適化を有効にします。
compose.foundationすぐに使用できるビルディング ブロックで Jetpack Compose アプリを作成し、基盤を拡張して独自のデザイン システム要素を構築します。
compose.materialすぐに使用できるマテリアル デザイン コンポーネントで Jetpack Compose UI を構築します。Compose の上位レベルのエントリ ポイントであり、www.material.io のガイドラインと適合するコンポーネントを提供するように設計されています。
compose.material3マテリアル デザインの進化版であるマテリアル デザイン 3 コンポーネントで Jetpack Compose UI を構築します。マテリアル 3 には、最新のテーマ設定とコンポーネント、ダイナミック カラーなどの Material You のパーソナライズ機能が含まれており、Android 12 の新しい視覚的スタイルとシステム UI と調和するように設計されています。
compose.runtimeCompose のプログラミング モデルと状態管理の基本ビルディング ブロックと、Compose コンパイラ プラグインがターゲットとするコアランタイム。
compose.uiレイアウト、描画、入力などのデバイス操作に必要な Compose UI の基本コンポーネント。

依存関係の宣言

Compose への依存関係を追加するには、Google の Maven リポジトリをプロジェクトに追加する必要があります。詳しくは、Google の Maven リポジトリをご覧ください。

アプリまたはモジュールの build.gradle ファイルに、必要なアーティファクトの依存関係を追加します。

Groovy

dependencies {
    implementation "androidx.compose.material3:material3:1.2.1"
    implementation "androidx.compose.material3:material3-window-size-class:1.2.1"
    implementation "androidx.compose.material3:material3-adaptive-navigation-suite:1.3.0-beta01"
}

android {
    buildFeatures {
        compose true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.1.1"
    }

    kotlinOptions {
        jvmTarget = "1.8"
    }
}

Kotlin

dependencies {
    implementation("androidx.compose.material3:material3:1.2.1")
    implementation("androidx.compose.material3:material3-window-size-class:1.2.1")
    implementation("androidx.compose.material3:material3-adaptive-navigation-suite:1.3.0-beta01")
}

android {
    buildFeatures {
        compose = true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.1.1"
    }

    kotlinOptions {
        jvmTarget = "1.8"
    }
}

依存関係について詳しくは、ビルド依存関係の追加をご覧ください。

フィードバック

お寄せいただいたフィードバックは Jetpack 改善の参考にさせていただきます。新しい問題が見つかった場合や、このライブラリを改善するアイデアをお持ちの場合は、お知らせください。新しい問題を報告していただく前に、このライブラリの既存の問題をご確認ください。スターボタンをクリックすると、既存の問題に投票できます。

新しい問題を報告する

詳細については、Issue Tracker のドキュメントをご覧ください。

Compose Material3 Common バージョン 1.0

バージョン 1.0.0-alpha01

2024 年 4 月 17 日

androidx.compose.material3:material3-common:1.0.0-alpha01androidx.compose.material3:material3-common-android:1.0.0-alpha01androidx.compose.material3:material3-common-desktop:1.0.0-alpha01 がリリースされました。バージョン 1.0.0-alpha01 に含まれる commit については、こちらをご覧ください。

新機能

マテリアル デザイン コンポーネントの作成に使用できるテーマレス コンポーネント:

Compose Material3 Adaptive Navigation Suite バージョン 1.0

バージョン 1.0.0-alpha07

2024 年 5 月 1 日

androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha07androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha07androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha07 がリリースされました。バージョン 1.0.0-alpha07 に含まれる commit については、こちらをご覧ください。

API の変更

  • Navigation Suite API を試験運用版でなくしました(If62af

バグの修正

  • デフォルトでコンテンツのインセットを使用する(50266df

バージョン 1.0.0-alpha06

2024 年 4 月 17 日

androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha06androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha06androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha06 がリリースされました。バージョン 1.0.0-alpha06 に含まれる commit については、こちらをご覧ください。

API の変更

  • containerColorcontentColorNavigationSuiteScaffoldDefaults に追加しました。(I64e3ab/331993720
  • itemColors 関数を NavigationSuiteDefaults に追加しています。(Idf719b/328480012
  • NavigationSuiteScope をシールします。(Iefa57

バージョン 1.0.0-alpha05

2024 年 3 月 6 日

androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha05androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha05androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha05 がリリースされました。バージョン 1.0.0-alpha05 に含まれる commit については、こちらをご覧ください。

API の変更

  • NavigationSuiteItemColors コンストラクタを公開しました。(Ica83ab/324886877

バージョン 1.0.0-alpha04

2024 年 2 月 21 日

androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha04androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha04androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha04 がリリースされました。バージョン 1.0.0-alpha04 に含まれる commit については、こちらをご覧ください

依存関係の更新

  • マテリアル 3 のアダプティブ依存関係を新しいモジュールパスに更新します。(Ibc421
  • ウィンドウ サイズクラスの Window Manager バージョンを使用するように移行します。(I3794d

バージョン 1.0.0-alpha03

2024 年 2 月 7 日

androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha03androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha03androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha03 がリリースされました。バージョン 1.0.0-alpha03 に含まれる commit については、こちらをご覧ください

API の変更

  • パッケージ名を navigation-suite から navigationsuite に更新しました。(I7eff7
  • API で MutableInteractionSource を公開している Material3 コンポーネントが更新され、デフォルトで null の null 値許容の MutableInteractionSource が公開されるようになりました。セマンティックの変更はありません。null を渡すと、MutableInteractionSource はホイスティングされず、必要に応じてコンポーネント内に作成されます。null に変更すると、一部のコンポーネントで MutableInteractionSource が割り当てられなくなり、他のコンポーネントが必要な場合にのみインスタンスを遅延して作成できるようになります。これにより、これらのコンポーネント全体のパフォーマンスが向上します。これらのコンポーネントに渡す MutableInteractionSource を使用しない場合は、代わりに null を渡すことをおすすめします。独自のコンポーネントにも同様の変更を行うことをおすすめします。(I41abbb/298048146

バージョン 1.0.0-alpha02

2023 年 12 月 13 日

androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha02androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha02androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha02 がリリースされました。バージョン 1.0.0-alpha02 に含まれる commit については、こちらをご覧ください

新機能

  • 「None」の NavigationSuiteType を追加しました。(If8cb1b/313688598

バグの修正

  • ルート サーフェスに modifier.fillMaxSize がある場合に画面全体に表示されるナビゲーション コンポーネントを修正しました。(c9cf250b/312664933

バージョン 1.0.0-alpha01

2023 年 11 月 15 日

androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha01 がリリースされました。バージョン 1.0.0-alpha01 に含まれる commit については、こちらをご覧ください

新機能

Compose Material3 Adaptive バージョン 1.0

バージョン 1.0.0-alpha06

2024 年 2 月 7 日

androidx.compose.material3:material3-adaptive:1.0.0-alpha06androidx.compose.material3:material3-adaptive-android:1.0.0-alpha06androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha06 がリリースされました。バージョン 1.0.0-alpha06 に含まれる commit については、こちらをご覧ください。

新機能

  • ThreePaneScaffoldNavigator の「戻る」ナビゲーションの動作オプションを追加しました。(I858aa
  • ナビゲーション履歴にオプションのデスティネーション コンテンツを追加しました。(Ibd7e6

バージョン 1.0.0-alpha05

2024 年 1 月 24 日

androidx.compose.material3:material3-adaptive:1.0.0-alpha05androidx.compose.material3:material3-adaptive-android:1.0.0-alpha05androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha05 がリリースされました。バージョン 1.0.0-alpha05 に含まれる commit については、こちらをご覧ください

新機能

  • スキャフォールド ナビゲーションと値計算で履歴認識をサポートしました。(I71d46

バージョン 1.0.0-alpha04

2024 年 1 月 10 日

androidx.compose.material3:material3-adaptive:1.0.0-alpha04androidx.compose.material3:material3-adaptive-android:1.0.0-alpha04androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha04 がリリースされました。バージョン 1.0.0-alpha04 に含まれる commit については、こちらをご覧ください

新機能

  • ペイン スキャフォールドにエッジ ツー エッジのサポートを追加しました。(I1b462

API の変更

  • Posture のヒンジ境界プロパティをヒンジ情報のリストに移動しました。(I24f90

バグの修正

  • AnimatedPane が再コンポーズされない問題を修正しました。(c3f573d

バージョン 1.0.0-alpha03

2023 年 12 月 13 日

androidx.compose.material3:material3-adaptive:1.0.0-alpha03androidx.compose.material3:material3-adaptive-android:1.0.0-alpha03androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha03 がリリースされました。バージョン 1.0.0-alpha03 に含まれる commit については、こちらをご覧ください

API の変更

  • スキャフォールドのロールを ThreePaneScaffoldRole のエイリアスに変更します。(I65bd1
  • スキャフォールド ロールの基本クラスを作成します。(I4784d
  • AnimatedPane のコンテンツから不要なパラメータを削除しました。(Ibc73b
  • collectWindowSizeAsState の名前を変更し、代わりに未加工の値を返します。(I480f4

バージョン 1.0.0-alpha02

2023 年 11 月 29 日

androidx.compose.material3:material3-adaptive:1.0.0-alpha02androidx.compose.material3:material3-adaptive-android:1.0.0-alpha02androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha02 がリリースされました。バージョン 1.0.0-alpha02 に含まれる commit については、こちらをご覧ください

API の変更

  • アダプティブ スキャフォールド API からの分割ナビゲーション API。(Ic4045
  • GutterSize クラスを削除しました。(I785b3

バグの修正

  • AnimatedPane が使用されていない場合にペインが切り替わらない問題を修正しました。(d88f181

バージョン 1.0.0-alpha01

2023 年 11 月 15 日

androidx.compose.material3:material3-adaptive:1.0.0-alpha01 がリリースされました。バージョン 1.0.0-alpha01 に含まれる commit については、こちらをご覧ください

新機能

マテリアル 3 のアダプティブ コンディション API:

マテリアル 3 のアダプティブ ペイン スキャフォールド ディレクティブ API:

マテリアル 3 のアダプティブ ペイン スキャフォールド API:

Compose Material3 バージョン 1.3

バージョン 1.3.0-beta01

2024 年 5 月 14 日

androidx.compose.material3:material3-*:1.3.0-beta01 がリリースされました。バージョン 1.3.0-beta01 に含まれる commit については、こちらをご覧ください。

API の変更

  • CaretProperties ではなく DpSize を使用します。CaretProperties を削除しています。CaretScopeTooltipScope に変更しました。(Id9a76
  • テキスト内でマテリアル テーマのリンクを取得するための API を更新しました。具体的には、テーマに沿った LinkAnnotations を作成し、テーマに沿ったリンクで HTML を解析するための TextDefaults からメソッドを削除しました。代わりに、テキスト コンポーザブルにパラメータとしてリンクのスタイルを設定できる TextLinkStyles クラスを追加しました。(I31b93

バージョン 1.3.0-alpha06

2024 年 5 月 1 日

androidx.compose.material3:material3-*:1.3.0-alpha06 がリリースされました。バージョン 1.3.0-alpha06 に含まれる commit については、こちらをご覧ください。

互換性を破る変更

  • 新しい pull-to-Refresh API:

    • PullToRefreshState を簡素化し、Dp 単位の代わりに小数値を使用するようにしました。
    • isRefreshing の状態は、PullToRefreshState ではなくユーザーが制御します。
    • ネストされたスクロール接続を PullToRefreshState から分離しました。新しい PullToRefreshBox または Modifier.pullToRefresh によって処理されます。
    • このアップデートは、以前の試験運用版 API に対する互換性を破る変更です。(I0adebb/314496282b/317177684b/323787138b/324573502b/317177683

API の変更

  • RippleConfiguration#isEnabled が削除され、LocalRippleConfiguration が null 値許容型になりました。リップルを無効にするには、RippleConfigurationisEnabled = false を指定するのではなく、nullLocalRippleConfiguration に渡します。(I22725
  • 端から端まで表示可能な場合、ModalBottomSheet がステータスバーの上にスクリムを描画する精度が向上しました。モーダル ボトムシート コンテンツでウィンドウ インセットを使用できるようになり、ナビゲーション バーの上にコンテンツを表示できるようになりました。ModalBottomSheet パラメータ windowInsets の名前が contentWindowInsets に変更され、インセットが適用される場所を指定できるようになり、ウィンドウ ロジックに関連付けられなくなりました。contentWindowInsets 型を WindowInsets を返す関数に変更し、新しいウィンドウ内で解決できるようにしました。(I39630b/274872542b/300280229b/290893168
  • PrimaryScrollableTabRowSecondaryScrollableTabRow がサブコンポジションではなくカスタム レイアウトを使用するようになり、パフォーマンスが向上しました。(I991e0
  • テキストリンクに、通常のスタイル設定に加え、カーソルを合わせた状態とフォーカスした状態のスタイル設定オプションが追加されました。それをサポートするために、TextDefaults メソッドそれぞれに pressedStyle 引数が割り当てられました。(Ic473fb/139312671

バグの修正

  • ナビゲーション ドロワーのドラッグ アンカーが drawerContent の幅と一致するようになりました。(Ibc72fb/245355396
  • ラベルの上パディング OutlinedTextField がシステムのフォントサイズに対応するようになりました。(Idc781
  • CalendarLocale のパッケージの場所を修正しました。(Ifa235
  • [予測型「戻る] 予測型「戻る」アニメーションを更新して、(0.1, 0.1, 0, 1)の補間曲線を使用するようにしました。(I2591a

バージョン 1.3.0-alpha05

2024 年 4 月 17 日

androidx.compose.material3:material3-*:1.3.0-alpha05 がリリースされました。バージョン 1.3.0-alpha05 に含まれる commit については、こちらをご覧ください。

新機能

  • SearchBarDockedSearchBar に、テキスト フィールド パラメータを受け取る新しいオーバーロードが追加されました。これにより、検索バーの他の部分とは別にテキスト フィールドのスタイルを設定できるほか、カスタム テキスト フィールドを渡すこともできます。現在の実装のテキスト フィールドを SearchBarDefaults.InputField として利用できるようになりました。(I50c73b/275074248b/278773336b/326627700
  • 必要に応じてティックをカスタマイズするために、ラムダ drawTick が公開 API に追加されました。(I0c048

API の変更

  • テキストリンクに、通常のスタイル設定に加えて、押下状態のスタイル設定のオプションが追加され、カーソルを合わせたりフォーカスしたりできるようになりました。(I5f864b/139312671
  • アイテムをクリップするマスク Rect を公開するように CarouselItemInfo を更新しました。(I785d8
  • マテリアル 3 の公開 API から BasicTooltipState を削除しました。Foundation の BasicTooltip が安定するまで、この機能は TooltipState と組み合わされます。(Icda29
  • LinkAnnotation を作成し、MaterialTheme をリンクに適用する HTML タグ付き文字列を解析するメソッドを含む TextDefaults オブジェクトを追加しました。(I98532b/139312671
  • ExposedDropdownMenuBoxScope はサブクラスを使用できなくなりました。露出したプルダウン メニューに MenuAnchorType が追加されました。これは、ユーザー補助を改善するために menuAnchor に渡す必要があります。これは、サポートが終了した ExposedDropdownMenufocusable を渡す代わりに使用する必要があります。menuAnchor に、enabled の状態を制御する新しいパラメータが追加されました。(I55ee6b/257209915b/308840226
  • 無効な場合の OutlinedButton の枠線の色を修正しました。有効状態を受け取る ButtonDefaults.outlinedButtonBorder("enabled") オーバーロードを追加しました。(Ie650bb/318461363
  • クライアントが商品のサイズに関する情報を取得できるように、新しい CarouselItemInfo クラスを追加しました。(I9070c
  • サーフェス コンテナのない ColorScheme コンストラクタは非推奨になりました。サーフェス コンテナを含むコンストラクタに移行してください。(I35c11
  • [アウトライン]TextFieldDefaults ContainerBox の名前を Container に変更しました。(Ie8d3b

バグの修正

  • sheetSwipeEnabled が false の場合、BottomSheetScaffold はネストされたスクロールからスクロールしなくなります。(I5e1c1b/306464779
  • IconButtonSamples.kt から一部の ExperimentalMaterial3Api OptIn アノテーションを削除しました。(I111d1

バージョン 1.3.0-alpha04

2024 年 4 月 3 日

androidx.compose.material3:material3-*:1.3.0-alpha04 がリリースされました。バージョン 1.3.0-alpha04 に含まれる commit については、こちらをご覧ください。

新機能

  • Material3 カルーセルの 2 つの試験運用版バージョン(HorizontalMultiBrowseCarouselHorizontalUncontainedCarousel)を追加しました。(I88d64
  • オプトインとして U+ の予測型「戻る」をサポートするように Compose M3 ナビゲーション ドロワー(ModalDrawerSheetDismissibleDrawerSheet)を更新しました。(Ie5b0b
  • 再コンポーズを回避するために、色合いをラムダとして渡すことができる新しい API を Icon に追加しました。(I5b5a2
  • トップ アプリバー API で、固定セクションと折りたたみ可能セクションの両方でカスタムの高さがサポートされるようになりました。 (Ib8b0cb/323403446

API の変更

  • トップ アプリバーの API で、固定セクションと折りたたみ可能セクションの両方でカスタムの高さがサポートされるようになりました。コンテンツをスクロールしたときに、1 行のトップアプリバーが何度も再コンポーズされる問題を修正しました。フォントや表示の設定が大きいデバイスで、タイトルが MediumTopAppBar 切り捨てられる問題を解決しました。(Ib8b0cb/323403446b/300953236b/286296147b/330410290b/308540676
  • SegmentedButton とそれに関連する API が安定版になりました。(I8a158
  • SwipeToDismissBoxSwipeToDismissBoxDefaultsSwipeToDismissBoxStateSwipeToDismissBoxValue が安定版としてマークされました。(I5f000
  • 非推奨となった DismissDirectionDismissValue の列挙型と API を削除しました。(I89ccd
  • カルーセルの CarouselState コンパニオン オブジェクトに試験運用版のタグを追加しました。(I94154
  • LocalMinimumInteractiveComponentEnforcement を非推奨とし、それに代わる LocalMinimumInteractiveComponentSize を導入しました。(I7a7ac
  • SearchBarColors コンストラクタがパブリックになりました。(I769ca
  • gesturesEnabled パラメータを SwipeToDismissBox に追加しました。(Idc59fb/324170119
  • 非推奨および試験運用版としてマークされたテキスト フィールド API を削除しました。(I1305f

バージョン 1.3.0-alpha03

2024 年 3 月 20 日

androidx.compose.material3:material3-*:1.3.0-alpha03 がリリースされました。バージョン 1.3.0-alpha03 に含まれる commit については、こちらをご覧ください。

視覚的な互換性を破る変更

  • 十分な色のコントラストを確保するために、フォーカス状態のオーバーレイを 0.1f に更新しました。(I7ea77
  • lightColorSchemedarkColorScheme のサーフェスと背景色のデフォルトのわずかな調整。(I9db52

新機能

  • ExposedDropdownMenu をカスタマイズするためのパラメータを追加しました。特に、メニューに focusable パラメータ(デフォルトは true)が追加されました。編集可能なテキスト フィールドを操作するときは、このパラメータを false に設定する必要があります。(I4184cb/323694447b/278609042

API の変更

  • ScaffoldSubcomposeInMeasureFix フラグが削除されました。(Ie2a4b
  • NavigationRailItemColors@Immutable としてマークされるようになりました。(If6112b/327660613
  • NavigationBarItemColors@Immutable としてマークされるようになりました。(I42a30b/298064514
  • スライダー トラック コンポーザブルのパラメータを並べ替える。(I9f315
  • ExposedDropdownMenuPopup を使用して実装されるようになりました。動作は同じです。ただし、編集可能なテキスト フィールドがあるフォーカス可能なメニューは、キーボードでの入力時に閉じることができます。

バグの修正

  • サーフェス コンテナとサーフェス コンテナのベースライン ロールが少し調整され、ライトモードとダークモードの色合いが良くなりました。(I677a5
  • テキスト以外の新しいコントラスト仕様に合わせて、スライダーと ProgressIndicator の色を更新しました。(I26807
  • 十分な色のコントラストを確保するために、フォーカス状態のオーバーレイを 0.1f に更新しました。(I7ea77
  • lightColorSchemedarkColorScheme のサーフェスと背景色のデフォルトのわずかな調整。(I9db52

バージョン 1.3.0-alpha02

2024 年 3 月 6 日

androidx.compose.material3:material3-*:1.3.0-alpha02 がリリースされました。バージョン 1.3.0-alpha02 に含まれる commit については、こちらをご覧ください。

API の変更

  • スライダーの状態を再び安定させます。State.onValueChangeFinished を再度値にします。rememberUpdatedStateonValueChangeFinished をラップする。(I82ab2b/322269951
  • Navigation コンポーネントで新しい SurfaceContainer ロールが使用されるようになりました。DrawerDefaults が個別の standardContainerColor 属性と modalContainerColor 属性を提供するようになりました。DrawerDefaults.ModalDrawerElevation0.dp になりました。(I7fbac
  • state.onValueChangeFinishedvar に変更するため、Slider の状態から @Stable を削除します。(Ied34ab/322269951
  • ModalBottomSheetStandardBottomSheet のアニメーション仕様が、スプリング アニメーションから更新された TweenSpec になりました。これにより、目に見えるオーバーシュートの問題が解決されます。密度のない非推奨の SheetState コンストラクタが削除されました。(I7babcb/285847707

バグの修正

  • SurfaceContainer バリアントがコンポーネントで使用されるようになりました。サーフェスと TonalElevation で正式に色が計算されたコンポーネントは、色調エレベーションの影響を受けずに、デフォルトで SurfaceContainer ロールを使用するようになりました。(b/304584161
  • ElevatedFilterChip が選択されていない、無効になっているコンテナの色が黒になるバグを修正しました。(I400e6b/322407043
  • 進行状況が 0 の場合の不確定な進行状況インジケーターを修正しました。(Id6582
  • RTL レイアウトでの SliderRangeSlider に関する問題を修正しました。(Iab0e1
  • 浮動小数点数の丸めが不正確になる可能性があるため、スライダーの範囲の計算に SliderRangeTolerance を追加しました。(Ic918ab/324934900
  • DateRangePicker をネストする場合や、小さな画面にフォントの大きな画面であらゆる種類の日付選択ツールを表示する場合に、DatePickerDialog でボタンが表示されることを確認します。(Ie4758b/325107799b/277768544
  • Menu は、コンテナの色に対して SurfaceContainer ロールを利用するようになりました。MenuDefaults.TonalElevation0.dp になりました。(I135b7
  • TextField は、コンテナの色に対して SurfaceContainerHighest ロールを利用するようになりました。(I4dced
  • 昇格したチップが SurfaceContainerLow ロールを利用するようになりました。(I7cd2f
  • DatePicker のコンテナの色が SurfaceContainerHigh になりました。DatePickerDefaults.TonalElevation0.dp になりました。(Ida753
  • ボトムシート コンテナの色とドラッグ ハンドルの色を更新します。(I72a0a
  • RichTooltip のコンテナの色が SurfaceContainer になりました。(Ia8b45
  • SearchBar のコンテナの色が SurfaceContainerHighest になりました。SearchBarDefaults.TonalElevation0.dp になりました。(I88604
  • スイッチを無効にして、選択解除したトラック/アイコンを更新し、SurfaceContainerHighest カラーロールを活用します。(I7687a
  • AlertDialog のコンテナの色が SurfaceContainerHigh になりました。(Ie0433
  • BottomAppBar のコンテナの色が SurfaceContainer になりました。TopAppBaronScroll の色が SurfaceContainer になりました。(I41630
  • ElevatedCard のコンテナの色が SurfaceContainerLow になりました。FilledCard のコンテナの色は SurfaceContainerHighest です。(I35141
  • ElevatedButton のコンテナの色が SurfaceContainerLow になりました。FilledIconButton の選択を解除すると、コンテナの色が SurfaceContainerHighest になりました。(I792c9
  • TimePicker コンテナの色と時計の文字盤の色のロールを SurfaceContainerHighest に更新しました。(I43b93

バージョン 1.3.0-alpha01

2024 年 2 月 21 日

androidx.compose.material3:material3-*:1.3.0-alpha01 がリリースされました。バージョン 1.3.0-alpha01 に含まれる commit については、こちらをご覧ください

新機能

  • U+ で予測型「戻る」をサポートするように Compose M3 ModalBottomSheet を更新しました。(Iccf32b/281967264b/304850357
  • U+ で予測型「戻る」をサポートするように Compose M3 SearchBar を更新しました。(I657f8
  • スライダーを更新し、ギャップと停止インジケーターを追加してアクセシビリティを向上させました。(I3058e
  • ProgressIndicator を更新し、ギャップと停止インジケーターを追加してアクセシビリティを改善しました。(I21451
  • リッチ ツールチップにデフォルトのキャレットが追加されました。新しいリッチ ツールチップ API では、アンカー LayoutCoordinates を指定してカスタムのキャレットを描画できるようになりました。(Ifd42c

動作の変更

  • マテリアル コンポーネントは新しい ripple API を使用するように移行され、RippleTheme をクエリしなくなりました。

API の変更

  • 楽しい drawStopIndicator が公開されました。(I3f59f
  • DatePickerformatWithSkeleton 関数を内部としてマークしました。(Ic65dc
  • DropdownMenu でカスタム色、シェイプ、高度、境界線がサポートされるようになりました。(I8e981b/289554448b/301887035b/283654243
  • API で MutableInteractionSource を公開する Material3 コンポーネントが更新され、デフォルトで null に設定される null 値許容の MutableInteractionSource が公開されるようになりました。セマンティックの変更はありません。null を渡すと、MutableInteractionSource はホイスティングされず、必要に応じてコンポーネント内に作成されます。null に変更すると、一部のコンポーネントで MutableInteractionSource が割り当てられなくなり、他のコンポーネントが必要な場合にのみインスタンスを遅延して作成できるようになります。これにより、これらのコンポーネント全体のパフォーマンスが向上します。これらのコンポーネントに渡す MutableInteractionSource を使用しない場合は、代わりに null を渡すことをおすすめします。独自のコンポーネントにも同様の変更を行うことをおすすめします。(I41abbb/298048146
  • RippleConfigurationLocalRippleConfiguration を追加し、固定値を使用してコンポーネントやサブツリーごとにリップルをカスタマイズできるようにしました。たとえば、管理していないコンポーネントの色を変更したり、コンポーネントのリップルを無効にしたりできます。ほとんどの場合、デフォルト値を使用する必要があります。これらの API は、個々のコンポーネントや限られたサブツリーをカスタマイズするための回避策です。より広範な変更やカスタム デザイン システムの場合は、代わりに createRippleModifierNode を使用して独自のリップルを構築する必要があります。(I7b5d6b/298048146
  • 非推奨の rememberRipple に代わる、material3 の新しい ripple API を追加しました。また、一時的な CompositionLocalLocalUseFallbackRippleImplementation を追加して、material3 コンポーネントを非推奨の rememberRipple / RippleTheme API を使用するように戻す。これは次の安定版リリースで削除される予定です。カスタムの RippleTheme を指定する場合の一時的な移行支援としてのみ意図されています。(I34cbcb/298048146

バグの修正

  • パフォーマンスを改善するため、ModalBottomSheet 内のサブコンポジションを削除しました。LookaheadScope と組み合わせて特定のシナリオで ModalBottomSheet がクラッシュする可能性がある問題を修正しました。(I2a198
  • パフォーマンスを改善するため、BottomSheetScaffold 内のサブコンポジションを削除しました。LookaheadScope と組み合わせて特定のシナリオで BottomSheetScaffold がクラッシュする問題を修正しました。(Ie6401
  • バッジの配置は、右上隅からアンカー コンテンツの中心に近づくように調整されます。(I18a28
  • スクリーン リーダー、スイッチ アクセス、Voice アクセスのユーザーに対して、月年のテキスト タイトルが操作可能なものとして表示される DateRangePicker の a11y の問題を修正しました。(I2ac55
  • mediumTopAppBarColors パラメータの順序のバグを修正しました。(Ibe64a

バージョン 1.2

バージョン 1.2.1

2024 年 3 月 6 日

androidx.compose.material3:material3-*:1.2.1 がリリースされました。バージョン 1.2.1 に含まれる commit については、こちらをご覧ください。

バグの修正

  • スライダーの状態を再び安定させます。State.onValueChangeFinished を再度値にします。rememberUpdatedStateonValueChangeFinished をラップする。(Ie8fd0b/322269951
  • state.onValueChangeFinishedvar に変更するため、Slider の状態から @Stable を削除します。(I82ba1b/322269951
  • NavigationBar のカスタムカラーがデフォルトからコピーされるように修正しました。(80a779b/326894020
  • ExposedDropdownMenu の回帰を修正し、再びフォーカス可能にしました。(3fcec1b/323694447
  • ボタンの色のキャッシュに関する問題を修正しました。(3e5bbcb/327371655

バージョン 1.2.0

2024 年 2 月 7 日

androidx.compose.material3:material3-*:1.2.0 がリリースされました。バージョン 1.2.0 に含まれる commit については、こちらをご覧ください

既知の問題

  • パフォーマンス改善の変更の一環として、View-Compose の相互運用レンダリングのバグPrimaryTabRow に導入されました。回避策は、TabRowDefaults.PrimaryIndicatorTabRow を使用することです。

1.1.0 以降の重要な変更

新しいマテリアル デザイン 3 コンポーネント

既存のマテリアル デザイン 3 コンポーネントの機能強化

試験運用版 API を安定版に昇格しました。

パフォーマンスの改善

バージョン 1.2.0-rc01

2024 年 1 月 24 日

androidx.compose.material3:material3-*:1.2.0-rc01 がリリースされました。バージョン 1.2.0-rc01 に含まれる commit については、こちらをご覧ください

バグの修正

  • mediumTopAppBarColors パラメータの順序のバグを修正しました。(Ibe64a
  • containerColor パラメータの値に基づいて contentColor を更新しない、CardDefaults.cardColors1.2.0-beta02 で発生するバグを修正しました。(Iee041b/319671246
  • 1.2.0-beta02 で導入された disabledContentColor のバグを修正し、小規模な最適化を追加しました。(I6dda1b/318428829

バージョン 1.2.0-beta02

2024 年 1 月 10 日

androidx.compose.material3:material3-*:1.2.0-beta02 がリリースされました。バージョン 1.2.0-beta02 に含まれる commit については、こちらをご覧ください

既知のバグ

  • IconButtonColors のバグでは、デフォルトで disabledContentColor が、ユーザーが指定した contentColor ではなく、LocalContentColor のアルファ版(0.38f)に割り当てられます。この問題を回避するには、disabledContentColor を明示的に設定します。この問題は次のリリースで修正される予定です。

API の変更

  • プレーンの Tooltip API でツールチップ キャレットを有効にする機能を追加しました。(Ibf767
  • SwipeToDismissStaterememberSwipeToDismissSwipeToDismissValue の名前はすべて _SwipeToDismissBox_ に変更されました。(I68d6d

バグの修正

  • 仕様に合わせて ListItem 終了パディング値を修正しました。(Ibd68bb/305342674
  • 枠線の色が OutlineVariant に正しくマッピングされるようになりました。(I75480b/310979715
  • ダイナミック カラーは、システム定義のカラーロールから取得されるようになりました。これにより、アクセス可能なコンテンツのコントラストが改善され、ダイナミック カラーがマテリアルの仕様により厳密に一致します。(I1de96
  • android:enableOnBackInvokedCallback="true" の場合の Android T/13 以降での ModalBottomSheet の戻る処理を修正しました。(I728dcb/306196110

バージョン 1.2.0-beta01

2023 年 12 月 13 日

androidx.compose.material3:material3-*:1.2.0-beta01 がリリースされました。バージョン 1.2.0-beta01 に含まれる commit については、こちらをご覧ください

API の変更

  • TabIndicatorScope を試験運用版としてマーク(I45c88
  • 非推奨となった試験運用版のツールチップ用 API を削除しました。(I438cb
  • サブコンポジションを使用しないように、新しい TabRow オーバーロードを変更しました。その結果、提供されたカスタム修飾子を使用して TabRow インジケーターを異なる方法でビルドできます。(Ife741
  • DismissDirection API と DismissValue API のサポートが終了しました。これらは SwipeToDismissValue に統合され、その値は SwipeToDismissBox の位置と方向の両方を示します。DismissState.progress0.01.0 の間の FloatRange としてマークされるようになりました。サポートが終了した DismissState の セーバーとコンストラクタが削除されました。SwipeToDismiss コンポーネント、状態、デフォルト オブジェクトが試験運用版としてマークされました。(Ib54f2

バグの修正

  • PullToRefresh のデフォルト インジケーターが、実線の三角形ではなく、開いた矢印になりました。(I67be3

バージョン 1.2.0-alpha12

2023 年 11 月 29 日

androidx.compose.material3:material3-*:1.2.0-alpha12 がリリースされました。バージョン 1.2.0-alpha12 に含まれる commit については、こちらをご覧ください

API の変更

  • RangeSlider が Kotlin の範囲(例:0f..1f など)を宣言する必要があります。FloatRangeSnapFlingBehavior.kt も Kotlin の範囲を使用するようになりました。(I025cb
  • 修飾子ファクトリ関数を @Stable としてマークしました。(Ib109f

バージョン 1.2.0-alpha11

2023 年 11 月 15 日

androidx.compose.material3:material3-*:1.2.0-alpha11 がリリースされました。バージョン 1.2.0-alpha11 に含まれる commit については、こちらをご覧ください。

新機能

  • PullToRefreshContainerPullToRefreshState を実装します。これらは、マテリアル 3 で pull して更新の実装を提供します。(I16456b/261760718

API の変更

  • SwipeToDismissBox DismissDirectionDismissValue を試験運用版としてマークしました。(I517b0
  • SwipeToDismissSwipeToDismissBox に変更しました。background の名前を backgroundContent に、dismissContent の名前を末尾の content ラムダに変更しました。(I7f4d3
  • ChipElevationSelectableChipElevation のコンストラクタを公開しました。(Ie0c48b/308432421
  • ModalBottomSheetProperties を追加しています。securePolicyModalBottomSheetProperties に移動しています。isFocusableshouldDismissOnBackPressModalBottomSheetProperties に追加しています。これらの新しいブール値は、モーダル ボトムシートで IME イベントを処理する方法を決定するのに役立ちます。(Iea56fb/278216859
  • RangeSliderSlider の状態を更新し、initialOnValueChange、初期接頭辞、適切な kdocs を削除しました。(I57d30
  • ChipBorder クラスとそれに関連する関数呼び出しは非推奨になりました。代わりに BorderStroke を直接使用することをおすすめします。(I89cc2
  • 基盤ツールチップ API が @ExperimentalFoundationApi になりました。(I30b0b
  • TabRowScrollableTabRow は非推奨ではなくなりました。新しいプライマリ バリアントとセカンダリ バリアントは試験運用版としてマークされます。(I0def6
  • フィルタチップと入力チップが BorderStroke を直接使用するようになりました。(I07a8d
  • SegmentedButtonBorderStroke を直接使用するようになりました。(I89b9b
  • 汎用の AlertDialog 関数の名前を BasicAlertDialog に変更し、以前の関数を非推奨にしました。(Idbe52
  • SwipeToDismiss API の名前を SwipeDismiss に変更し、新しい SwipeDismiss API を安定版に昇格しました。(I14cbe
  • tonalElevationshadowElevation をツールチップ API に追加しました。さらに、TooltipBox API、PlainTooltip API、RichTooltip API を安定版として誤ってリリースされたため、試験運用版に戻しました。(If0f66b/293939035
  • 試験運用版のチップ API を安定版に昇格しました。(Iea2c3
  • マテリアル 3 のクリック可能なカードから @ExperimentalMaterial3Api アノテーションを削除しました。(I88dbf

バグの修正

  • ネストされた先読みレイアウトと Lazy レイアウトの特定のシナリオで SwipeToDismiss がクラッシュする問題を修正しました。(Ica8d1b/297226562

バージョン 1.2.0-alpha10

2023 年 10 月 18 日

androidx.compose.material3:material3-*:1.2.0-alpha10 がリリースされました。バージョン 1.2.0-alpha10 に含まれる commit については、こちらをご覧ください。

API の変更

  • BadgeBadgedBox を安定版に昇格しました。(I67f16b/261565132
  • securePolicy をパラメータとして ModalBottomSheet に追加して、ユーザーが WindowManager.LayoutParams.FLAG_SECURE の動作を定義できるようにします。(Icdac8b/296250262
  • progress をラムダとして受け取る LinearProgressIndicatorCircularProgressIndicator の新しいオーバーロードを追加しました。以前のバージョンよりもパフォーマンスが向上しています。(I824e6b/295616656
  • StandardSizeClasses の名前を AllSizeClasses に変更しました。(I8cb07
  • ウィンドウ サイズクラスの計算関数を組み合わせる。(Iad935

バグの修正

  • 表示された月が許可された年の範囲を超えたときにナビゲーション矢印ボタンをすばやくクリックすると、DatePicker がクラッシュする問題を修正しました。(I46f36b/290954897b/297002119
  • [ナビゲーション レール/バー] インジケーターの透明色をサポート。(Ie0a9bb/267289987

バージョン 1.2.0-alpha09

2023 年 10 月 4 日

androidx.compose.material3:material3-*:1.2.0-alpha09 がリリースされました。バージョン 1.2.0-alpha09 に含まれるコミットについては、こちらをご覧ください

API の変更

  • 新しい AnchoredDraggable API を使用するように ModalNavigationDrawerDismissibleNavigationDrawer を移行しました。DrawerStateanimateTo が open メソッドと close メソッドに置き換えられ、オフセットが状態オブジェクトではなく float として公開されるようになりました。オフセットには currentOffset から直接アクセスできます。(I0a72c
  • DatePickerStateDateRangePickerState を直接作成するための非コンポーズ可能な関数が追加されました。これらの関数は、必要に応じて、コンポーズ可能な rememberDatePickerState 関数と rememberDateRangePickerState 関数の代わりに使用できます。(I70326b/291524052
  • 修正済みおよびスクロール可能な TabRows にプライマリ バリアントとセカンダリ バリアントが追加されました。これらは、Material3 で定義されている色とインジケーターの動作に正しくマッピングされます。
  • PrimaryScrollableTabRowSecondaryScrollableTabRow がスクロール状態を公開するようになりました。(Iec8f5b/260572337
  • 新しい sheetMaxWidth パラメータを追加しました。デベロッパーは、このパラメータを使用して、シートの最大幅を指定できます。画面幅全体にわたるシートが必要な場合は、パラメータに Dp.Unspecified を渡すことができます。(Ifb7c9b/266697696
  • 非推奨のメソッドとして PlainTooltipBox API と RichTooltipBox API を再度追加しました。(I246fa

バグの修正

  • 日付パターン(YY など)に変換しても変わらない特定の日付スケルトンを持つ DatePickerFormatterDatePicker が初期化されたときにクラッシュする問題を修正しました。(I01f29

バージョン 1.2.0-alpha08

2023 年 9 月 20 日

androidx.compose.material3:material3-*:1.2.0-alpha08 がリリースされました。バージョン 1.2.0-alpha08 に含まれる commit については、こちらをご覧ください

互換性を破る動作変更

  • ColorScheme が不変になり、個々の色の更新効率が低下しましたが、より一般的な色の使用がより効率的になりました。この変更の理由は、大部分のアプリでは、主なユースケースとして個々の色を更新することはないためです。 引き続き可能ですが、以前よりも再コンポーズが行われます。その結果、マテリアル コード全体にわたって状態サブスクリプションの数が大幅に減少し、より標準的なユースケースの初期化と実行時の費用に影響します。(Ic447db/297212873
  • 色調高度が、仕様に合わせてさまざまな操作状態においてアニメーション化されなくなりました。(Icdd12

API の変更

  • コンテンツのスクロール時に自動的に非表示にするために、パラメータとして BottomAppBarScrollBehavior を受け取る新しい BottomAppBar を追加しました。また、FAB がボトム アプリバーの上に固定されるのではなく、スキャフォールドのボトム アプリバーに重なるように FabPosition.EndOverlay を追加しました。(Iecb47
  • ラベルの境界の外側をタップしても閉じられない、BasicTooltipBox の上に構築されるシンプルな Label コンポーネントを追加しました。(I821f9

バグの修正

  • ツールチップに rememberSaveable が使用されなくなりました。(Icc131b/299500338
  • Scaffold が測定中または配置時に子を測定するかどうかを制御する一時的なフラグを導入しました。デフォルトでは、これは測定で測定されます。新しい動作で問題が発生している場合は、問題を報告してください。(I0b354
  • デバイスの画面幅の正しい測定値を使用することで、BottomSheet で水平方向の端から端までを修正しました。(I1df0cb/299058752
  • シートを下にスワイプして onDismissedRequest を閉じる際に、ModalBottomSheetonDismissedRequest を呼び出さないバグを修正しました。(Idfdd8

バージョン 1.2.0-alpha07

2023 年 9 月 6 日

androidx.compose.material3:material3-*:1.2.0-alpha07 がリリースされました。バージョン 1.2.0-alpha07 に含まれる commit については、こちらをご覧ください

新機能

  • アイコンの自動ミラーリングのサポートが compose material 1.6.0-alpha05 に追加されました。自動ミラーリング アイコンについて詳しくは、リリースノートをご覧ください。

API の変更

  • SliderStateDraggableState を実装しました。(I9b116
  • シェイプを必須パラメータに変更します。シェイプ ヘルパー関数内の position の名前を index に変更しました。(I34941
  • DatePicker formatWithSkeleton を更新し、パフォーマンス向上のためにキャッシュとして使用される地図が含まれるようにしました。(I3195f
  • BasicTooltipBoxcompose.foundation に追加し、新しい PlainTooltip コンポーザブルと RichTooltip コンポーザブルで TooltipBox を使用するように PlainTooltipBoxRichTooltipBox を更新しました。(I79e1d

バグの修正

  • dynamicLightColorSchemedynamicDarkColorScheme が、サーフェスと surfaceContainer のロールに対して高い彩度を返すようになりました。(I5e901
  • LookaheadScope 内の Scaffold 内でサブコンポジション(BottomSheetScaffold など)を使用する一部のコンポーネントが、サイズの読み取りを早すぎる問題を修正しました。(I297b4I871f1b/295536718

バージョン 1.2.0-alpha06

2023 年 8 月 23 日

androidx.compose.material3:material3-*:1.2.0-alpha06 がリリースされました。バージョン 1.2.0-alpha06 に含まれる commit については、こちらをご覧ください

バグの修正

  • x オフセットがローカルのレイアウト方向のみに依存し、メニューが画面の下部付近にあるときに y オフセットが反転しなくなるように、DropdownMenuoffset 計算を修正しました。(Iccc74b/294103942
  • x オフセットがローカルのレイアウト方向のみに依存し、メニューが画面の下部付近にあるときに y オフセットが反転しなくなるように、DropdownMenuoffset 計算を修正しました。(Ib87a2b/294103942

バージョン 1.2.0-alpha05

2023 年 8 月 9 日

androidx.compose.material3:material3-*:1.2.0-alpha05 がリリースされました。バージョン 1.2.0-alpha05 に含まれる commit については、こちらをご覧ください。

API の変更

  • チェックボックスと TriStateCheckbox の色を更新しました。CheckboxDefaults.colors() disabledUncheckedColor がチェックボックスの境界にのみ影響するようになりました。無効またはオフのときに内部ボックスの色を設定する必要がある特殊なケースでは、目的の色値を持つ CheckboxColors のカスタム作成インスタンスが必要です。(I77d17b/291943198

バージョン 1.2.0-alpha04

2023 年 7 月 26 日

androidx.compose.material3:material3-*:1.2.0-alpha04 がリリースされました。バージョン 1.2.0-alpha04 に含まれる commit については、こちらをご覧ください

新機能

  • 試験運用版の Segmented Button API(Ifc8fb
  • 垂直分割線をサポートするため、分割線に向きを制御するパラメータが追加されました。(I4c899b/288438593

API の変更

  • 密度の依存関係をコンポーネント レベルに移行します。これは、SwipeToDismiss コンポーネントとスプレッドシートベースのコンポーネントに適用されます。密度がパラメータの場合は、指定された新しいオーバーロードを使用してください。(I1846e
  • コンポーザブルに許可される入力を指定する追加のアノテーション(Ief234
  • セグメント化されたボタンと、セマンティクスの分割にアイコン パラメータを追加しました。これにより、セグメント化されたボタンは、単一選択を実装するために選択可能になり、複数選択を実装するために切り替え可能となります(それぞれ SelectableSegmentedButtonRowToggelableSegmentedButtonRow を使用)。(I38740
  • 分割線の名前を HorizontalDivider に変更しました。VerticalDivider 機能を追加しました。(I5975c
  • 試験運用版の Material3 API の軽量の FloatRange に対する ClosedFloatingPointRange の使用を変更して、自動ボックス化を最小限に抑えました。(I4aab5
  • FabPosition の新しい Start アライメントを追加しました。(Ib7aeab/170592777

バグの修正

  • ModalBottomSheet はローカル レイアウト方向を優先します。(Ib4f44b/285628622

バージョン 1.2.0-alpha03

2023 年 6 月 21 日

androidx.compose.material3:material3-*:1.2.0-alpha03 がリリースされました。バージョン 1.2.0-alpha03 に含まれる commit については、こちらをご覧ください

動作の変更

  • マテリアル 3 のタイポグラフィで、includeFontPadding がデフォルトで false になりました。デフォルトの行の高さのスタイルも Trim.NoneAlignment.Center に変更され、明示的な lineHeight(sp)が TypographyTextStyle に追加されました。これらの値をカスタマイズする場合は、API ドキュメントを参照してください。これらの変更の詳細については、ブログ投稿をご覧ください。(I6266fIcabc3

新機能

  • コンポーネントのステートフル バージョンである RangeSlider のオーバーロードを追加しました。現在アクティブなトラック、RangeSlider のコンポーネントの測定値、ドラッグとジェスチャーのロジックに関するすべての情報を保持する RangeSliderState を作成しました。(I8c270
  • 検索バーで、新しく追加された shadowElevation パラメータによりシャドウがサポートされるようになりました。(Ia5369b/271040353
  • ColorScheme が新しい SurfaceContainer ロールをサポートするようになりました。
  • サーフェスの色調エレベーションのオーバーレイを、LocalTonalElevationEnabled コンポジション ローカルで無効にできるようになりました。(Ic203cb/277774590

API の変更

  • コンポーネント カラー コンストラクタを開きます。(I8c4a6
  • 両方のツールチップ API にフォーカス可能なパラメータを追加しました。これにより、デベロッパーはツールチップでタッチイベントを使用するかどうかを選択できます。これにより、ユーザー補助フォーカスの自動走査が損なわれる可能性があるので注意してください。(Ie32d8
  • パフォーマンスとメモリ割り当てのアクセシビリティを最適化。(Iede48
  • DefaultSizeClasses を公開して WindowSizeClassesStandardSizeClasses を作成しました。(I91838
  • WindowWidth/HeightSizeClass を浮動小数点値のクラスに変更しました。(Ie686e

バグの修正

  • Scaffold の contentWindowInsets パラメータが、使用されたウィンドウ インセットを尊重するようになりました。なお、topBarbottomBar に基づくコンテンツ パディングの動作は、これらのパラメータを指定しても変わりません。(I08b73b/264601542
  • 長いタイトルがアクション アイコンやナビゲーション アイコンの上に表示されないよう、中央の上部アプリバーの配置を修正。(I4369fb/236994621
  • タブの位置に 24 dp の最小コンテンツ幅が適用されるようになりました。これにより、タブ インジケーターのタップ ターゲットにアクセスしやすくなります。(Id8861
  • dynamicLightColorSchemedynamicDarkColorScheme のダイナミック カラーパレットが、新しいサーフェスロールをサポートするようになりました。(I1252e
  • 祖父母に衝突したときにクリップしないようにバッジの通知の配置を更新しました。(Idf75a

バージョン 1.2.0-alpha02

2023 年 5 月 24 日

androidx.compose.material3:material3-*:1.2.0-alpha02 がリリースされました。バージョン 1.2.0-alpha02 に含まれる commit については、こちらをご覧ください

API の変更

  • ウィンドウ インセット パラメータを ModalBottomSheet に追加しました。
    • ModalBottomSheet のスクリムが、windowInsets が 0 に設定されたステータスバーの背後に描画されるようになりました
    • デフォルトの ModalBottomSheet 機能を更新し、ナビゲーションを含むシステムバーの外側に留まるようにしました
    • ステータスバーのインセット処理は、エッジ ツー エッジ モードのドラッグ ハンドルによって提供されます。
    • BottomSheetDefaults には、BottomSheetWindow のウィンドウ インセットが含まれます。(I31200b/274872542b/272973615b/272334475b/268432129b/275849044b/27636
  • M3 の仕様に合わせて、Indicator のサポートを終了し、Primary/SecondaryIndicator を追加しました。PrimaryIndicator はタブのコンテンツの幅と一致しますが、SecondaryIndicator は使用可能な幅全体になります。SecondaryIndicator は、サポートが終了した Indicator と同等であり、直接置き換えることができます。(I27604
  • 表示されるメニュー項目の垂直スクロール状態を制御するために、DropdownMenu または ExposedDropdownMenu を作成するときに ScrollState を渡すオプションを追加しました。(Ia0734b/185304441
  • コンポーネントのステートフル バージョンである Slider のオーバーロードを追加しました。現在アクティブなトラック、Slider のコンポーネントの測定値、ドラッグとジェスチャーのロジックに関するすべての情報を保持する SliderState を作成しました。(I124a5
  • Semantics プロパティ isContainer の名前を isTraversalGroup に変更しました。(I121f6
  • 完全なパラメータ リストを含む最適化された TextStyle.merge(...) を追加しました。(Iad234b/246961787
  • TooltipStateRichTooltipStatePlainTooltipState を公開インターフェースにしました。デフォルトの状態に RichTooltipStateImplPlainTooltipStateImpl を追加しました。これらの実装された状態を取得する remember*State 関数を追加しました。TooltipSync を削除し、TooltipDefault.GlobalMutatorMutex に置き換えました。(I7813d
  • DatePickerColors を更新し、日付選択ツールの分割線、ナビゲーション、テキスト入力フィールドの色のカスタマイズ オプションを追加しました。(I1a685b/274626815
  • DatePickerStateDateRangePickerState は、rememberDatePickerStaterememberDateRangePickerState で取得できるデフォルトの実装を持つ公開インターフェースになりました。(I71c52
  • DatePickerDateRangePicker から dateValidator を削除し、状態に対して設定して UI で選択できる日付または年を制御できる SelectableDates インターフェースを導入しました。(Ic2fc6
  • TimePicker が安定版 API から削除されました。状態 API ではさらなる変更が予定されています。(I3f39a
  • ModalBottomSheet を Android のみに移行しました。ModalBottomSheet はパソコンでの使用にはおすすめしません。また、この機能は積極的にメンテナンスされていません。(Ib3778

バグの修正

  • ダイアログの幅に合わせてアクションが重なった場合に確認アクションの下に AlertDialog を閉じるアクションが表示されるよう修正しました。この修正では、実装をマテリアル デザインの仕様に合わせます。(I029deb/235454277
  • 3 行の項目に誤ったパディングを使用すると ListItem のバグを修正しました。(I6e235
  • ModalBottomSheet で IME キーボードを表示できるようになりました。(Idc508b/262140644b/268380384b/272483584

バージョン 1.2.0-alpha01

2023 年 5 月 10 日

androidx.compose.material3:material3:1.2.0-alpha01androidx.compose.material3:material3-window-size-class:1.2.0-alpha01 がリリースされました。バージョン 1.2.0-alpha01 に含まれる commit については、こちらをご覧ください

バージョン 1.1

バージョン 1.1.2

2023 年 9 月 20 日

androidx.compose.material3:material3:1.1.2androidx.compose.material3:material3-window-size-class:1.1.2 がリリースされました。バージョン 1.1.2 に含まれる commit については、こちらをご覧ください

バグの修正

  • 修飾子が 2 つのコンポーザブルに誤って渡される問題を修正しました。(b/282761472
  • 23 時間で初期化した場合に TimePickerState が誤った時間を返す問題を修正しました。(b/278242122
  • 正午と分の検証の初期の切り替え状態を修正しました。(b/269768197b/282790635
  • 午後 11 時に state.hour が誤った値を返す問題を修正しました。(b/282761472b/278242122

バージョン 1.1.1

2023 年 6 月 21 日

androidx.compose.material3:material3:1.1.1androidx.compose.material3:material3-window-size-class:1.1.1 がリリースされました。バージョン 1.1.1 に含まれる commit については、こちらをご覧ください

バグの修正

  • バイナリ互換性のため、windowInset パラメータのない ModalBottomSheet の呼び出しを追加しました。(Ib7959
  • ウィンドウ インセット パラメータを ModalBottomSheet に追加しました。
    • ModalBottomSheet のスクリムが、windowInsets が 0 に設定されたステータスバーの背後に描画されるようになりました
    • デフォルトの ModalBottomSheet 機能を更新し、ナビゲーションを含むシステムバーの外側に留まるようにしました
    • ステータスバーのインセット処理は、エッジ ツー エッジ モードのドラッグ ハンドルによって提供されます。
    • BottomSheetDefaults には、BottomSheetWindow のウィンドウ インセットが含まれます。(I31200b/274872542b/272973615b/272334475b/268432129b/275849044b/27636

バージョン 1.1.0

2023 年 5 月 10 日

androidx.compose.material3:material3:1.1.0androidx.compose.material3:material3-window-size-class:1.1.0 がリリースされました。バージョン 1.1.0 に含まれる commit については、こちらをご覧ください

1.1.0 の主な機能

新しいマテリアル デザイン 3 コンポーネント

既存のマテリアル デザイン 3 コンポーネントの機能強化

試験運用版 API を安定版に昇格しました。

詳しくは、こちらのブログ投稿をご覧ください。

バージョン 1.1.0-rc01

2023 年 4 月 19 日

androidx.compose.material3:material3:1.1.0-rc01androidx.compose.material3:material3-window-size-class:1.1.0-rc01 がリリースされました。バージョン 1.1.0-rc01 に含まれる commit については、こちらをご覧ください。

API の変更

  • TimePicker が安定版 API から削除されました。状態 API ではさらなる変更が予定されています。(I3f39a
  • ModalBottomSheet を Android のみに移行しました。ModalBottomSheet はパソコンでの使用にはおすすめしません。また、この機能は積極的にメンテナンスされていません。(Ib3778

バージョン 1.1.0-beta02

2023 年 4 月 5 日

androidx.compose.material3:material3:1.1.0-beta02androidx.compose.material3:material3-window-size-class:1.1.0-beta02 がリリースされました。バージョン 1.1.0-beta02 に含まれる commit については、こちらをご覧ください

API の変更

  • SheetState にオプションの skipHiddenState パラメータが追加されました
  • rememberStandardBottomSheetState にオプションの skipHiddenState パラメータが追加されました
  • BottomSheetScaffold に非表示アンカーが定義されましたが、デフォルトでは無効になっています
  • SheetState.requireOffset のドキュメントが更新されました
  • BottomSheetDefaults.MinimizedShape の名前が BottomSheetDefaults.HiddenShape に変更されました。(I839f4b/273870234

バグの修正

  • タッチガイドが有効になっている場合は、文字盤を時間単位から分単位に切り替えないでください。(I717d0
  • ModalBottomSheetBottomSheetScaffold のドラッグ ハンドルのセマンティクスが統合されました。(I05afb
  • BottomSheetScaffold 修飾子、containerColor パラメータ、contentColor パラメータは、コンテンツにのみ影響するようになりました。(I992cb
  • シート コンテンツの BottomSheetScaffold nestedScroll にフリングが実装されました。(I992cb

バージョン 1.1.0-beta01

2023 年 3 月 22 日

androidx.compose.material3:material3:1.1.0-beta01androidx.compose.material3:material3-window-size-class:1.1.0-beta01 がリリースされました。バージョン 1.1.0-beta01 に含まれる commit については、こちらをご覧ください

API の変更

  • TimePicker コンポーザブルにレイアウト タイプのパラメータを追加しました。これにより、画面構成に応じて異なるレイアウトを使用できます。(Ia0e16
  • SearchBarDefaults を試験運用版としてマークしました。(I65561
  • BottomSheetScaffold にシャドウ エレベーションを追加しました。(I94e0f
  • ヘッダー部分なしで日付選択ツールを表示するためのサポートを追加しました。日付選択ツールの作成時に null の見出しを渡せるよう API を変更しました。ヘッドレス選択ツールを表示するために、null の見出し、タイトル、showToggleMode = false を渡せるようになりました。(Id3f3ab/266132421b/267194809

バグの修正

  • フォーカスを非アクティブにしたときに、検索バーが自動的にフォーカスをクリアするようになりました。(I22a7cb/261444487
  • DateRangePicker を更新し、開始日と終了日に同じ日付の範囲を選択できるようにしました。(I16529b/272882497
  • フォントサイズが想定よりも小さい場合に、テキスト フィールドでテキスト要素が適切に配置されるようになりました。その結果、フォントの設定やスクリプトに基づいて、アプリで数ピクセルが変更される場合があります。(I8b8d0
  • ボトムシートのセマンティック アクションにラベルが追加されました。(I277b0

バージョン 1.1.0-alpha08

2023 年 3 月 8 日

androidx.compose.material3:material3:1.1.0-alpha08androidx.compose.material3:material3-window-size-class:1.1.0-alpha08 がリリースされました。バージョン 1.1.0-alpha08 に含まれる commit については、こちらをご覧ください

新機能

  • BottomSheetScaffoldBottomSheetScaffoldState のサポートを追加しました。(I063d4

API の変更

  • DatePickerStateDateRangePickerState に機能を追加し、状態を最初に作成した後の日付を設定したり、null タイムスタンプを設定して選択内容をリセットしたりできます。日付を手動で設定する際は注意が必要です。新しい setSelection 関数は、指定された日付が前提条件に満たない場合に例外をスローします(ドキュメントをご覧ください)。(Ifa645b/268609314b/270427389
  • 折りたたみ時の SheetValue の名前を PartiallyExpanded に変更し、この状態の動作をより正確かつ柔軟に表示しました。(Ia1491
  • ListItem パラメータ名を _text ではなく _content に更新しました。デフォルトのゲッターは、該当する場合に ReadOnlyComposables になりました。(I69a25
  • インタラクティブな Surface API を試験運用版から昇格させる。(I90d59b/261561812

バグの修正

  • ModalBottomSheetHalfExpanded 状態が正しく計算されず、シートがフローティングに見える問題を修正しました。(I45e84b/268411386
  • ModalBottomSheet のスクリムタップに confirmValueChange チェックを追加。(I2311ab/270425759
  • セマンティック BottomSheet アクションを移動してハンドルをドラッグします。(I158ba
  • ModalBottomSheet コマンドは起動にフォーカスし、[戻る] ボタンを処理するようになりました。(I4d2ab
  • ModalBottomSheet onDismissRequest は、ネストされたスクロールのフリング中にも処理されるようになりました。(I655c5b/268433166

バージョン 1.1.0-alpha07

2023 年 2 月 22 日

androidx.compose.material3:material3:1.1.0-alpha07androidx.compose.material3:material3-window-size-class:1.1.0-alpha07 がリリースされました。バージョン 1.1.0-alpha07 に含まれる commit については、こちらをご覧ください。

新機能

  • rememberTimePickerState() に対応する時間入力のコンポーザブルを追加しました。これは、時間の入力に関するマテリアル 3 の仕様に従うものです。(Ia4fab
  • 期間を選択するための Material 3 DateRangePicker API を追加しました。(I7a6c3b/267194809
  • マテリアル 3 の入力モードに対応し、DateRangePicker API で期間を選択できるようになりました。(Ifdbc4
  • テキスト フィールドの色について、次のようなものをカスタマイズできるようになりました。
    • フォーカスやエラーの状態に基づいた、入力フィールドやプレースホルダのテキストの色。textColor パラメータの名前が unfocusedTextColor に変更され、placeholderColor の名前が unfocusedPlaceholderColor になりました。
    • 新しい errorContainerColor パラメータによるエラー状態に基づいた、塗りつぶしテキスト フィールドのコンテナの色。
  • 表示されるプルダウン メニューのテキスト フィールドの色が、接頭辞と接尾辞の新しい API に対応できるようパラメータで更新されました。(I9c8b4b/254284181b/264766350

API の変更

  • Slider API の一部のバージョンを元に戻し、カスタムのサムネイルとトラックを含む新しい試験運用版の Slider の対象となっている不要な Slider オーバーロードを削除しました。RangeSlider の安定性が向上しました。(Ie8fbd
  • チップのエレベーションの関数において、defaultElevation の名前を elevation に変更しました。(I0f872
  • マテリアル 3 のテキスト フィールドの API である TextFieldOutlinedTextFieldtextFieldWithLabelPaddingtextFieldWithoutLabelPaddingoutlinedTextFieldPadding は、試験運用版ではなくなりました。(Ieb5c0b/261561819
  • TimePickers is24Hour ではシステム設定を使用します。(I18856
  • スキャフォールディングの API から試験運用版のアノテーションを削除しました。(Ibb51eb/261565765b/261436953

バグの修正

  • ModalBottomSheet のデフォルトの形状が常に SheetDefaults.ExpandedShape となりました。(I0dfca
  • マテリアル 3 の DatePickerDateRangePicker について、ユーザー補助機能を改善しました。(I5087e
  • 最大の高さの制約が伝播されてクラッシュが発生する可能性があるバグを修正しました。(I30d8c
  • クリック可能かつ選択可能なサーフェスからセマンティック ロールを削除しました。そのロールを使用していたコンポーネントを更新し、modifier.semantics を使ってロールを設定できるようになりました。(I793d9

バージョン 1.1.0-alpha06

2023 年 2 月 8 日

androidx.compose.material3:material3:1.1.0-alpha06androidx.compose.material3:material3-window-size-class:1.1.0-alpha06 がリリースされました。バージョン 1.1.0-alpha06 に含まれる commit については、こちらをご覧ください

新機能

  • テキスト フィールドで接頭辞と接尾辞のテキストがサポートされるようになりました。(Ia8578b/179884561
  • マテリアル 3 の仕様に沿って時間選択ツールを表示する TimePicker 関数を追加しました。この関数は TimePickerState とコンビニエンス メソッド rememberTimePickerState と組み合わせて使用します。(I71910
  • 日付入力が DatePicker で表示モードになりました。日付選択ツールと日付入力モードとの切り替えのサポートを追加しました。(Ieeff7
  • RichTextTooltips の API を追加しました。(I58ef3
  • ModalBottomSheetModalBottomSheetDefaults など、マテリアル 3 用モーダル ボトムシートを実装しました。また、将来的なシート コンポーネントに使用できる SheetStaterememberSheetState も導入しました。(I0853ab/244189383

API の変更

  • API showSnackbar を安定化しました。(I195c2b/261424370
  • アシストチップと候補ワードの API を安定化しました。(Ibb67bb/261424370
  • ListItemListItemDefaultsListItemColors の API を非試験運用版にしました。(I7e7fab/261438882
  • SliderPositionsSliderDefaults.ThumbSliderDefaults.Track を安定化し、カスタム サムネイルとトラックを含む非試験運用版の SliderRangeSlider の API を追加しました。以前の SliderRangeSlider の API を非推奨にしました。(Ie5ea6b/261566890
  • Modifier.tooltipAnchor() を公開し、デベロッパーがアンカーに渡して、長押しでツールチップを表示することを示すことができるようにしました。PlainTooltipBox の API を更新し、TooltipState を null 許容型にせずにデフォルトを設定できるようにしました。(Ie2fb7
  • 整合性のため ProgressIndicatorDefaults.circularTrackColor@Composable のマークを付けました。(Id29cc
  • プロパティ ゲッター LocalMinimuTouchTargetEnforcement を復元し、非推奨のマークを付けて LocalMinimumInteractiveComponentEnforcement にリダイレクトするようにしました。(I60dd5

バージョン 1.1.0-alpha05

2023 年 1 月 26 日

androidx.compose.material3:material3:1.1.0-alpha05androidx.compose.material3:material3-window-size-class:1.1.0-alpha05 がリリースされました。バージョン 1.1.0-alpha05 に含まれる commit については、こちらをご覧ください

新機能

  • DatePickerDialog とユーザー補助のサポート。
  • カスタムのサムネイルとトラックを RangeSlider に追加しました。

依存関係の更新

  • Compose UICompose MaterialLifecycle 2.6.0 に依存するようになりました。

バージョン 1.1.0-alpha04

2023 年 1 月 11 日

androidx.compose.material3:material3:1.1.0-alpha04androidx.compose.material3:material3-window-size-class:1.1.0-alpha04 がリリースされました。バージョン 1.1.0-alpha04 に含まれる commit については、こちらをご覧ください

新機能

  • カレンダー UI を介して単一の日付を選択するための初期 DatePicker API。この API には引き続き変更が加えられています。(I722b9
  • PlainTooltipBox を介してプレーン ツールチップのサポートを追加しました。(I0cdfb
  • 検索バー。(Iad128
  • SwipeToDismiss。(I458a8b/242889540

API の変更

  • Surface に IsContainer セマンティクス プロパティを追加しました。後で変更する際にこのプロパティを使って、サーフェスなど要素の意味論的意味に基づいて移動順序を決定します。(I63379
  • ナビゲーション ドロワー関連の API を安定版としてマークしました。(Iab01eb/261439597
  • 円形の進行状況インジケーターにトラックの色パラメータを追加し、円形と線形の両方の進行状況インジケーターにストロークの上限パラメータを追加しました。(Ie668cb/216325962b/222964817
  • 非推奨になった非表示関数の戻り値の型の null 可能性を拡大しました。(Ibf7b0
  • Modifier.minimumInteractiveComponentSize を追加しました。これを使用すると、要素のサイズが小さい場合のタップ操作の曖昧さを解消するために、48 dp 以上のサイズを予約することができます。(I33f58b/258495559
  • コンテンツ スロットのある AlertDialog コンポーザブル用の試験運用版 API を追加しました。(Iec4a2

バグの修正

  • 進行状況インジケーターの進捗が予想範囲に適切にバインドされるようになりました。(I8a7ebb/262262727

既知の問題

  • androidx.compose.foundation:1.4.0-alpha03 から androidx.compose.foundation:1.4.0-alpha04 に更新するときに、java.lang.NoSuchFieldError エラーが発生することがあります。この問題はこちらで最初に報告されました。修正はすでに送信されており、次回の Compose アップデートで利用できるようになります。回避策として、androidx.compose.material ライブラリと androidx.compose.material3 ライブラリを最新バージョン(1.1.0-alpha04)に更新するか、androidx.compose.foundation を 1.4.0-alpha03 にダウングレードしてください。

バージョン 1.1.0-alpha03

2022 年 12 月 7 日

androidx.compose.material3:material3:1.1.0-alpha03androidx.compose.material3:material3-window-size-class:1.1.0-alpha03 がリリースされました。バージョン 1.1.0-alpha03 に含まれる commit については、こちらをご覧ください

API の変更

  • consumedWindowInsets() の名前を consumeWindowInsets() に、withConsumedWindowInsets() の名前を onConsumedWindowInsetsChanged() に変更し、Modifiers を公開しました。(Ie44e1
  • アイコン付きのテキスト ボタンで使用するための新しいデフォルトのコンテンツ パディングを追加しました。(I8f662
  • ナビゲーション バーとレールの無効な色を追加しました。(Ia7892b/258867034
  • 祖先のスクロール情報をクエリするための Modifier API を追加しました。(I2ba9db/203141462
  • ジェスチャーがスクロール イベントになる可能性がある場合にタップ操作を正しく遅延させるために Clickable で使用します。
  • Scrollable ViewGroup 内で使用する場合に Clickables がリップルを正しく遅延しない問題を修正しました。
  • ジェスチャーがスクロール イベントになる可能性がある場合にタップを正しく遅延するように Drawers と Sheets を更新しました。

依存関係の更新

  • Compose UICompose Material は Lifecycle 2.5.1 に依存するようになりました。(I05ab0b/258038814

バージョン 1.1.0-alpha02

2022 年 11 月 9 日

androidx.compose.material3:material3:1.1.0-alpha02androidx.compose.material3:material3-window-size-class:1.1.0-alpha02 がリリースされました。バージョン 1.1.0-alpha02 に含まれる commit については、こちらをご覧ください

API の変更

  • 柔軟性を高めるため、awaitFirstDownwaitForUpOrCancellationPointerEventPass を受け取るようになりました(さらに ExposedDropdownMenuBox も修正しました(スクロール中もメニューが表示される))。(I7579ab/212091796
  • material と material3 の Text である TextFieldOutlinedTextFieldminLines パラメータを追加し、コンポーネントの最小の高さを行数で設定できるようになりました。(I4af1d
  • TopAppBar の作成時に使用する新しい topAppBarColors 関数のために、TopAppBarDefaults smallTopAppBarColors 関数を非推奨にしました。(Ie6cb9
  • minLines パラメータを BasicTextBasicTextField に追加しました。これにより、これらのコンポーザブルの最小の高さを行数で設定できるようになりました。(I24294b/122476634

バグの修正

  • マテリアル 3 の IconButton および IconToggleBotton のコンテンツを、コンポーネントの状態レイヤの図形(円形など)にクリップしました。(I9da8f
  • マテリアル 3 の Medium および Large の上部アプリバーを更新し、サーフェス全体で同じ背景色が適用できるようにするとともに、デフォルトの色を透明色の値でオーバーライドできるようにしました。(I67659b/249688556b/250838918

バージョン 1.1.0-alpha01

2022 年 10 月 24 日

androidx.compose.material3:material3:1.1.0-alpha01androidx.compose.material3:material3-window-size-class:1.1.0-alpha01 がリリースされました。バージョン 1.1.0-alpha01 に含まれる commit については、こちらをご覧ください

バグの修正

  • タイトルが TextStyle と Brush で適用される場合のトップ アプリバーの修正。(If667e

バージョン 1.0

バージョン 1.0.1

2022 年 11 月 9 日

androidx.compose.material3:material3:1.0.1androidx.compose.material3:material3-window-size-class:1.0.1 がリリースされました。バージョン 1.0.1 に含まれる commit については、こちらをご覧ください

バグの修正

  • マテリアル 3 の Medium および Large の上部アプリバーを更新し、サーフェス全体で同じ背景色が適用できるようにするとともに、デフォルトの色を透明色の値でオーバーライドできるようにしました。(I67659b/249688556b/250838918

バージョン 1.0.0

2022 年 10 月 24 日

androidx.compose.material3:material3:1.0.0androidx.compose.material3:material3-window-size-class:1.0.0 がリリースされました。バージョン 1.0.0 に含まれる commit については、こちらをご覧ください

1.0.0 の主な機能

これは、Compose マテリアル 3 の最初の安定版リリースです。

マテリアル デザイン 3 のテーマ設定と Material You のダイナミック カラー

マテリアル デザイン 3 のコンポーネント

ウィンドウ サイズクラス

  • material3-window-size-class は、ウィンドウ サイズ クラス(サイズ変更可能なアプリ レイアウトを設計、開発、テストするための、独自のビューポート ブレークポイントのセット)をサポートする、新しいライブラリです。calculateWindowSizeClass を使用してウィンドウ サイズ クラスのインスタンスを取得し、UI の表示の仕方を決定するのに使用できます。たとえば、ウィンドウ サイズが大きい場合にはボトム ナビゲーションではなくナビゲーション レールを表示するといった指定が可能です。詳細と使用例については、WindowSizeClass の API リファレンス ドキュメントをご覧ください。

  • 詳しくは、こちらのブログ投稿をご覧ください。

バージョン 1.0.0-rc01

2022 年 10 月 5 日

androidx.compose.material3:material3:1.0.0-rc01androidx.compose.material3:material3-window-size-class:1.0.0-rc01 がリリースされました。バージョン 1.0.0-rc01 に含まれる commit については、こちらをご覧ください

API の変更

  • テキスト フィールド API に、テキストをサポートするためのスロット パラメータを追加しました。(Iaac0db/227146125

バージョン 1.0.0-beta03

2022 年 9 月 21 日

androidx.compose.material3:material3:1.0.0-beta03androidx.compose.material3:material3-window-size-class:1.0.0-beta03 がリリースされました。バージョン 1.0.0-beta03 に含まれる commit については、こちらをご覧ください

API の変更

  • ExposedDropdownMenuDefaults がメニュー項目のパディング値をエクスポーズするようになりました。(I34ee1
  • ExposedDropdownMenuBoxScope に、テキスト フィールドに渡される Modifier.menuAnchor() 修飾子が追加され、a11y の動作が正しくなりました。(I27fa3
  • ユーザーが評価やトラックを渡してスライダーを生成できる現在の Slider API に 2 つのオーバーロードされたメソッドが追加されました。(I21c00

バグの修正

  • On Error Container のダークモード カラー マッピングをトーン 90 に更新しました。(Ic5612
  • 小さいマテリアル 3 の上部アプリバーに透明な背景を設定できるよう修正しました。(I645e2b/245575782

バージョン 1.0.0-beta02

2022 年 9 月 7 日

androidx.compose.material3:material3:1.0.0-beta02androidx.compose.material3:material3-window-size-class:1.0.0-beta02 がリリースされました。バージョン 1.0.0-beta02 に含まれる commit については、こちらをご覧ください。

API の変更

  • beta01 バージョンの m3 コンポーネントで導入されたデフォルトのコンポーネント インセットに、IME インセットは含まれなくなりました。
  • Material3 Scaffold コンポーネントに contentWindowInsets パラメータを追加し、コンテンツ スロットに対して処理するインセットの量を指定できるようにしました。(Icf11ab/243713323
  • 試験運用版マテリアル 3 の SmallTopAppBar 関数を非推奨とし、同等の TopAppBar 関数を導入しました。使用している場合は、新しい関数に移行してください。(I74404b/226918634
  • トップ アプリバーのフリングとスナップの動作をコントロールできるようにしました。(I15c81
  • Divider から startIndent を削除し、色を最後のパラメータに移動しました。(If7be2

バグの修正

  • ダイアログが表示されたら「ダイアログ」という単語を読み上げて、TalkBack ユーザーがダイアログを識別できるようにします。(I857ef

バージョン 1.0.0-beta01

2022 年 8 月 24 日

androidx.compose.material3:material3:1.0.0-beta01androidx.compose.material3:material3-window-size-class:1.0.0-beta01 がリリースされました。バージョン 1.0.0-beta01 に含まれる commit については、こちらをご覧ください。

API リファレンス

最新のテーマ設定、コンポーネント、その他の利用可能なコンポーザブルについては、Compose Material 3 API リファレンスの概要をご覧ください。

API の変更

  • マテリアル 3 のトップ アプリバーを更新し、完全に閉じた状態と完全に開いた状態がすばやく切り替わるようにしました。また、TopAppBarDefaults 動作関数をコンポーザブルに更新し、トップ アプリバーの状態とアニメーション仕様のデフォルト値を指定しました。(I642b3
  • Surface API に合わせて FAB コンポーネントのシグネチャを更新しました。(I3afaa
  • トップ アプリバー、ドロワー、ナビゲーション バー、レールの、インセットでの組み込みサポートを追加しました。これらのコンポーネントを単独で、または Scaffold とともに使用すると、デベロッパーのインセットが自動的に処理されます。注: この変更によって、ステータスバー アイコンや、ステータスバーとナビゲーション バーの透明度に対して自動処理が追加されるわけではありません。今後も引き続きこれらを手動で処理して、画面いっぱいに広がる最高のエクスペリエンスを提供できるようにしてください。(I7e4e6b/183161866
  • コンポーネントのデフォルトを更新して、今後の柔軟性とパフォーマンスの改善のために API サーフェスを削減しました。(I31820
  • API 内の整合性を保つために、チップとナビゲーション ドロワーのシート パラメータの順序を変更しました。(I45d0b
  • Divider から startIndent を削除し、色を最後のパラメータに移動しました。(If7be2

バージョン 1.0.0-alpha16

2022 年 8 月 10 日

androidx.compose.material3:material3:1.0.0-alpha16androidx.compose.material3:material3-window-size-class:1.0.0-alpha16 がリリースされました。バージョン 1.0.0-alpha16 に含まれる commit については、こちらをご覧ください

新機能

  • ナビゲーション ドロワーでカスタムの幅を指定できるようになりました。(Ia7f10

API の変更

  • API 内の整合性を保つために、Tab と先頭のアイコンタブのパラメータを並べ替えました。(Ie2637
  • BadgeDefaults を試験運用としてマークしました。(I98ef3
  • 非推奨となったナビゲーション ドロワー関数を削除しました。(I4f2db
  • API 内の整合性を保つために、マテリアル 3 のスライダー パラメータを並べ替えました。(I0aee7
  • API 内の整合性を保つために、NavigationBar および NavigationRail パラメータを並べ替えました。(I51cda
  • API 全体の整合性を保つために、マテリアル 3 のパラメータを並べ替えました。(If4ae1
  • API 内の整合性を保つために、マテリアル 3 のスライダー パラメータを並べ替えました。(I62673
  • トップ アプリバーとの整合性を保つために、アイコン パラメータの名前をアクションに変更しました。(Id75be
  • アンカーの配置はまだ流動的であるため、BadgeBadgedBox を試験運用版としてマークしました。(I1712eb/236524516
  • アイコンボタン バリアントの @ExperimentalMaterial3Api アノテーションを @OptIn に変更しました。(I070b5
  • ナビゲーション ドロワーのコンテンツを独自のコンポーザブルに分離し、カスタムの幅を指定できるようにしました。(Ia7f10
  • MenuDefaultsTabDefaults から Divider を削除しました。(I4e33c

バージョン 1.0.0-alpha15

2022 年 7 月 27 日

androidx.compose.material3:material3:1.0.0-alpha15androidx.compose.material3:material3-window-size-class:1.0.0-alpha15 がリリースされました。バージョン 1.0.0-alpha15 に含まれる commit については、こちらをご覧ください

新機能

  • トップ アプリバーをバー自体からドラッグできるようにしました。(I65c00b/205873416

API の変更

  • FilterChip API と ElevatedFilterChip API を更新し、selectedIcon スロットを削除するとともに、選択された状態を表示するための leadingIcon の再利用を促進しました。(Ie5dc2
  • カラーロールのスクリムおよびアウトライン バリアントを追加しました。(Id6d54
  • コンポーザブルのデフォルトの命名規則を修正しました。(I62b27
  • ListItemDefaultsListItemColors を試験運用版としてマークしました。(I1f3ec
  • トップ アプリバー API に変更を加えて、その状態プロパティの意味をより適切に反映するようにしました。また、トップ アプリバー API を試験運用版としてマークしました。(Ic0ad8
  • テキスト選択の色を TextFieldColors に追加して、見つけやすくしました。(Iba1b8
  • アイコンを含むボタンで使用できる ButtonDefault.ButtonWithIconContentPadding を追加しました。(I2bf9c
  • 将来の API の変更における柔軟性を高めるため、テキスト フィールドを試験運用版としてマークしました。(I127b5
  • Checkbox 関数から @ExperimentalMaterial3Api アノテーションを削除しました。(I5eefc
  • RadioButton 関数から @ExperimentalMaterial3Api アノテーションを削除しました。(I17e2a
  • 非インタラクティブなカードから @ExperimentalMaterial3Api アノテーションを削除しました。(I9bd49
  • さまざまなコンポーネント デフォルトのオブジェクトを更新して、色や形状などを含むようにしました。(I96e11

バグの修正

  • カタログアプリでユーザーが混乱しないように、入力チップのサンプルから機能していない末尾のアイコンを削除しました。(I9846a

バージョン 1.0.0-alpha14

2022 年 6 月 29 日

androidx.compose.material3:material3:1.0.0-alpha14androidx.compose.material3:material3-window-size-class:1.0.0-alpha14 がリリースされました。バージョン 1.0.0-alpha14 に含まれる commit については、こちらをご覧ください

新機能

  • M3 リストの実装を追加しました。使用例については、ドキュメントをご覧ください。(Id7a20

API の変更

  • RangeSlider のパラメータ名を values から value に変更しました。(I3b79a
  • マテリアル デザインの仕様に基づく選択可能な状態をサポートできるよう、API の InputChip の実装に対する変更を行いました。 FilterChip の色について、無効な状態が選択された場合のサポートを追加しました。(I55244b/235792432
  • BottomAppBar のデフォルトの FAB を追加しました。(Ida4c8
  • ColorScheme.surfaceColorAtElevation が追加されました。(Id41af
  • compose ライブラリのインターフェースが jdk8 デフォルト インターフェース メソッドを使ってビルドされるようになりました。(I5bcf1
  • WindowWidthSizeClassWindowHeightSizeClass に Comparable が実装され、演算子(<、<=、>=、>)とその他の API を使用して比較できるようになりました。(I747d0

バグの修正

  • バッジのサンプルが更新されて、コンテンツの説明がよりわかりやすくなりました。(I10b9d
  • Material 3 カタログのテーマ選択ツールに、システムのフォントサイズを使用するオプションを追加しました。(I10605
  • バッジと不確定形式の進捗状況インジケーターのサンプルコードを追加しました。(I8fbe0

バージョン 1.0.0-alpha13

2022 年 6 月 1 日

androidx.compose.material3:material3:1.0.0-alpha13androidx.compose.material3:material3-window-size-class:1.0.0-alpha13 がリリースされました。バージョン 1.0.0-alpha13 に含まれる commit については、こちらをご覧ください

API の変更

  • 構成変更時のトップ アプリバーの位置の維持がサポートされます。(I10459b/216160958

バージョン 1.0.0-alpha12

2022 年 5 月 18 日

androidx.compose.material3:material3:1.0.0-alpha12androidx.compose.material3:material3-window-size-class:1.0.0-alpha12 がリリースされました。バージョン 1.0.0-alpha12 に含まれる commit については、こちらをご覧ください

バグの修正

  • スライダーの親の幅を 0 に設定できるようになりました。(b/231707291

バージョン 1.0.0-alpha11

2022 年 5 月 11 日

androidx.compose.material3:material3:1.0.0-alpha11androidx.compose.material3:material3-window-size-class:1.0.0-alpha11 がリリースされました。バージョン 1.0.0-alpha11 に含まれる commit については、こちらをご覧ください

新機能

  • マテリアル 3 に RangeSlider を追加しました。(I18e38
  • マテリアル 3 の AssistChip および InputChip のサポートを追加しました。(I0d25a
  • マテリアル 3 の FilterChip および SuggestionChip のサポートを追加しました。(I9fdf3

API の変更

  • OutlinedTextField に境界の破線を描画する TextFieldDefaults.BorderStroke コンポーザブルの名前を TextFieldDefaults.BorderBox に変更しました。(I5f295
  • M3 Switch の視覚的な変更(Iab30e
  • 標準のアイコンボタンに色を渡すことが可能になりました。(Ia2445

バグの修正

  • 内部パディングの使用を保証するため、material3 / Scaffold に lint チェックを追加しました。(I72293b/226951418

バージョン 1.0.0-alpha10

2022 年 4 月 20 日

androidx.compose.material3:material3:1.0.0-alpha10androidx.compose.material3:material3-window-size-class:1.0.0-alpha10 がリリースされました。バージョン 1.0.0-alpha10 に含まれる commit については、こちらをご覧ください。

新機能

  • material3-window-size-class は、ウィンドウ サイズ クラス(サイズ変更可能なアプリ レイアウトを設計、開発、テストするための、独自のビューポート ブレークポイントのセット)をサポートする、新しいライブラリです。calculateWindowSizeClass を使用してウィンドウ サイズ クラスのインスタンスを取得し、UI の表示の仕方を決定するのに使用できます。たとえば、ウィンドウ サイズが大きい場合にはボトム ナビゲーションではなくナビゲーション レールを表示するといった指定が可能です。詳細と使用例については、WindowSizeClass の API リファレンス ドキュメントをご覧ください。ウィンドウ サイズ クラスの定義について詳しくは、各種の画面サイズのサポートに関する公開ガイダンスをご覧ください。

API の変更

  • BottomAppBar にデフォルトの FAB の高度を追加し、FAB がある BottomAppBar から後置ラムダを削除しました。(I92c47
  • マテリアル 3 の FilledIconButtonFilledTonalIconButtonOutlinedIconButton を追加しました。(Ib2bda
  • Material 3 Snackbar API を更新し、オプションのアクションと閉じるアクションの色の値を受け入れるようにしました。(Ibe4b4
  • PointerInputChange での部分的な消費(down または position)が非推奨になりました。consume() を使用すると、変更を完全に使用できます。isConsumed を使用すると、以前にその変更が他のユーザーに使われたかどうかを確認できます。
  • PointerInputChange::copy() が常にシャローコピーを作成するようになりました。つまり、PointerInputChange のコピーのいずれか 1 つが使用されると、以降はそれらのコピーが使用されます。バインドされていない PointerInputChange を作成するには、代わりにコンストラクタを使用します。(Ie6be4b/225669674
  • Cards API を変更し、CardColors インターフェースでコンテナとコンテンツの色を受け取るように、また、クリック可能なカードの無効状態をサポートするようにしました。(I927df
  • 他のコンポーネントとの一貫性を高めるために、マテリアル 3 のテキスト フィールドのパラメータ backgroundColor の名前を containerColor に変更しました。(I6fbd9

バグの修正

  • マテリアル 3 の仕様に合わせて標準の IconButton を更新しました。(I09eab
  • マテリアル 3 Scaffold のトップバーの高さをコンテンツに渡されるパディングに移動し、上部のアプリバーの下にコンテンツをレンダリングできるようにしました。PaddingValues が無視されると、コンテンツがトップバーによって隠れる可能性があります。(I83cbcb/217776202

バージョン 1.0.0-alpha09

2022 年 4 月 6 日

androidx.compose.material3:material3:1.0.0-alpha09 がリリースされました。バージョン 1.0.0-alpha09 に含まれる commit については、こちらをご覧ください。

新機能

  • Material 3 Switch API を追加しました(I2c3ad

API の変更

  • テキスト フィールドを含むプルダウン メニュー(「露出したプルダウン メニュー」または「コンボボックス」)のサポートを追加しました。(I1b832
  • MaterialTheme および Shape サブシステムに shape パラメータを追加しました。(I37426
  • ExtendedFloatingActionButton に拡張パラメータを追加しました。これにより、FAB を開くか閉じるかを制御し、各状態の間にアニメーションを表示できます。アイコンのない ExtendedFAB の末尾のテキストを含む拡張 FAB に拡張 FAB オーバーロードを追加しました。(Iba7f1

バージョン 1.0.0-alpha08

2022 年 3 月 23 日

androidx.compose.material3:material3:1.0.0-alpha08 がリリースされました。バージョン 1.0.0-alpha08 に含まれる commit については、こちらをご覧ください。

新機能

  • マテリアル 3 のテキスト フィールドのサポートを追加しました。(I795ccb/199377790

API の変更

  • メニューにデフォルトのディバイダを追加しました。(I01374
  • surfaceTint カラー パラメータを ColorScheme クラスに追加しました。(I2f558

バグの修正

  • MaterialTheme からデフォルトのテキスト スタイル値が読み取られるように、Material3 Button を修正しました。(Ie62fc

バージョン 1.0.0-alpha07

2022 年 3 月 9 日

androidx.compose.material3:material3:1.0.0-alpha07 がリリースされました。バージョン 1.0.0-alpha07 に含まれる commit については、こちらをご覧ください。

API の変更

  • Material 3 Surface API を更新し、クリック可能なサーフェスのオーバーロード関数を復活させるとともに、選択と切り替えが可能なサーフェスをサポートする関数を追加しました。(I4bf18
  • LazyVerticalGridLazyHorizontalGrid が安定版になりました。(I307c0
  • LazyVerticalGrid/LazyHorizontalGrid とすべての関連 API を .grid サブパッケージに移動しました。インポートを androidx.compose.foundation.lazy から androidx.compose.foundation.lazy.grid に更新してください。(I2d446
  • WindowInsetsControllerCompat の View のみに依存する以前の変更を元に戻し、一部のウィンドウ フラグの管理に必要な Window が改めて必須になりました。適切な Window が使用されるように(View がダイアログ内にある場合など)、ViewCompat.getWindowInsetsController が非推奨になり、WindowCompat.getInsetsController に置き換えられました。(I660aeb/219572936
  • 交差軸のサイズを定義する LazyVerticalGrid API を新たに追加しました。(I17723

バグの修正

  • Surface API での変更にあわせて Card API を更新しました(I3c8b9

バージョン 1.0.0-alpha06

2022 年 2 月 23 日

androidx.compose.material3:material3:1.0.0-alpha06 がリリースされました。バージョン 1.0.0-alpha06 に含まれる commit については、こちらをご覧ください。

API の変更

  • ドロワー内の単一のデスティネーションを表す NavigationDrawerItem を追加しました(Ic396fb/218286829
  • PermanentNavigationDrawerDismissibleNavigationDrawer を試験運用版 API として追加しました。これらは大画面のデバイスに適したドロワーです。(I5f8abb/218286829
  • マテリアル 3 の下部のアプリバーのサポートを追加しました(Ic432a
  • NavigationDrawer の名前を ModalNavigationDrawer に変更しました(I1807db/218286829
  • マテリアル 3 の Slider クラスとトークンを追加しました(I1ccee
  • Tab の実装を追加しました。使用例については、ドキュメントをご覧ください(Ie0146

バグの修正

  • TalkBack スクリーン リーダーの直線的なナビゲーションで上部のアプリバーの空のタイトルが選択された場合の問題を修正しました。(Id4690
  • IconSizeFloatingActionButtonDefaults に追加しました。(Ia71cf
  • LazyColumn で長いテキストが追加されたときに非表示になる AlertDialog ボタンに関するバグを修正しました。(Ib2cc9b/216663029

バージョン 1.0.0-alpha05

2022 年 2 月 9 日

androidx.compose.material3:material3:1.0.0-alpha05 がリリースされました。バージョン 1.0.0-alpha05 に含まれる commit については、こちらをご覧ください

新機能

マテリアル デザイン 3 のコンポーネントを追加しました。

API の変更

  • onClick コールバックを受け取る Surface 関数を非推奨にしました。クリック可能なサーフェスは、InteractionSourceModifier.clickable() を使用して作成する必要があります。(I211c6
  • FAB の押下とフォーカスでの高さのサポートを追加しました。(Ibb584
  • InteractionSource を受け取るように Surface API を変更しました。さまざまな状態での外観を制御できます。(Iafbc8

バグの修正

  • 動的なカラーパターンに欠落していた第 3 の色を追加しました(I456c4b/214588434

バージョン 1.0.0-alpha04

2022 年 1 月 26 日

androidx.compose.material3:material3:1.0.0-alpha04 がリリースされました。バージョン 1.0.0-alpha04 に含まれる commit については、こちらをご覧ください

API の変更

  • 複雑なロジックのない既存メソッドのオーバーロードであるメソッドに、NonRestartableComposable を追加しました。これにより、呼び出し先の内部関数で繰り返される、すべてのパラメータに対するコンパイラ生成のメモ化チェック(equals)を減らすことができます。(I90490
  • マテリアル 3 のディバイダを追加しました。(Ica5fc
  • Checkbox と RadioButton に試験運用版の API アノテーションを付けられるようにしました。(Ie44bb
  • マテリアル 3 の進行状況インジケーターのサポートを追加しました。(Iff232b/205023841

バグの修正

  • 無効な TextButton's コンテナの色が透明になるよう更新しました。(I6b248b/213339737

バージョン 1.0.0-alpha03

2022 年 1 月 12 日

androidx.compose.material3:material3:1.0.0-alpha03 がリリースされました。バージョン 1.0.0-alpha03 に含まれる commit については、こちらをご覧ください

バグの修正

  • マテリアル 3 の MaterialThemeLocalIndication を追加しました。(I7ce4e
  • チェックボックスに適用される角の丸みを修正しました。(I38b03b/175198975b/202309440

依存関係の更新

  • Kotlin 1.6.10 に依存するようになりました。

バージョン 1.0.0-alpha02

2021 年 12 月 1 日

androidx.compose.material3:material3:1.0.0-alpha02 がリリースされました。バージョン 1.0.0-alpha02 に含まれる commit については、こちらをご覧ください。

新機能

  • チェックボックスとラジオボタンのサポートを追加しました。
  • Kotlin 1.6.0 との互換性を確保するために更新しました。

API の変更

  • マテリアル 3 のスキャフォールディングからドロワーを削除しました。(I04f51
  • マテリアル 3 の Checkbox のサポートを追加しました。(Id5542
  • マテリアル 3 の RadioButton のサポートを追加しました。(I20334

バグの修正

  • IconButton の波紋半径を 40dp から 20dp に縮小しました。(I68bbeb/206674345
  • Text のポート文字列高速パスを compose.material から変更しました。(I30b03
  • ハードコードされたボタンが常に有効になるよう修正しました。(Iea832b/205335456

バージョン 1.0.0-alpha01

2021 年 10 月 27 日

androidx.compose.material3:material3:1.0.0-alpha01 がリリースされました。バージョン 1.0.0-alpha01 に含まれる commit については、こちらをご覧ください

新機能

マテリアル デザイン 3 のテーマ設定と Material You のダイナミック カラー

マテリアル デザイン 3 のコンポーネント

詳しくは、Compose のマテリアル テーマ設定ガイドのマテリアル デザイン 3 と Material You をご確認ください。