Compose マテリアル 3
最新の更新 | 安定版リリース | リリース候補版 | ベータ版リリース | アルファ版リリース |
---|---|---|---|---|
2023 年 2 月 22 日 | 1.0.1 | - | - | 1.1.0-alpha07 |
構造
Compose は、androidx
内の 7 つの Maven Group ID を組み合わせたものです。各グループにはそれぞれの目的に応じて Compose の機能のサブセットが含まれており、それぞれに固有のリリースノートがあります。
次の表に、各グループの説明と、それぞれのリリースノートのリンクを示します。
グループ | 説明 |
---|---|
compose.animation | Jetpack 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.runtime | Compose のプログラミング モデルと状態管理の基本ビルディング ブロックと、Compose コンパイラ プラグインがターゲットとするコアランタイム。 |
compose.ui | レイアウト、描画、入力などのデバイス操作に必要な Compose UI の基本コンポーネント。 |
依存関係の宣言
Compose への依存関係を追加するには、Google の Maven リポジトリをプロジェクトに追加する必要があります。詳しくは、Google の Maven リポジトリをご覧ください。
アプリまたはモジュールの build.gradle
ファイルに、必要なアーティファクトの依存関係を追加します。
Groovy
dependencies { implementation "androidx.compose.material3:material3:1.1.2" implementation "androidx.compose.material3:material3-window-size-class:1.1.2" } android { buildFeatures { compose true } composeOptions { kotlinCompilerExtensionVersion = "1.1.1" } kotlinOptions { jvmTarget = "1.8" } }
Kotlin
dependencies { implementation("androidx.compose.material3:material3:1.1.2") implementation("androidx.compose.material3:material3-window-size-class:1.1.2") } android { buildFeatures { compose = true } composeOptions { kotlinCompilerExtensionVersion = "1.1.1" } kotlinOptions { jvmTarget = "1.8" } }
依存関係について詳しくは、ビルド依存関係の追加をご覧ください。
フィードバック
お寄せいただいたフィードバックは Jetpack 改善の参考にさせていただきます。新しい問題が見つかった場合や、このライブラリを改善するアイデアをお持ちの場合は、お知らせください。新しい問題を報告していただく前に、このライブラリの既存の問題をご確認ください。スターボタンをクリックすると、既存の問題に投票できます。
詳細については、Issue Tracker のドキュメントをご覧ください。
バージョン 1.1
バージョン 1.1.0-alpha07
2023 年 2 月 22 日
androidx.compose.material3:material3:1.1.0-alpha07
と androidx.compose.material3:material3-window-size-class:1.1.0-alpha07
がリリースされました。バージョン 1.1.0-alpha07 に含まれる commit については、こちらをご覧ください。
新機能
rememberTimePickerState()
に対応する時間入力のコンポーザブルを追加しました。これは、時間の入力に関するマテリアル 3 の仕様に従うものです。(Ia4fab)- 期間を選択するための Material 3
DateRangePicker
API を追加しました。(I7a6c3、b/267194809) - マテリアル 3 の入力モードに対応し、
DateRangePicker
API で期間を選択できるようになりました。(Ifdbc4) - テキスト フィールドの色について、次のようなものをカスタマイズできるようになりました。
- フォーカスやエラーの状態に基づいた、入力フィールドやプレースホルダのテキストの色。
textColor
パラメータの名前がunfocusedTextColor
に変更され、placeholderColor
の名前がunfocusedPlaceholderColor
になりました。 - 新しい
errorContainerColor
パラメータによるエラー状態に基づいた、塗りつぶしテキスト フィールドのコンテナの色。
- フォーカスやエラーの状態に基づいた、入力フィールドやプレースホルダのテキストの色。
- 表示されるプルダウン メニューのテキスト フィールドの色が、接頭辞と接尾辞の新しい API に対応できるようパラメータで更新されました。(I9c8b4、b/254284181、b/264766350)
API の変更
- Slider API の一部のバージョンを元に戻し、カスタムのサムネイルとトラックを含む新しい試験運用版の Slider の対象となっている不要な Slider オーバーロードを削除しました。
RangeSlider
の安定性が向上しました。(Ie8fbd) - チップのエレベーションの関数において、
defaultElevation
の名前をelevation
に変更しました。(I0f872) - マテリアル 3 のテキスト フィールドの API である
TextField
、OutlinedTextField
、textFieldWithLabelPadding
、textFieldWithoutLabelPadding
、outlinedTextFieldPadding
は、試験運用版ではなくなりました。(Ieb5c0、b/261561819) TimePickers
is24Hour
ではシステム設定を使用します。(I18856)- スキャフォールディングの API から試験運用版のアノテーションを削除しました。(Ibb51e、b/261565765、b/261436953)
バグの修正
ModalBottomSheet
のデフォルトの形状が常にSheetDefaults.ExpandedShape
となりました。(I0dfca)- マテリアル 3 の
DatePicker
とDateRangePicker
について、ユーザー補助機能を改善しました。(I5087e) - 最大の高さの制約が伝播されてクラッシュが発生する可能性があるバグを修正しました。(I30d8c)
- クリック可能かつ選択可能なサーフェスからセマンティック ロールを削除しました。そのロールを使用していたコンポーネントを更新し、modifier.semantics を使ってロールを設定できるようになりました。(I793d9)
バージョン 1.1.0-alpha06
2023 年 2 月 8 日
androidx.compose.material3:material3:1.1.0-alpha06
と androidx.compose.material3:material3-window-size-class:1.1.0-alpha06
がリリースされました。バージョン 1.1.0-alpha06 に含まれる commit については、こちらをご覧ください。
新機能
- テキスト フィールドで接頭辞と接尾辞のテキストがサポートされるようになりました。(Ia8578、b/179884561)
- マテリアル 3 の仕様に沿って時間選択ツールを表示する
TimePicker
関数を追加しました。この関数はTimePickerState
とコンビニエンス メソッドrememberTimePickerState
と組み合わせて使用します。(I71910) - 日付入力が
DatePicker
で表示モードになりました。日付選択ツールと日付入力モードとの切り替えのサポートを追加しました。(Ieeff7) RichTextTooltips
の API を追加しました。(I58ef3)ModalBottomSheet
、ModalBottomSheetDefaults
など、マテリアル 3 用モーダル ボトムシートを実装しました。また、将来的なシート コンポーネントに使用できるSheetState
とrememberSheetState
も導入しました。(I0853a、b/244189383)
API の変更
- API
showSnackbar
を安定化しました。(I195c2、b/261424370) - アシストチップと候補ワードの API を安定化しました。(Ibb67b、b/261424370)
ListItem
、ListItemDefaults
、ListItemColors
の API を非試験運用版にしました。(I7e7fa、b/261438882)SliderPositions
、SliderDefaults.Thumb
、SliderDefaults.Track
を安定化し、カスタム サムネイルとトラックを含む非試験運用版のSlider
、RangeSlider
の API を追加しました。以前のSlider
、RangeSlider
の API を非推奨にしました。(Ie5ea6、b/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-alpha05
と androidx.compose.material3:material3-window-size-class:1.1.0-alpha05
がリリースされました。バージョン 1.1.0-alpha05 に含まれる commit については、こちらをご覧ください。
新機能
DatePickerDialog
とユーザー補助のサポート。- カスタムのサムネイルとトラックを
RangeSlider
に追加しました。
バージョン 1.1.0-alpha04
2023 年 1 月 11 日
androidx.compose.material3:material3:1.1.0-alpha04
と androidx.compose.material3:material3-window-size-class:1.1.0-alpha04
がリリースされました。バージョン 1.1.0-alpha04 に含まれる commit については、こちらをご覧ください。
新機能
- カレンダー UI を介して単一の日付を選択するための初期
DatePicker
API。この API には引き続き変更が加えられています。(I722b9) PlainTooltipBox
を介してプレーン ツールチップのサポートを追加しました。(I0cdfb)- 検索バー。(Iad128)
SwipeToDismiss
。(I458a8、b/242889540)
API の変更
- Surface に
IsContainer
セマンティクス プロパティを追加しました。後で変更する際にこのプロパティを使って、サーフェスなど要素の意味論的意味に基づいて移動順序を決定します。(I63379) - ナビゲーション ドロワー関連の API を安定版としてマークしました。(Iab01e、b/261439597)
- 円形の進行状況インジケーターにトラックの色パラメータを追加し、円形と線形の両方の進行状況インジケーターにストロークの上限パラメータを追加しました。(Ie668c、b/216325962、b/222964817)
- 非推奨になった非表示関数の戻り値の型の null 可能性を拡大しました。(Ibf7b0)
Modifier.minimumInteractiveComponentSize
を追加しました。これを使用すると、要素のサイズが小さい場合のタップ操作の曖昧さを解消するために、48 dp 以上のサイズを予約することができます。(I33f58、b/258495559)- コンテンツ スロットのある
AlertDialog
コンポーザブル用の試験運用版 API を追加しました。(Iec4a2)
バグの修正
- 進行状況インジケーターの進捗が予想範囲に適切にバインドされるようになりました。(I8a7eb、b/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-alpha03
と androidx.compose.material3:material3-window-size-class:1.1.0-alpha03
がリリースされました。バージョン 1.1.0-alpha03 に含まれる commit については、こちらをご覧ください。
API の変更
consumedWindowInsets()
の名前をconsumeWindowInsets()
に、withConsumedWindowInsets()
の名前をonConsumedWindowInsetsChanged()
に変更し、Modifiers を公開しました。(Ie44e1)- アイコン付きのテキスト ボタンで使用するための新しいデフォルトのコンテンツ パディングを追加しました。(I8f662)
- ナビゲーション バーとレールの無効な色を追加しました。(Ia7892、b/258867034)
- 祖先のスクロール情報をクエリするための Modifier API を追加しました。(I2ba9d、b/203141462)
- ジェスチャーがスクロール イベントになる可能性がある場合にタップ操作を正しく遅延させるために
Clickable
で使用します。 Scrollable ViewGroup
内で使用する場合にClickables
がリップルを正しく遅延しない問題を修正しました。- ジェスチャーがスクロール イベントになる可能性がある場合にタップを正しく遅延するように Drawers と Sheets を更新しました。
依存関係の更新
Compose UI
とCompose Material
は Lifecycle 2.5.1 に依存するようになりました。(I05ab0、b/258038814)
バージョン 1.1.0-alpha02
2022 年 11 月 9 日
androidx.compose.material3:material3:1.1.0-alpha02
と androidx.compose.material3:material3-window-size-class:1.1.0-alpha02
がリリースされました。バージョン 1.1.0-alpha02 に含まれる commit については、こちらをご覧ください。
API の変更
- 柔軟性を高めるため、
awaitFirstDown
とwaitForUpOrCancellation
がPointerEventPass
を受け取るようになりました(さらにExposedDropdownMenuBox
も修正しました(スクロール中もメニューが表示される))。(I7579a、b/212091796) - material と material3 の Text である
TextField
とOutlinedTextField
にminLines
パラメータを追加し、コンポーネントの最小の高さを行数で設定できるようになりました。(I4af1d) TopAppBar
の作成時に使用する新しいtopAppBarColors
関数のために、TopAppBarDefaults smallTopAppBarColors
関数を非推奨にしました。(Ie6cb9)minLines
パラメータをBasicText
とBasicTextField
に追加しました。これにより、これらのコンポーザブルの最小の高さを行数で設定できるようになりました。(I24294、b/122476634)
バグの修正
- マテリアル 3 の
IconButton
およびIconToggleBotton
のコンテンツを、コンポーネントの状態レイヤの図形(円形など)にクリップしました。(I9da8f) - マテリアル 3 の Medium および Large の上部アプリバーを更新し、サーフェス全体で同じ背景色が適用できるようにするとともに、デフォルトの色を透明色の値でオーバーライドできるようにしました。(I67659、b/249688556、b/250838918)
バージョン 1.1.0-alpha01
2022 年 10 月 24 日
androidx.compose.material3:material3:1.1.0-alpha01
と androidx.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.1
と androidx.compose.material3:material3-window-size-class:1.0.1
がリリースされました。バージョン 1.0.1 に含まれる commit については、こちらをご覧ください。
バグの修正
- マテリアル 3 の Medium および Large の上部アプリバーを更新し、サーフェス全体で同じ背景色が適用できるようにするとともに、デフォルトの色を透明色の値でオーバーライドできるようにしました。(I67659、b/249688556、b/250838918)
バージョン 1.0.0
2022 年 10 月 24 日
androidx.compose.material3:material3:1.0.0
と androidx.compose.material3:material3-window-size-class:1.0.0
がリリースされました。バージョン 1.0.0 に含まれる commit については、こちらをご覧ください。
1.0.0 の主な機能
これは、Compose マテリアル 3 の最初の安定版リリースです。
マテリアル デザイン 3 のテーマ設定と Material You のダイナミック カラー
マテリアル デザイン 3 のコンポーネント
- バッジ
- ボトム アプリバー
- ボタン
- FAB と拡張 FAB
- カード
- チェックボックス
- チップ
- ダイアログ
- 分割線
- プルダウン メニュー
- リスト
- ナビゲーション バー
- ナビゲーション ドロワー
- ナビゲーション レール
- 進行状況インジケーター
- ラジオボタン
- スライダー
- スイッチ
- タブ
- テキスト フィールド
- トップ アプリバー
- アイコン
- テキスト
- サーフェス
- レイアウト
- コンテンツの色
ウィンドウ サイズクラス
material3-window-size-class
は、ウィンドウ サイズ クラス(サイズ変更可能なアプリ レイアウトを設計、開発、テストするための、独自のビューポート ブレークポイントのセット)をサポートする、新しいライブラリです。calculateWindowSizeClass
を使用してウィンドウ サイズ クラスのインスタンスを取得し、UI の表示の仕方を決定するのに使用できます。たとえば、ウィンドウ サイズが大きい場合にはボトム ナビゲーションではなくナビゲーション レールを表示するといった指定が可能です。詳細と使用例については、WindowSizeClass
の API リファレンス ドキュメントをご覧ください。詳しくは、こちらのブログ投稿をご覧ください。
バージョン 1.0.0-rc01
2022 年 10 月 5 日
androidx.compose.material3:material3:1.0.0-rc01
と androidx.compose.material3:material3-window-size-class:1.0.0-rc01
がリリースされました。バージョン 1.0.0-rc01 に含まれる commit については、こちらをご覧ください。
API の変更
- テキスト フィールド API に、テキストをサポートするためのスロット パラメータを追加しました。(Iaac0d、b/227146125)
バージョン 1.0.0-beta03
2022 年 9 月 21 日
androidx.compose.material3:material3:1.0.0-beta03
と androidx.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 の上部アプリバーに透明な背景を設定できるよう修正しました。(I645e2、b/245575782)
バージョン 1.0.0-beta02
2022 年 9 月 7 日
androidx.compose.material3:material3:1.0.0-beta02
と androidx.compose.material3:material3-window-size-class:1.0.0-beta02
がリリースされました。バージョン 1.0.0-beta02 に含まれる commit については、こちらをご覧ください。
API の変更
- beta01 バージョンの m3 コンポーネントで導入されたデフォルトのコンポーネント インセットに、IME インセットは含まれなくなりました。
- Material3 Scaffold コンポーネントに
contentWindowInsets
パラメータを追加し、コンテンツ スロットに対して処理するインセットの量を指定できるようにしました。(Icf11a、b/243713323) - 試験運用版マテリアル 3 の
SmallTopAppBar
関数を非推奨とし、同等のTopAppBar
関数を導入しました。使用している場合は、新しい関数に移行してください。(I74404、b/226918634) - トップ アプリバーのフリングとスナップの動作をコントロールできるようにしました。(I15c81)
- Divider から startIndent を削除し、色を最後のパラメータに移動しました。(If7be2)
バグの修正
- ダイアログが表示されたら「ダイアログ」という単語を読み上げて、TalkBack ユーザーがダイアログを識別できるようにします。(I857ef)
バージョン 1.0.0-beta01
2022 年 8 月 24 日
androidx.compose.material3:material3:1.0.0-beta01
と androidx.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 とともに使用すると、デベロッパーのインセットが自動的に処理されます。注: この変更によって、ステータスバー アイコンや、ステータスバーとナビゲーション バーの透明度に対して自動処理が追加されるわけではありません。今後も引き続きこれらを手動で処理して、画面いっぱいに広がる最高のエクスペリエンスを提供できるようにしてください。(I7e4e6、b/183161866)
- コンポーネントのデフォルトを更新して、今後の柔軟性とパフォーマンスの改善のために API サーフェスを削減しました。(I31820)
- API 内の整合性を保つために、チップとナビゲーション ドロワーのシート パラメータの順序を変更しました。(I45d0b)
- Divider から
startIndent
を削除し、色を最後のパラメータに移動しました。(If7be2)
バージョン 1.0.0-alpha16
2022 年 8 月 10 日
androidx.compose.material3:material3:1.0.0-alpha16
と androidx.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)
- アンカーの配置はまだ流動的であるため、
Badge
とBadgedBox
を試験運用版としてマークしました。(I1712e、b/236524516) - アイコンボタン バリアントの
@ExperimentalMaterial3Api
アノテーションを@OptIn
に変更しました。(I070b5) - ナビゲーション ドロワーのコンテンツを独自のコンポーザブルに分離し、カスタムの幅を指定できるようにしました。(Ia7f10)
MenuDefaults
とTabDefaults
からDivider
を削除しました。(I4e33c)
バージョン 1.0.0-alpha15
2022 年 7 月 27 日
androidx.compose.material3:material3:1.0.0-alpha15
と androidx.compose.material3:material3-window-size-class:1.0.0-alpha15
がリリースされました。バージョン 1.0.0-alpha15 に含まれる commit については、こちらをご覧ください。
新機能
- トップ アプリバーをバー自体からドラッグできるようにしました。(I65c00、b/205873416)
API の変更
FilterChip
API とElevatedFilterChip
API を更新し、selectedIcon
スロットを削除するとともに、選択された状態を表示するためのleadingIcon
の再利用を促進しました。(Ie5dc2)- カラーロールのスクリムおよびアウトライン バリアントを追加しました。(Id6d54)
- コンポーザブルのデフォルトの命名規則を修正しました。(I62b27)
ListItemDefaults
とListItemColors
を試験運用版としてマークしました。(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-alpha14
と androidx.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
の色について、無効な状態が選択された場合のサポートを追加しました。(I55244、b/235792432) BottomAppBar
のデフォルトの FAB を追加しました。(Ida4c8)ColorScheme.surfaceColorAtElevation
が追加されました。(Id41af)- compose ライブラリのインターフェースが jdk8 デフォルト インターフェース メソッドを使ってビルドされるようになりました。(I5bcf1)
WindowWidthSizeClass
とWindowHeightSizeClass
に Comparable が実装され、演算子(<、<=、>=、>)とその他の API を使用して比較できるようになりました。(I747d0)
バグの修正
- バッジのサンプルが更新されて、コンテンツの説明がよりわかりやすくなりました。(I10b9d)
- Material 3 カタログのテーマ選択ツールに、システムのフォントサイズを使用するオプションを追加しました。(I10605)
- バッジと不確定形式の進捗状況インジケーターのサンプルコードを追加しました。(I8fbe0)
バージョン 1.0.0-alpha13
2022 年 6 月 1 日
androidx.compose.material3:material3:1.0.0-alpha13
と androidx.compose.material3:material3-window-size-class:1.0.0-alpha13
がリリースされました。バージョン 1.0.0-alpha13 に含まれる commit については、こちらをご覧ください。
API の変更
- 構成変更時のトップ アプリバーの位置の維持がサポートされます。(I10459、b/216160958)
バージョン 1.0.0-alpha12
2022 年 5 月 18 日
androidx.compose.material3:material3:1.0.0-alpha12
と androidx.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-alpha11
と androidx.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 チェックを追加しました。(I72293、b/226951418)
バージョン 1.0.0-alpha10
2022 年 4 月 20 日
androidx.compose.material3:material3:1.0.0-alpha10
と androidx.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 の
FilledIconButton
、FilledTonalIconButton
、OutlinedIconButton
を追加しました。(Ib2bda) - Material 3 Snackbar API を更新し、オプションのアクションと閉じるアクションの色の値を受け入れるようにしました。(Ibe4b4)
PointerInputChange
での部分的な消費(down または position)が非推奨になりました。consume()
を使用すると、変更を完全に使用できます。isConsumed
を使用すると、以前にその変更が他のユーザーに使われたかどうかを確認できます。PointerInputChange::copy()
が常にシャローコピーを作成するようになりました。つまり、PointerInputChange
のコピーのいずれか 1 つが使用されると、以降はそれらのコピーが使用されます。バインドされていないPointerInputChange
を作成するには、代わりにコンストラクタを使用します。(Ie6be4、b/225669674)- Cards API を変更し、
CardColors
インターフェースでコンテナとコンテンツの色を受け取るように、また、クリック可能なカードの無効状態をサポートするようにしました。(I927df) - 他のコンポーネントとの一貫性を高めるために、マテリアル 3 のテキスト フィールドのパラメータ
backgroundColor
の名前をcontainerColor
に変更しました。(I6fbd9)
バグの修正
- マテリアル 3 の仕様に合わせて標準の
IconButton
を更新しました。(I09eab) - マテリアル 3 Scaffold のトップバーの高さをコンテンツに渡されるパディングに移動し、上部のアプリバーの下にコンテンツをレンダリングできるようにしました。
PaddingValues
が無視されると、コンテンツがトップバーによって隠れる可能性があります。(I83cbc、b/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 のテキスト フィールドのサポートを追加しました。(I795cc、b/199377790)
API の変更
バグの修正
- 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)
LazyVerticalGrid
とLazyHorizontalGrid
が安定版になりました。(I307c0)LazyVerticalGrid/LazyHorizontalGrid
とすべての関連 API を .grid サブパッケージに移動しました。インポートを androidx.compose.foundation.lazy から androidx.compose.foundation.lazy.grid に更新してください。(I2d446)WindowInsetsControllerCompat
の View のみに依存する以前の変更を元に戻し、一部のウィンドウ フラグの管理に必要な Window が改めて必須になりました。適切な Window が使用されるように(View がダイアログ内にある場合など)、ViewCompat.getWindowInsetsController
が非推奨になり、WindowCompat.getInsetsController
に置き換えられました。(I660ae、b/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
を追加しました(Ic396f、b/218286829) PermanentNavigationDrawer
とDismissibleNavigationDrawer
を試験運用版 API として追加しました。これらは大画面のデバイスに適したドロワーです。(I5f8ab、b/218286829)- マテリアル 3 の下部のアプリバーのサポートを追加しました(Ic432a)
NavigationDrawer
の名前をModalNavigationDrawer
に変更しました(I1807d、b/218286829)- マテリアル 3 の Slider クラスとトークンを追加しました(I1ccee)
- Tab の実装を追加しました。使用例については、ドキュメントをご覧ください(Ie0146)
バグの修正
TalkBack
スクリーン リーダーの直線的なナビゲーションで上部のアプリバーの空のタイトルが選択された場合の問題を修正しました。(Id4690)IconSize
をFloatingActionButtonDefaults
に追加しました。(Ia71cf)LazyColumn
で長いテキストが追加されたときに非表示になるAlertDialog
ボタンに関するバグを修正しました。(Ib2cc9、b/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
関数を非推奨にしました。クリック可能なサーフェスは、InteractionSource
とModifier.clickable()
を使用して作成する必要があります。(I211c6) - FAB の押下とフォーカスでの高さのサポートを追加しました。(Ibb584)
- InteractionSource を受け取るように
Surface
API を変更しました。さまざまな状態での外観を制御できます。(Iafbc8)
バグの修正
- 動的なカラーパターンに欠落していた第 3 の色を追加しました(I456c4、b/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 の進行状況インジケーターのサポートを追加しました。(Iff232、b/205023841)
バグの修正
- 無効な
TextButton's
コンテナの色が透明になるよう更新しました。(I6b248、b/213339737)
バージョン 1.0.0-alpha03
2022 年 1 月 12 日
androidx.compose.material3:material3:1.0.0-alpha03
がリリースされました。バージョン 1.0.0-alpha03 に含まれる commit については、こちらをご覧ください。
バグの修正
- マテリアル 3 の
MaterialTheme
にLocalIndication
を追加しました。(I7ce4e) - チェックボックスに適用される角の丸みを修正しました。(I38b03、b/175198975、b/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 に縮小しました。(I68bbe、b/206674345)Text
のポート文字列高速パスをcompose.material
から変更しました。(I30b03)- ハードコードされたボタンが常に有効になるよう修正しました。(Iea832、b/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 のコンポーネント
- ボタン
- FAB と拡張 FAB
- ダイアログ
- ナビゲーション バー
- ナビゲーション ドロワー
- ナビゲーション レール
- トップ アプリバー
- バッジ
- アイコン
- テキスト
- サーフェス
- レイアウト
- コンテンツの色
詳しくは、Compose のマテリアル テーマ設定ガイドのマテリアル デザイン 3 と Material You をご確認ください。