Wear Compose マテリアル 3
| 最新の更新 | 安定版リリース | リリース候補版 | ベータ版リリース | アルファ版リリース |
|---|---|---|---|---|
| 2025 年 8 月 27 日 | 1.5.0 | - | - | - |
依存関係の宣言
Wear への依存関係を追加するには、Google の Maven リポジトリをプロジェクトに追加する必要があります。詳しくは、Google の Maven リポジトリをご覧ください。
アプリまたはモジュールの build.gradle ファイルに、必要なアーティファクトの依存関係を追加します。
Groovy
dependencies { implementation "androidx.wear.compose:compose-foundation:1.5.0" // For Wear Material Design UX guidelines and specifications implementation "androidx.wear.compose:compose-material3:1.5.0" // For integration between Wear Compose and Androidx Navigation libraries implementation "androidx.wear.compose:compose-navigation:1.5.0" // For Wear preview annotations implementation("androidx.wear.compose:compose-ui-tooling:1.5.0") // NOTE: DO NOT INCLUDE dependencies on androidx.wear.compose:compose-material // or androidx.compose.material:material. // androidx.wear.compose:compose-material3 is designed as a replacement, // not an addition, to both of these other libraries. // If there are features from that you feel are missing from // androidx.wear.compose:compose-material3, please raise a bug to let us know. }
Kotlin
dependencies { implementation("androidx.wear.compose:compose-foundation:1.5.0") // For Wear Material Design UX guidelines and specifications implementation("androidx.wear.compose:compose-material3:1.5.0") // For integration between Wear Compose and Androidx Navigation libraries implementation("androidx.wear.compose:compose-navigation:1.5.0") // For Wear preview annotations implementation("androidx.wear.compose:compose-ui-tooling:1.5.0") // NOTE: DO NOT INCLUDE dependencies on androidx.wear.compose:compose-material // or androidx.compose.material:material. // androidx.wear.compose:compose-material3 is designed as a replacement, // not an addition, to both of these other libraries. // If there are features from that you feel are missing from // androidx.wear.compose:compose-material3, please raise a bug to let us know. }
依存関係について詳しくは、ビルド依存関係の追加をご覧ください。
フィードバック
お寄せいただいたフィードバックは Jetpack 改善の参考にさせていただきます。新しい問題が見つかった場合や、このライブラリを改善するアイデアをお持ちの場合は、お知らせください。新しい問題を報告していただく前に、このライブラリの既存の問題をご確認ください。スターボタンをクリックすると、既存の問題に投票できます。
詳細については、Issue Tracker のドキュメントをご覧ください。
Wear Compose Material3 バージョン 1.5
バージョン 1.5.0
2025 年 8 月 27 日
androidx.wear.compose:compose-*:1.5.0 がリリースされました。バージョン 1.5.0 にはこれらの commit が含まれています。
1.4.0 以降の重要な変更
新しい Material 3 Expressive デザイン システムをサポートする Wear Compose マテリアル 3 ライブラリの初回リリース。このリリースに含まれる機能は以下のとおりです。
MaterialThemeとダイナミック カラーのテーマ設定を更新しました。- 画面の構造をレイアウトし、
ScrollIndicator、TimeText、HorizontalPageIndicator、VerticalPageIndicatorのアニメーションを調整するための新しいAppScaffold, ScreenScaffold、HorizontalPagerScaffold、VerticalPagerScaffoldコンポーネント。 - シェイプ モーフィング
IconButton、TextButton、IconToggleButton、TextToggleButton。押すかチェックするとアニメーションするバリエーションがあります。 EdgeButton。画面の下部に合わせた特別な形状になっています。ButtonGroupは、タッチするとシェイプ モーフィングする行に、表現力豊かなボタンのグループを実装します。- 追加のダイアログ コンテンツのバリエーションを含む
AlertDialogとConfirmationDialog。 TimePickerコンポーネントとDatePickerコンポーネント。- 進行状況インジケーターには、
CircularProgressIndicator(セグメント化されたバリエーションあり)、ArcProgressIndicator、LinearProgressIndicatorがあります。
また、Wear Compose Foundation 1.5.0 には次の機能が含まれています。
TransformingLazyColumn。スケーリングとモーフィング アニメーションをサポートする、遅延読み込みの縦方向スクロール リスト。HorizontalPagerとVerticalPagerを使用した Wear Compose Foundation のページングのサポート。- 階層型フォーカス グループ - アプリケーション内のコンポーザブルにアノテーションを付け、コンポジションのアクティブな部分を追跡してフォーカスを調整するために使用されます。
(Wear OS 向け Material 3 Expressive)の詳細をご覧ください。
バージョン 1.5.0-rc02
2025 年 8 月 13 日
androidx.wear.compose:compose-*:1.5.0-rc02 がリリースされました。バージョン 1.5.0-rc02 にはこれらの commit が含まれています。
バグの修正
TimePickerで、期間(午前/午後)の長い国際化された文字列によってレイアウトが崩れるバグを修正しました。(I0fa81)
バージョン 1.5.0-rc01
2025 年 7 月 30 日
androidx.wear.compose:compose-*:1.5.0-rc01 がリリースされました。バージョン 1.5.0-rc01 にはこれらの commit が含まれています。
バグの修正
TimePickerはユーザーの言語 / 地域によって完全に制御されるようになり、DateFormat.getBestDateTimePatternを使用して選択ツールと区切り文字の順序と内容を決定します。これにより、CJK 言語の列の順序が正しくなり、アラビア語などの言語の RTL レイアウトの問題が解決され、ローカライズされた区切り文字が使用され、ロケールに基づいて 0 ~ 11 時形式と 1 ~ 12 時形式の両方がサポートされます(I5d543)DatePickerは、CJK などの一部のロケールで、数値と言語形式の混在を避けるために、月の数値を表示するようになりました(例: 2025 | 7 月 | 02 ではなく、2025 | 07 | 02 とします。この変更では、ロケールで年の言語接尾辞が使用されているかどうかを確認するヒューリスティックが適用されます。使用されている場合は、一貫性を保つために月の形式がテキスト形式(MMM)から数値形式(MM)に切り替えられます。(Ia93fe)- Picker コンポーネントのヘッダーの垂直スペースが一定になり、特に
Talkbackモードで、ピッカー列が選択されたときに表示がずれるのを防ぎます。(I7f8b7) HorizontalPageIndicatorとVerticalPageIndicatorが全画面で描画されることで発生するユーザー補助のバグを修正しました。ページ インジケーターは全画面表示ではなくなり、HorizontalPagerScaffoldまたはVerticalPagerScaffoldとともに使用すると自動的に配置されます。ページャ スキャフォールディングを使用しない場合は、modifier = Modifier.align(Alignment.BottomCenter)とHorizontalPageIndicator、modifier =Modifier.align(Alignment.CenterEnd)とVerticalPageIndicatorを使用して、配置を明示的に指定します。(I3a0ad)SwipeToRevealのスワイプ方向が、LTR と RTL の両方のLayoutDirectionsで一貫性を持つようになりました。(I6d427)- アクションの
SwipeToReveal垂直方向の中央揃えを復元しました。hasPartiallyRevealedState = trueの場合、スクロールが発生したときに、呼び出し元によってRevealStateがRevealValue.Coveredにリセットされる必要があります。(I6473d) SwipeDismissableNavHostが API 36 以降のコンテンツを正しくクリップするようになりました。(Ib9a44)
バージョン 1.5.0-beta06
2025 年 7 月 16 日
androidx.wear.compose:compose-*:1.5.0-beta06 がリリースされました。バージョン 1.5.0-beta06 には、これらの commit が含まれています。
バグの修正
LazyColumnまたはScalingLazyColumnにreverseLayout = trueがある場合のEdgeButtonアニメーションを修正。(I46a1a)ScrollIndicator/PageIndicatorが提供されている場合、Talkback でタップして探索が機能しないScreenScaffoldのバグを修正しました。(I6dcee)TransformingLazyColumnでは、バックグラウンド ペインタでTransformationSpecが提供するitemHeight値を読み取ることで、TransformationSpecからのカスタム モーフィングが可能になりました。(I6a599)IconButtonの有効/無効の色の切り替えをアニメーション化し、IconToggleButtonとの整合性を保ちます。(Ife10a)- アニメーション時に最小ドットサイズへの目立ったジャンプを回避するため、
CircularProgressIndicatorの最小セクションのクランプを削除しました。この変更の一環として、drawCircularProgressIndicatorのtargetProgressパラメータは使用されなくなりました。(I33309) - ピッカーにセマンティック ロール
ValuePickerが追加されました。スクリーン リーダーでこのロールを使用すると、ピッカーのアクセシビリティが向上します。Picker のアクセシビリティ クリックラベルも更新され、読み取り専用モードでの値の調整と、それ以外の場合の現在の値の選択が区別されるようになりました。(I33309)
バージョン 1.5.0-beta05
2025 年 7 月 2 日
androidx.wear.compose:compose-*:1.5.0-beta05 がリリースされました。バージョン 1.5.0-beta05 には、これらの commit が含まれています。
バグの修正
Modifier.edgeSwipeToDismissの使用方法を明確にするためにドキュメントを更新しました(I78cb5)- 遅延リストで
SwipeToRevealを使用すると、複数の表示されたアイテムが表示される可能性があるバグに対処しました(I1d4f6) TransformingLazyColumnのコンテナの形状がスケーリングされるようになり、コンテンツがクリップされなくなりました。(I9221a)- 時間/分/秒または年/月/日の
TimePickerラベルとDatePickerラベルに、スクリーン リーダー用の見出しセマンティクスが追加されました(I77d8b) - 不定の
CircularProgressIndicatorでループ間の一時停止を削除しました(Iaf0bb) - アイテムが削除されたときに
TransformingLazyColumnで発生するアニメーションのバグを修正しました。(I73034) - アイテムが削除されたときの
TransformingLazyColumnでのアンカー アイテムの処理を修正しました。(I841a8) - 自動中央揃えがオンで、選択(中央揃え)された Picker が変更された場合、
PickerGroupが Picker を水平方向にアニメーション表示するようになりました。(Ic82c4)
バージョン 1.5.0-beta04
2025 年 6 月 18 日
androidx.wear.compose:compose-*:1.5.0-beta04 がリリースされました。バージョン 1.5.0-beta04 にはこれらの commit が含まれています。
バグの修正
TransformingLazyColumnのレイアウトのバグを修正しました。画面内に収まるコンテンツが画面の上部から正しく配置されるようになりました(I80115)EdgeButtonを使用してリストの最下部までスクロールしたときに、最下部のアイテムが誤ってスケーリングされるTransformingLazyColumnの問題を修正しました。レイアウトを復元する際に、スクロールの進行状況が勾配降下法に従うようになりました。(Iea375)TransformingLazyColumnがバックグラウンド ペインタ内のアイテムの高さを読み取るようになり、カスタムTransformationSpecsでモーフィングを実装できるようになりました。(I022f0)SwipeToRevealが、表示されたアクションを垂直方向に正しく中央揃えするようになりました。(I4419b)- 画面上でビューとコンポーズの両方が使用されている場合に、スワイプして閉じる機能が正しく動作しないという
SwipeToRevealのバグを修正しました。(I5dc0e) - スクロール時に
SwipeToRevealアクションが垂直方向にオフセットされて描画されるバグを修正しました。(I29444) AlertDialog、ConfirmationDialog、OpenOnPhoneDialog、SwipeToRevealは、画面サイズの割合として計算されるパディングとサイズを切り上げるようになりました。(I76367)ButtonDefaults.outlinedButtonBorderが有効/無効の状態の変化に応じてサイズを更新するようになりました(If2ddd)- Pager と
ScreenScaffoldを含む複雑な画面で発生していたEdgeButtonの高さに関するバグを修正しました。(I946e3) - プレースホルダのアニメーションが停止する可能性のある競合状態を修正しました。(I53530)
- Canvas に描画することで、
HorizontalPageIndicatorとVerticalPageIndicatorのパフォーマンスを改善しました。(Ifae1e) - EdgeButton の形状を調整し、アウトラインを構成する省略記号と円の間の移行をスムーズにしました。(I7721e)
- 不必要な再コンポーズによりアニメーションが停止する原因となっていた
LevelIndicatorのバグを修正しました。(I45d08)
バージョン 1.5.0-beta03
2025 年 6 月 4 日
androidx.wear.compose:compose-*:1.5.0-beta03 がリリースされました。バージョン 1.5.0-beta03 には、これらの commit が含まれています。
API の変更
OpenOnPhoneDialogは TalkBack でメッセージ テキストのみを読み上げ、アイコンのセマンティクスをスキップするようになりました。OpenOnPhoneDialogDefaultsが更新され、icon()からiconContentDescriptionとcontentDescriptionパラメータが削除されました。また、ConfirmationDialogDefaultsにSuccessIconコンポーザブルとFailureIconコンポーザブルの修飾子パラメータが追加されました。(Id2ae2)
バグの修正
SurfaceTransformationパラメータの効果を適用する順序を変更しました。以前は、Wear Material3 コンポーネントに適用される変換は、背景ペインタ、コンテナ変換、コンテンツ変換の順で行われていました。最初の 2 つが反転され、それらの間に渡された修飾子が適用されるため、コンテナの変換の影響を受けます。これにより、変換パラメータを使用して TLC の要素でプレースホルダのシマー効果を使用するなどのケースが修正されます。(I786cf)RevealState.Saverは、アクティビティまたはプロセスが再作成されたときにSwipeToRevealの状態を復元するために使用されるよう追加されました。rememberRevealState関数は、デフォルトでこの Saver を使用するようになりました。(Ie0ecb)SwipeToRevealのメイン アクション ボタンとサブアクション ボタンのデフォルトがButtonDefault.Heightになるようにしました(背の高いボタンの最大高まで埋められていたバグを修正しました)。(Ibfba1)- 右スワイプ ジェスチャーが実行されたときに、最後に操作したコンポーネントをリセットするように
SwipeToRevealを変更しました。(Ia8450) - スワイプの終了位置が、表示アンカーと表示済みアンカーの間にあり、表示アンカーに近い場合、
SwipeToRevealはRevealing状態に落ち着くように変更されました。(If4458) - RTL レイアウトで
ButtonGroupのコンテンツが適切に反転されるようになりました(Ib378d) AnimatedTextが RTL テキスト方向をサポートするようになりました(I4533c)- 下部のアイテムが削除されたときに
TransformingLazyColumnがアイテムのサイズを正しく変更するようになりました(Idacab) TransformingLazyColumnは 1 回の測定パスのみを行うようになり、フレーム時間を短縮することでパフォーマンスが向上しました。(I501a1)
バージョン 1.5.0-beta02
2025 年 5 月 20 日
androidx.wear.compose:compose-*:1.5.0-beta02 がリリースされました。バージョン 1.5.0-beta02 にはこれらの commit が含まれています。
バグの修正
- foundation、material、material3 ライブラリのベースライン プロファイルが更新されました。(I53f06)
TransformingLazyColumnのバグを修正しました。このバグでは、一番下のアイテムが削除されるとアイテムのサイズが変更されていました。(Idacab)- リストがリストの先頭または末尾で動かなくなる
TransformingLazyColumnのバグを修正しました。(I49d00) - TalkBack の
OpenOnPhoneDialogは、アイコンの内容説明ではなく、曲線テキストを読み上げる必要があります。(I4efe8) hasPartiallyRevealedStateが false に設定されている場合にRevealState.currentValueで誤ったアンカーをレポートするSwipeToRevealのバグを修正しました。(I9c7cf)SwipeToRevealの元に戻すボタンがデフォルトでButtonDefaults.Heightになりました。(I1f6c8)- スクリムの描画に Canvas を使用しないようにすることで、
BasicSwipeToDismissBoxのパフォーマンスが改善されました。(I68f2c) - スライダーのユーザー補助のバグを修正しました。更新後に読み上げられる割合が値と一致しないというバグです(I91146)
placeholderShimmer実装のバグを修正しました。(Iee39bScrollProgressの計算を 30% 最適化することで、TransformingLazyColumnのパフォーマンスが向上しました。(I4c4cb)
バージョン 1.5.0-beta01
2025 年 5 月 7 日
androidx.wear.compose:compose-*:1.5.0-beta01 がリリースされました。バージョン 1.5.0-beta01 にはこれらの commit が含まれています。
Wear OS 向け Compose 1.5.0-beta01 では、ライブラリのこのリリースは機能が完成し、API がロックされていることが表明されました(試験運用版としてマークされている場合を除く)。
Wear Compose 1.5.0-beta01 には、Wear Compose Material3 ライブラリが含まれています。このライブラリは、Material 3 Expressive と呼ばれる新しい UI デザイン システムをサポートしています。アプリで新しいビジュアル デザインを採用し、新しいコンポーネントのメリットを享受するために、Material から Material3 へのアップグレードをおすすめします。
MaterialTheme: 更新および拡張されたカラーパターン、タイポグラフィ、シェイプを使用して、デザインに深みと多様性をもたらします。- ダイナミック カラー テーマ設定: ウォッチフェイスの色に合わせてアプリのカラーパターンを自動的に生成します。
- 新しいコンポーネントはデフォルトで大画面サイズに自動的に適応
- シェイプ モーフィング -
IconButton、TextButton、IconToggleButton、TextToggleButtonなどの丸いボタン コンポーネントは、押されたときやチェックされたときにアニメーション化されるバリエーションをサポートします。 EdgeButton- 画面下部に配置するために設計された特別な形状の新しいエッジハグボタン。- スキャフォールディング -
AppScaffoldとScreenScaffoldを導入して、画面の構造をレイアウトし、ScrollIndicatorとTimeTextのアニメーションを調整します。 - ボタン - 柔軟なシングルスロット コンテナと、アイコンとラベル付きのボタン用のマルチスロット バリエーションを備えた、多数のスタジアム型のボタンがサポートされています。切り替えボタンが必要な場合は
CheckboxButtonとSwitchButtonが提供され、RadioButtonは利用可能な選択ボタンです(切り替えボタンと選択ボタンの「分割」バリエーションも提供されます)。 ButtonGroup- タッチするとシェイプ モーフィングする、表現力豊かなボタンのグループを 1 列に実装します。AlertDialogバリエーションは、[OK] ボタンと [キャンセル] ボタン、またはEdgeButtonをサポートします。ConfirmationDialogを使用すると、タイムアウト付きのメッセージを表示できます。成功、失敗、スマートフォンで開くバリエーションの特別なアニメーションをサポートしています。- ピッカー -
TimePickerとDatePickerのバリエーションがサポートされています。また、独自のピッカー画面を構築するための Picker コンポーネントとPickerGroupコンポーネントもサポートされています。 ProgressIndicators- 円形と線形の進行状況インジケーターがサポートされています(CircularProgressIndicatorにはセグメント化されたバリエーションと不定のバリエーションがあります)。- カード -
TitleCardを含むさまざまなカード バリエーションが用意されています。TitleCardでは、タイトル、時間、サブタイトル、コンテンツ スロットを含むカードの特定のレイアウトが提供されます。TitleCardに画像背景を設定して、カード内の情報の意味を強調することもできます。 - ページャ -
HorizontalPagerScaffold、VerticalPagerScaffold、AnimatedPageコンポーネントはHorizontalPageIndicatorアニメーションとVerticalPagerIndicatorアニメーションを調整します。Wear Compose Foundation ライブラリでHorizontalPagerとVerticalPagerがリリースされました。 - プレースホルダ - 仮のコンテンツがない場合に、コンポーネントの上にスケルトン図形を描画します。
- スライダーとステッパー - どちらも、ユーザーが値の範囲から選択できるようにします。スライダーはよりコンパクトで、セグメント化できます。一方、ステッパーは通常
StepperLevelIndicatorと組み合わせて使用される全画面コンポーネントです。 SwipeToReveal- コンポーザブルが右から左にスワイプされたときに、コンポーザブルに追加のアクションを追加するために使用されます。
また、Wear Compose Foundation 1.5.0-beta01 には、次の新しいコンポーネントが含まれています。
TransformingLazyColumn- スケーリングとモーフィング アニメーションをサポートする、遅延読み込みの縦方向スクロール リスト- 階層型フォーカス グループ - アプリケーション内のコンポーザブルにアノテーションを付け、コンポジションのアクティブな部分を追跡してフォーカスを調整するために使用されます。
- ページャー -
HorizontalPagerコンポーネントとVerticalPagerコンポーネント。Compose Foundation コンポーネントをベースに、パフォーマンスの向上と Wear OS ガイドラインの遵守を目的とした Wear 固有の拡張機能が追加されています。
API の変更
- 階層フォーカス API を更新 -
Modifier.hierarchicalFocusをModifier.hierarchicalFocusGroupに変更し、コールバック パラメータを削除しました。FocusRequesterパラメータを含むModifier.hierarchicalFocusRequesterのオーバーロードを削除しました。コンポーネントがアクティブな画面を通知して確認できるように、新しいCompositionLocal、LocalScreenIsActiveを作成しました。(I5ff7c)。 - Wear Compose Material と Wear Compose Material3 の
SwipeToRevealAPI を優先して、Wear Compose Foundation のSwipeToRevealを非推奨としました。API を引き続き使用するには、Wear FoundationSwipeToRevealインポートを Wear Compose Material/ Wear Compose Material3 インポートに置き換えてください。(Ia147d)。 - Wear Compose Material3 の Foundation への
SwipeToReveal依存関係が material3 パッケージに移動しました(RevealValue、RevealDirection、RevealActionType、RevealState、rememberRevealStateなど)。デベロッパーは、これらのクラスと関数のインポートをandroidx.wear.compose.foundationからandroidx.wear.compose.material3に変更する必要があります。(I640e6)。 - Wear Compose Material3
SwipeToRevealAPI を更新しました。具体的には、SwipeToRevealコンポーザブルにprimaryAction、onFullSwipe、secondaryAction、undoPrimaryAction、undoSecondaryAction、hasPartiallyRevealedStateパラメータを追加しました。RevealStateからpositionalThresholdとanimationSpecをカスタマイズする機能を削除しました。RevealStateからlastActionType、revealThreshold、幅を削除しました。RevealStateコンストラクタをアンカーではなくRevealDirectionを受け入れるように変更しました。createRevealAnchors、アンカー、bidirectionalAnchors関数を削除しました。SwipeToRevealScope関数のprimaryAction、secondaryAction、undoPrimaryAction、undoSecondaryActionの名前をPrimaryActionButton、SecondaryActionButton、UndoActionButtonに変更し、コンポーザブル関数にしました。RevealActionTypeを内部としてマークしました。(I885d0)。 SwipeToRevealAPI をさらに更新しました。onFullSwipeをonSwipePrimaryActionに名前変更、SwipeToRevealNonAnchoredSampleをhasPartiallyRevealedStateパラメータの使用を示すように名前変更、actionButtonHeightを削除(デフォルトはボタンのデフォルトの高さで、より大きな高さは修飾子を使用して設定できるため)、SwipeToRevealDefaultsからSmallActionButtonHeightを削除、RevealValueとRevealDirectionコンストラクタの value パラメータを非公開にしました。(I465ce)。
バグの修正
ScreenScaffoldのEdgeButton処理を修正し、TransformingLazyColumnアイテムが削除された後、EdgeButtonがアニメーションで所定の位置に移動するようにしました。(I6d366)。- Compose ライブラリでの Wear Compose の依存関係をバージョン 1.8.0 に更新しました。(I2ef3f)。
- 一時的に後退しないように、不確定の
CircularProgressIndicatorの動きを更新しました。(Ieddb1)。 SwipeDismissableNavHostのバグを修正しました。スワイプして戻った後にフォーカスが正しく切り替わらず、ロータリー入力が失敗する問題を修正しました(これは、予測型「戻る」を使用する API 36 以降が対象です)。(Ieddb1)。- 階層フォーカス API のドキュメントを修正しました(Idf2ff)。
- Button と Card のドキュメントを更新し、
containerPainterとdisabledContainerPainterがcontainerColorとdisabledContainerColorをオーバーライドする方法を記載しました(I4a453)。 - 前のリリースで
BroadcastReceiverをワーカー スレッドに移動するTimeTextの変更を元に戻しました。これは、ナビゲーション中に独自のスレッド処理を管理するアプリで問題を引き起こしたためです。(I34d02)。 - Picker のサンプルを更新し、不要な remember 呼び出しを削除して、代わりに Picker で
rememberUpdatedStateを使用して最新のcontentDescriptionラムダ関数を記憶するようにしました。(Icb5b1)。 TimePickerとDatePickerのテキスト スタイルを更新し、フォントを変更しても切り捨てが発生しないようにしました。(I26194)。ListHeaderとListSubHeaderで、テキストの配置がそれぞれ中央揃えと左揃えにデフォルト設定されるようになりました。(I78339)。- Foundation と Material のスワイプして表示するサンプルとデモを更新し、カスタム アクセシビリティ アクションを発表しました(カスタム アクションは
SwipeToRevealコンポーザブル自体ではなく、コンテンツのセマンティクスとして追加する必要があります)。(Ie92a3)。 EdgeButtonコンテンツに設定されるデフォルトのMaxLinesをサイズに応じて更新しました。XS は 1、S と M は 2、L は 3 になりました。(Ie35f6)。- パフォーマンスを向上させるため、オブザーバーが 1 回だけ登録されるように
LocalReduceMotionを簡素化しました。(Ib1979)。 - パフォーマンスを向上させるため、
ScrollIndicatorの再描画の回数を最小限に抑えました。(Ia7a67)。 TransformingLazyColumnのバグを修正しました。このバグでは、EdgeButton が最大高さに達したときに、リストの最上部の表示アイテムが正しくスケーリングされませんでした。(I30580)。
Wear Compose Material3 バージョン 1.0
バージョン 1.0.0-alpha37
2025 年 4 月 23 日
androidx.wear.compose:compose-material3:1.0.0-alpha37 がリリースされました。バージョン 1.0.0-alpha37 には、これらの commit が含まれています。
API の変更
- 公開 API サーフェスから
scrollTransformを削除しました。同じ機能が必要な場合は、transformedHeight修飾子とgraphicsLayer修飾子を組み合わせて使用します。(Ie181d) ImageButtonコンポーザブルとImageCardコンポーザブルをそれぞれButtonオーバーロードとCard/TitleCardオーバーロードに置き換えました。imageButtonColorsの名前をbuttonWithContainerPainterColorsに、imageCardColorsの名前をcardWithContainerPainterColorsに変更しました。公開ButtonDefaults.scrimBrushとCardDefaults.scrimBrushを追加しました。ボタンimageBackgroundGradientStartColorとimageBackgroundGradientEndColorの名前をscrimGradientStartColorとscrimGradientEndColorに変更しました。CardDefaults.ImageContentPaddingの名前をCardDefaults.CardWithContainerPainterContentPaddingに変更しました(I7b8b6)PickerとPickerGroupが、不要な再コンポーズを回避するためにcontentDescriptionをラムダとして受け取るようになりました。(I002dd)
バグの修正
- 幅と高さが等しくない場合、アニメーション中に不定の
CircularProgressIndicatorが揺れる問題を修正しました。(I76bfe) - 無効なサイズでのエッジボタンのレイアウトに関する問題を修正しました。高さが NaN の場合に、エッジボタンのレイアウトが更新されないようにしました。(I32b93)
OpenOnPhoneDialogの最大スイープ角度を大きくし、デフォルトの「スマートフォンを確認」テキストが最大フォントサイズで切り取られないようにしました。(I90af9)
バージョン 1.0.0-alpha36
2025 年 4 月 9 日
androidx.wear.compose:compose-material3:1.0.0-alpha36 がリリースされました。バージョン 1.0.0-alpha36 にはこれらの commit が含まれています。
API の変更
ButtonDefaults.imageBackgroundButtonColorsをImageButton、ButtonDefaults.imageButtonColors、ButtonDefaults.containerPainter、ButtonDefaults.disabledContainerPainterに置き換えました。カードにも同様の変更が加えられます。ペインターはButtonColorsとCardColorsから削除されます。(I8c6a1)- API を簡素化するためにプレースホルダを更新しました。コンポーネント レベルでシマー効果を適用する
Modifier.placeholderShimmerと、読み込まれていないコンテンツの上にマスクを適用するModifier.placeholderの 2 つの修飾子が提供されるようになりました(Iaee7a)。
バグの修正
ScrollIndicatorにオーバースクロールを統合。(Icfb7f)- material3 ダイアログを起動したときに背景が空白になる、ダイアログが表示されない問題を修正しました。(Ice597)
- テキストが複数行にわたる場合の
FadingExpandingLabelの問題を修正しました。(I04eb7) - ボタンのプライマリ ラベルとセカンダリ ラベルの間のパディングを更新しました。(I99b7b)
ArcLargeを20spから18spに引き下げ、ArcLargeとArcSmallの文字間隔を更新しました。ConfirmationDialog/OpenOnPhoneDialogは、18spにオーバーライドするのではなく、デフォルトのArcLargeを使用するようになりました。(Id39a8)
依存関係の更新
- このライブラリは Kotlin 2.0 言語レベルをターゲットとするようになり、KGP 2.0.0 以降を必要とします。(Idb6b5)
バージョン 1.0.0-alpha35
2025 年 3 月 26 日
androidx.wear.compose:compose-material3:1.0.0-alpha35 がリリースされました。バージョン 1.0.0-alpha35 にはこれらの commit が含まれています。
API の変更
- アイコンが指定されている場合、
AlertDialogの上部パディングがデフォルトで縮小されるようになりました。これにより、利用可能な画面サイズを最大限に活用できます。(Ief06c) PagerScaffoldDefaults.FadeOutAnimationの名前をPagerScaffoldDefaults.FadeOutAnimationSpecに変更しました。AnimatedPageのページ パラメータの名前がpageIndexに変更されました。(I701f2)TransformingLazyColumnのSurfaceTransformation-applyTransformationの分割をapplyContainerTransformationとapplyContentTransformationに更新し、createBackgroundPainterの名前をcreateContainerPainterに変更しました。TransformationSpecとResponsiveTransformationSpecの命名をさらに更新しました。(I1c534)AppScaffold backgroundColorの名前がcontainerColorに変更されました。(I4e63f)
バグの修正
FadingExpandingLabelでテキストが常に正しく展開されない問題を修正しました。(I0e773)ArcLargeが 20sp から 18sp に縮小され、ArcLargeとArcSmallの文字間隔が更新されました。ConfirmationDialog/OpenOnPhoneDialogは、18sp にオーバーライドするのではなく、デフォルトのArcLargeを使用するようになりました。(Id39a8)DatePickerとTimePickerに基づく見出しのアニメーションを更新し、フェードアウトとフェードインのアニメーションが 1 つのスプリング アニメーションとして機能するようにしました。(I68963)AnimatedPageコンポーザブルでcurrentPageOffsetFractionの読み取りを回避することで、PagerScaffoldを最適化しました。(I433ef)- すべてのタイプスケールが、デフォルトで比例数字になるように更新されました。これは、比例数字が最も一般的なユースケースであると見なされているためです。表形式をデフォルトにすると、特定の数字のペアの間にスペースが入りすぎてしまうためです。
TimePickerとDatePickerは、表形式の数字にFontFeatureSetting=tnumを引き続き適用します。(I88929) TimePickerとDatePickerの RSB の初期入力フォーカスを修正しました。(I1c773)OpenOnPhoneDialogのデフォルトのテキストを「スマートフォンを確認してください」に更新しました。(I00a3f)- 重み 600 が太字として扱われる問題(I2a51d)を回避するため、
ArcLargeとArcMediumの重みを 600 から 599 に更新 - コンテンツとアクション ボタンの間の
SwipeToRevealパディングと、アクション ボタンのアイコンとテキストの間のパディングを更新しました。(Ic46cb)
バージョン 1.0.0-alpha34
2025 年 3 月 12 日
androidx.wear.compose:compose-material3:1.0.0-alpha34 がリリースされました。バージョン 1.0.0-alpha34 にはこれらの commit が含まれています。
API の変更
PagerScaffoldはPagerコンポーネントを生成しなくなりました。代わりに、contentコンポーザブルを介して提供する必要があります。AnimatedPageとsnapWithSpringFlingBehaviourが公開され、Wear FoundationPagerとともに使用して、以前の M3PagerScaffoldの動作を実現できるようになりました。(更新済みのサンプルをご覧ください)。(Ia4724)PagerStateを更新し、ベースクラスとして Compose FoundationPagerStateを削除して、currentPage、currentPageOffsetFraction、pageCountプロパティを追加しました。GestureInclusionインターフェースを更新し、メソッドの名前をignoreGestureStartに変更しました。(I4ae07)LevelIndicatorスイープ角度パラメータにFloatRange(0, 360)のアノテーションが追加されました(I7e636)CurvedModifier.clearAndSetSemanticsを追加して、曲線のセマンティクスをオフにする手段を提供しました。CurvedTextは引き続きコンテンツの説明をテキストにデフォルト設定しますが、timeTextCurvedTextとtimeTextSeparatorはコンテンツをアナウンスしなくなりました。(I4b568)AppScaffoldに背景色とデフォルトのコンテンツ色のパラメータを追加しました。(I56652)HorizontalPagerのスワイプ ジェスチャーのデフォルトの処理の名前がPagerDefaults.gestureInclusionに変更されました。デフォルトの動作は、最初のページの左端から始まるスワイプ操作のみを無視し、Talkback がオフの場合のみ無視するようになりました。それ以外の場合、デフォルトの動作では、スワイプ操作はページャによって無視されないため、スワイプして閉じるハンドラで使用できません。(Iee486)- ボタン、カード、リストのヘッダー コンポーネントに
SurfaceTransformationパラメータを追加しました。これにより、TransformingLazyColumnなど、アイテムの外観を位置に基づいて変更するコンテナで使用される場合に、異なる背景とコンテンツの変換を適用できます。(Iabe3f) - Wear Compose Material3 API の「public const val」プロパティを「public val」に更新し、値がインライン化されないようにしました。(Ib0f32)
SwipeToRevealにエッジスワイプ ゾーンのサポートを追加しました。FoundationSwipeToRevealのデフォルトの動作が、ジェスチャーがエッジから開始された場合にスワイプを禁止するようになりました。Material3SwipeToReveal’のデフォルトの動作は、SwipeDirectionが単一方向に設定されている場合、ジェスチャーがエッジから開始されたときにスワイプを許可しないようになりました。(I32ef0)FadingExpandingLabelコンポーザブルを追加しました。これにより、テキストをアニメーションで 1 行ずつフェードインできます。(Ic60fa)TransformingLazyColumnで、最初と最後のアイテムを中央に配置する代わりに、デフォルトで空のcontentPaddingが使用されるようになりました。(I77ab7)- Wear Compose Material3 ライブラリから
SwipeToRevealのrememberRevealStateを削除しました。(I8c0e0)
バグの修正
- Wear Compose ライブラリが Kotlin 2.0 コンパイラに更新されました。(I2de79)
- Material3 から、丸くない
ScrollIndicatorとPageIndicatorのサポートが削除されました。また、正方形の画面のサポートも Wear OS の要件ではなくなりました。詳しくは、スタートガイドをご覧ください。(I9a852) ConfirmationDialogDefaultsとOpenOnPhoneDialogDefaultsで使用されるCurvedTextStyleが、サイズ18spと文字間隔1.8spのArcLargeタイポグラフィを使用するように更新されました。(Ic9ced)Card、ListHeader、RadioButton、CheckboxButton、SwitchButtonは、デフォルトでコンテンツの高さを制約しなくなりました。必要に応じて、Modifier.height(IntrinsicSize.Min)を使用して以前の動作を復元します。(I80bb8)- デフォルトの
TimeTextとScrollIndicatorの色を更新して、グレーのトーンを増やしました。OnBackground(白)を直接使用すると、タイトルなど画面上の他のコンテンツと競合するときに、視覚的な重みが大きすぎるためです。(I8b36f) - スキャフォールド コンポーネントの
TimeTextとScrollIndicatorのアニメーションのタイムアウトを 2 秒に短縮しました。(I52021) - ダイアログの背景のスケールがスワイプして閉じる動作と同期するように、ダイアログのモーションを更新しました。(I925a9)
edgeSwipeToDismiss修飾子を使用した M3SwipeToRevealのデモを追加しました。(I02b07)- TalkBack の
DatePickerとTimePickerに見出しを追加し、日付と時刻を設定するにはスクロールする必要があることをユーザーに知らせるようにしました。(Id738d) AnimatedTextが動作を軽減の設定に従うようになりました。(Ib6578)- ダイアログ コンテンツの表示に
AppScaffoldを使用する最適化が改善され、複数のダイアログを重ねて表示できるようになりました(I1209c)
バージョン 1.0.0-alpha33
2025 年 2 月 26 日
androidx.wear.compose:compose-material3:1.0.0-alpha33 がリリースされました。バージョン 1.0.0-alpha33 には、これらの commit が含まれています。
API の変更
SwipeToRevealScopeのprimaryActionとsecondaryActionからラベル パラメータを削除しました。カスタム アクションのセマンティクスは、デベロッパーがSwipeToRevealコンポーネントのコンテンツに直接追加する必要があります。(Ia67f3)IconToggleButtonDefaultsとTextToggleButtonDefaultsのサイズ、テキスト スタイル、色関数から「Button」接頭辞を削除しました(I5471d)- 試験運用版の
LocalMinimumInteractiveComponentEnforcementを削除しました(I4ad8a) PickerGroupScopeDSL をコンポーザブルに置き換えました。そのため、PickerGroupScopeからpickerGroupItemメソッドを削除し、代わりにPickerGroupに Picker を追加するために使用する@Composable PickerGroupItemを追加しました。また、PickerGroup「content」パラメータの型を@Composable PickerGroupScope.() -> Unitに更新しました。(Ic6aec)- 分数値を対象とした
LevelIndicatorオーバーロードを追加し、範囲パラメータを含むオーバーロード(Stepper コンポーネントでの使用に適しています)に Stepper 接頭辞を追加しました。(If4234) TransformingLazyColumnのTransformationSpecを API に追加しました。これにより、TLC をスクロールするときにアイテムに発生する正確な変換を定義できます。(I21856)- compose/material3 クラスと一貫性を持たせるため、
IconButtonShapes、IconToggleButtonShapes、TextButtonShapes、TextToggleButtonShapesを更新しました。(I5a081) ScalingLazyColumn、TransformingLazyColumn、ScreenScaffoldにoverscrollEffectパラメータを追加しました。(I0cee8)rememberRevealStateのswipeDirectionパラメータの名前をrevealDirectionに変更しました。(I7472f)- Wear Pager は、Compose の
PagerScopeを使用するのではなく、独自のPagerScopeを持つようになりました。(I9195b) LinearProgressIndicatorContentコンポーザブルを削除しました。値を変更するとデフォルトでアニメーション化されるように、LinearProgressIndicatorを直接使用してください。(I2c4ad)CircularProgressIndicatorStaticコンポーザブルを削除し、同じ機能を持つ公開DrawScope関数drawCircularProgressIndicatorを追加しました。変更がデフォルトでアニメーション化されるようにCircularProgressIndicatorを直接使用してください。カスタム アニメーションが必要な場合は、drawCircularProgressIndicatorから独自のコンポーザブルをビルドしてください。(Ie762f)DrawScope.drawCircularProgressIndicatorのパラメータの順序を変更して、targetProgressパラメータを上に移動しました。(I8ab92)OpenOnPhoneDialogAPI が更新され、明確性が向上し、他のダイアログとの一貫性が高まりました。showパラメータの名前がvisibleに変更され、curvedTextはデフォルト値を持つのではなく、呼び出し元から提供されるようになりました。(Idec2d)openOnPhoneCurvedTextの名前をopenOnPhoneDialogCurvedTextに変更しました(I65bdd)ScrollIndicatorにカスタム色を指定するためのScrollIndicatorColorsを追加しました。(I9eb8c)TimeTextの背後に描画される背景の色を設定できるようにします。(I9f5d9)ArcLarge、ArcMedium、ArcSmallのタイポグラフィをCurvedTextStyleに更新しました(Iffc41)ScreenScaffoldDefaults.contentPaddingWithEdgeButtonを削除しました。(Ia923e)- 優先度の高いエラーや緊急アクション(安全性アラート、失敗したダイアログ オーバーレイ、停止ボタンなど)のために、
ColorSchemeにerrorDimを追加しました。(I70998)
バグの修正
wear.compose.material3をandroidx.core.coreのバージョン 1.15.0 に固定しました(I132e9)AppScaffoldを使用してダイアログを他の画面コンテンツの上に重ねることで、ダイアログのパフォーマンスを改善しました(I1b9a4)EdgeButtonの内部の垂直方向のパディングを削減しました。(I1a5bb)- スライダー ボタンにボタン セマンティクスを追加しました。(I80cc6)
バージョン 1.0.0-alpha32
2025 年 1 月 29 日
androidx.wear.compose:compose-material3:1.0.0-alpha32 がリリースされました。バージョン 1.0.0-alpha32 には、これらの commit が含まれています。
API の変更
CurvedTextStyleでは、文字間隔を時計回りの文字間隔と反時計回りの文字間隔に分割しました。これは、時計回りの文字はベースラインから広がるのに対し、反時計回りの文字は内側に広がるため(文字間隔を大きくする必要があるため)必要です(I4b848)。- Material3 ライブラリ全体で一貫性を高めるため、
IconButtonShapes、IconToggleButtonShapes、TextButtonShapes、TextToggleButtonShapesを更新しました。また、この変更により、割り当て数を減らすための形状キャッシュが導入されます。(I049fc) IconToggleButtonとTextToggleButtonのvariantAnimatedShapeメソッドからpressedShapeCornerSizeFractionパラメータを削除しました(I58a65)- 丸くない画面と互換性のない、曲線テキストのレンダリング(
TimeTextを含む)の改善を導入します。丸型以外の画面のサポートも Wear OS の要件ではなくなりました。詳しくは、スタートガイドをご覧ください。(I1cc1c) ButtonGroupのButtonGroupScopeを更新し、DSL ベースのButtonGroupItemをModifier.weight、Modifier.minWidth、Modifier.enlargeOnPressに置き換えました。(I16c3c)ButtonGroupAPI で、新しい修飾子ベースのButtonGroupScopeを更新しました。enlargeOnPressはanimateWidthと呼ばれるようになり、変更する必要がないためMutableInteractionSourceではなくInteractionSourceを受け取るようになりました。また、ButtonGroup内のボタンのデフォルトの最小幅である公開定数ButtonGroupDefaults.DefaultMinWidthも追加しました。(Ie27ec)ListHeaderDefaults.contentColorはコンポーザブル プロパティであるため、小文字で始まるように更新しました(I125a5)SliderDefaults.DecreaseIconとSliderDefaults.IncreaseIconにコンテンツ説明パラメータを追加し、適切なデフォルト値を設定しました(I2e1a7)PickerとPickerGroupのspacingパラメータの名前をverticalSpacingに変更しました(Ib75cc)ConfirmationDialogの呼び出し元がより多くのコンテキストを含む文字列を提供することが想定されるため、ConfirmationDialogDefaults.successTextとfailureTextを削除しました。また、confirmationCurvedTextの名前をconfirmationDialogCurvedTextに変更しました。最後に、ダイアログのshowパラメータの名前を visible に変更し、ダイアログに対する最近の他の更新との整合性を保ちました。(I10074)IconButtonの名前をdisabledImageOpacityからDisabledImageOpacityに変更しました。(I5f94a)
バグの修正
EdgeButtonアニメーションのバグを修正し、各フレームで正しいサイズが使用されるようにしました(Id3b58)animateContentSizeがButtonで機能しない問題を修正しました。(Ib18a0)- Title Large のタイプスケールをフォントサイズ
18dpに変更しました(Ic9d52) AlertDialogのスペーシングとアイコンサイズを更新しました(Iac28c)- 大画面のブレークポイントの不整合を修正しました(画面幅 225 dp 以上の画面が大画面になります)(I36474)
- ボタンの位置に関する軽微なバグを修正しました(I952c2)
バージョン 1.0.0-alpha31
2025 年 1 月 15 日
androidx.wear.compose:compose-material3:1.0.0-alpha31 がリリースされました。バージョン 1.0.0-alpha31 には、これらの commit が含まれています。
API の変更
- すべての Wear Compose ライブラリを「明示的 API」モードに更新しました。(Iebf9f)
ScreenScaffoldAPI とEdgeButtonAPI を更新し、EdgeButtonを含む画面でコンテンツのパディングを簡単に指定できるようにしました。新しい API では、EdgeButtonのsizeはEdgeButtonにのみ渡され、ScreenScaffoldはEdgeButtonとリスト コンテンツの間のスペースのedgeButtonSpacingパラメータを受け取ります。(I424fd)DatePickerで、パラメータminDateの名前をmaxDateに変更し、minValidDateの名前をmaxValidDateに変更しました。DatePickerColorsで、パラメータselectedPickerContentColorの名前をactivePickerContentColorに、unselectedPickerContentColorの名前をinactivePickerContentColorに変更しました(Iba17b)ArcProgressIndicatorのデフォルトをstrokeWidth=6dpに更新し、画面の高さのdiameter = 81.24%を推奨しました(I6f248)- ダイアログとしての使用を反映するため、Confirmation API を更新しました。このコンポーザブルの名前が
ConfirmationDialogに変更され、関連する色とデフォルトのクラスの名前も更新されました。また、他の Compose アニメーション API との互換性を確保するため、showパラメータの名前をvisibleに変更しました。また、デベロッパーがイントロ/アウトロ ダイアログのアニメーションをカスタマイズする必要がある場合に備えて、ConfirmationDialogContent、SuccessConfirmationDialogContent、FailureConfirmationDialogContentを利用できるようにしました。(Iaeb33) CircularProgressIndicatorContentをCircularProgressIndicatorStatic(CircularProgressIndicatorのアニメーションなしのバリエーション)に更新しました。これにより、カスタム アニメーションを使用してCircularProgressIndicatorを構築できるようになりました。(I1346f)ArcProgressIndicatorのパラメータの順序を修正し、修飾子パラメータを最初に配置しました(I4656a)- アクションのラベル(セカンダリ アクションを除く)のテキスト スロット パラメータを受け取り、元に戻すアクションからラベル パラメータを削除するように
SwipeToRevealAPI を改善しました(I5b3db)
バグの修正
Button、Card、IconButton、TextButtonでLongPressの触覚フィードバックが複数回トリガーされるバグを修正しました(Ia8b0f)AlertDialogの UX の変更 - 大画面では、確認ボタンと閉じるボタンが小さくなりました。また、確認ボタンと閉じるボタンの下のスペースも広くなっています。(I4f066)SwipeToRevealコンポーネントのアクション ボタン ラベルのアニメーション仕様を変更しました。(Ib87fb)- テキストの表示と同時にコンテナが展開されるように
SwipeToRevealを変更しました。(I44cf8) - スワイプがメイン アクションが確定されるしきい値を超えたときに触覚フィードバックを実行するように
SwipeToRevealを改善しました。(I23efe) SwipeToRevealを更新し、メイン アクションと元に戻すアクションでテキストがオーバーフローした場合に、デフォルトで省略記号が表示されるようにしました。(I71f5a)ButtonGroupアニメーションでジッターが発生する問題を修正しました。(I63f8f)AnimatedTextにテキスト セマンティクスを追加しました(I6063c)- ダイアログがコンポジションから削除されると、ダイアログの背景スケーリングがリセットされるようになりました(この修正がない場合、起動画面が縮小された状態のままになる可能性がありました)(Id24ac)
- Stepper コンポーネントのボタンにシェイプ モーフ アニメーションを追加しました。(Id6ed3)
バージョン 1.0.0-alpha30
2024 年 12 月 11 日
androidx.wear.compose:compose-material3:1.0.0-alpha30 がリリースされました。バージョン 1.0.0-alpha30 には、これらの commit が含まれています。
API の変更
TransformingLazyColumnのscrollTransform修飾子がリファクタリングされ、API の変更がトリガーされました。(I0c6dc)IconToggleButtonShapesとTextToggleButtonShapesを更新し、2 つの異なる形状パラメータuncheckedPressedとcheckedPressedを持つようにしました(I85dbd)minDateまたはmaxDateを使用する場合、無効な月/日のオプションがDatePickerに表示されるようになりました。また、新しいinvalidPickerContentColorも表示されます。(If4541)StepperAPI を更新し、increaseIconスロットとdecreaseIconスロットを提供しました。これらのコンテンツは、Icon コンポーザブルから通常どおりに構築できます。(Id35da)- 省略可能な
defaultColorSchemeパラメータを削除し、null 許容のColorSchemeを返すようにdynamicColorSchemeを更新しました。つまり、呼び出し元は、ダイナミック カラースキームが提供されない場合のフォールバック ケースを明示的に処理する必要があります。(I6d62e) CompactButtonで使用するために、ButtonDefaultsのアイコンサイズを更新しました。アイコンのみを含むCompactButtonはButtonDefaults.SmallIconSize = 24.dpを使用し、アイコンとテキストの両方を含むCompactButtonはButtonDefaults.ExtraSmallIconSize = 20.dpを使用する必要があります。CompactButtonはコンテンツをラップすることをおすすめします(最大幅を埋めるのではなく)。サンプルが更新され、そのことが示されています。(I0582c)- 4 種類の
EdgeButtonSizesに推奨アイコン サイズのEdgeButtonDefaultsを追加しました。また、EdgeButtonレイアウトを更新し、上部のパディングよりも下部のパディングを少し大きくすることで、アイコンとテキストの両方のコンテンツの外観を改善しました。(Id772a) LinearProgressIndicatorにモーションを追加し、アニメーションなしで視覚コンテンツを提供するLinearProgressIndicatorContentを公開しました。(Idee99)- アニメーションなしで
CircularProgressIndicatorのビジュアル コンテンツを表示する新しいCircularProgressIndicatorContentコンポーザブルを追加しました。(Ie33d4) TransformingLazyColumnは、LocalTransformingLazyColumnItemScopeというコンポジション ローカルを新たに提供します。Card、Button、ListHeaderは、TransformingLazyColumn内に配置されたときに自動的にモーフィングを行うために、このコンポジション ローカルを使用するようになりました。呼び出し元は、新しいTransformExclusionラッパーを使用して自動モーフィングを無効にできます。(I1652f)ButtonDefaults.shapeの型をRoundedCornerShapeに更新しました(Iccdf2)
バグの修正
TimeTextの背景の既存のアルファを尊重するバグを修正しました(I1eb60)- スケーリング オペレーション中に文字グリフがピクセル境界にスナップされることによるテキストのジッターを回避するため、タイポグラフィではデフォルトで
TextMotionをAnimatedに設定しています。(I626fa) - 視認性を高めるため、
ScrollIndicatorの幅と間隔を大きくして外観を更新しました。(Ied7cb) - アイテムの追加、削除、移動時に
Modifier.scrollTransformで発生するバグを修正しました。(I6830f) - 短いタップでの丸いボタンのアニメーションに関する問題を修正しました(以前は、アニメーションの最小時間が常に守られていませんでした)。(I757a7)
LevelIndicatorのスイープ角度を 20%(72 度)に更新しました。(Idde5c)ScalingLazyColumnをAutoCenteringParamsとともに使用した場合のScrollIndicatorの位置を修正しました。(I387dd)ListHeaderとListSubHeaderの色とタイポグラフィを更新しました。また、CheckboxButtonとSwitchButtonの切り替えコントロールの色も変更されます。(I39817)ContentPaddingを使用して、LazyColumnとScalingLazyColumnのScrollIndicatorの位置を修正しました。(I2bc51)- 新しい
CircularProgressIndicatorContentを使用して、OpenOnPhoneDialogの進行状況アニメーションで発生するバグを修正しました。(I3e443) - モーション軽減が有効になっている場合にアニメーションを無効にするよう、
HorizontalPagerScaffoldとVerticalPagerScaffoldを更新しました(Iaaf68) - 進行状況が 100% を超えた場合に、円形の進行状況インジケーターに別のアニメーションを実装しました。(I47135)
- Pager コンポーネントで
EdgeButtonが誤った形状で描画されることがあるバグを修正しました(I91db9)
バージョン 1.0.0-alpha29
2024 年 11 月 13 日
androidx.wear.compose:compose-material3:1.0.0-alpha29 がリリースされました。バージョン 1.0.0-alpha29 には、これらの commit が含まれています。
API の変更
TimeTextを更新し、時刻を表示するデフォルトのコンテンツを提供しました。(Id23b3)- 不要になった
orientationパラメータを削除して、PagerStateのScrollInfoProviderを簡素化しました。新しい動作では、水平方向と垂直方向のページングの両方でTimeTextがその場に留まります。(I71767) LocalHapticFeedbackは、バイブレーター API がハプティクスをサポートしていることを示す場合、デフォルトのHapticFeedback実装を提供するようになりました。HapticFeedbackTypeにConfirm、ContextClick、GestureEnd、GestureThresholdActivate、Reject、SegmentFrequentTick、SegmentTick、ToggleOn、ToggleOff、VirtualKeyが追加されました。Button、IconButton、TextButton、Cardなどの Wear Compose の長押し可能なコンポーネントで、長押しハンドラが指定されている場合にLONG_PRESSハプティクスが実行されるようになりました。(I5083d)
バグの修正
- 確認のモーションを更新しました。(I04bff)
- Compose ライブラリの最小 API 依存関係を 1.7.4 に更新しました。(I88b46)
OpenOnPhoneダイアログに新しいモーションが追加されました。(I1e10a)LevelIndicatorのバグを修正しました。これにより、レベルがゼロの場合に正しく表示されるようになりました。(Ie95a4)HorizontalPageIndicatorアニメーションとVerticalPageIndicatorアニメーションを更新しました。(I5c8f3)- 不定の
ArcProgressIndicatorに縮小してドットになるアニメーションを追加しました。(I9fd51)
バージョン 1.0.0-alpha28
2024 年 10 月 30 日
androidx.wear.compose:compose-material3:1.0.0-alpha28 がリリースされました。バージョン 1.0.0-alpha28 には、これらの commit が含まれています。
API の変更
- 不確定形式の円形進行状況インジケーター(I2efc1)に弧のバリエーションを追加しました。
AlertDialogAPI を構成するAlertDialogContentとDialogのコンポーザブルを公開しました。これにより、必要に応じてカスタマイズを追加できます(推奨されるコンテンツ レイアウトを維持しながらAlertDialogアニメーションをカスタマイズするなど)。また、AlertDialogDefaultsのEdgeButton、ConfirmButton、DismissButtonメンバーにModifierパラメータとColorパラメータを追加しました。(I4eb71)PlaceholderAPI を更新しました。具体的には、PlaceholderState.startPlaceholderAnimationをPlaceholderState.animatePlaceholderに、PlaceholderState.isShowContentをPlaceholderState.isHiddenに、PlaceholderDefaults.shapeをPlaceholderDefaults.Shapeに名前変更しました。また、painterWithPlaceholderOverlayBackgroundBrushのpainterパラメータをoriginalPainterに名前変更しました。さらに、PlaceholderState.placeholderProgressionの公開設定を内部に変更し、placeholderShimmerProgressionに名前変更しました。最後に、PlaceholderDefaultsにプレースホルダ アニメーションの期間定数を追加しました。(Ie5a59)EdgeButtonAPI を更新しました。具体的には、ScreenScaffoldのパラメータの名前をbottomButtonからedgeButtonに変更し、EdgeButtonSizeを値クラスにしました。(Ieef15)- wear material3 の Colors クラス(I0287f)で
copy()の公開設定を public に変更しました
バグの修正
- クリック時の
IconToggleButtonとTextToggleButtonの最小アニメーション時間を追加しました(Ieb333) IconButtonとTextButtonのシェイプ アニメーションに最小時間を追加しました(Iebcee)DatePickerの繰り返しオプションの状態を修正しました。(I3587c)- アラート ダイアログと確認ダイアログにモーションを追加しました。(I173b1)
バージョン 1.0.0-alpha27
2024 年 10 月 16 日
androidx.wear.compose:compose-material3:1.0.0-alpha27 がリリースされました。バージョン 1.0.0-alpha27 には、これらの commit が含まれています。
API の変更
- Wear Compose Foundation の
LazyColumnの名前がTransformingLazyColumnに変更されたことに伴い、ScreenScaffoldとScrollIndicatorを更新しました。(I0608b) EdgeButtonのpreferredHeightパラメータの名前がbuttonSizeに変更され、その値は新たに導入されたEdgeButtonSize値クラスの 4 つの定数からのみ選択できるようになりました。(Icdd70)ListSubheaderの名前をListSubHeaderに変更し、ListHeaderとListSubHeaderの公開アクセス可能なデフォルト値を追加しました。(I96730)- Wear 向けに新しい
HorizontalPagerScaffoldコンポーネントとVerticalPagerScaffoldコンポーネントを追加しました。これにより、時刻テキストとページ インジケーター コンポーネント間の新しいアニメーションと連携が提供されます。(Iff7d0) HorizontalPagerScaffoldとVerticalPagerScaffoldにロータリー サポートを追加しました。これにより、ユーザーはロータリー入力デバイスを使用してページャーを操作できます。(I9770d)MotionSchemeAPI を変更し、使いやすさと一貫性を向上させました。インラインの remember 関数を削除し、組み込みのモーション スキームを専用の MotionScheme コンパニオン オブジェクトに移動しました。standardMotionSchemeとexpressiveMotionSchemeの名前を標準と表現力に変更しました。(I5fd45)- システムカラーに基づく動的カラーパターンをサポートしました。(I073e9)
- 最新の UX 仕様に合わせて Stepper を更新しました。(I622bb)
バグの修正
- カード コンポーネントのタイポグラフィとパディングを更新しました。(I3ae48)
- UX 仕様(Ie55f0)に沿って、
AlertDialogの [Confirm] / [Dismiss] ボタンと残りのコンテンツの間のパディングを 8 dp から 12 dp に変更しました。 - スライダー コンポーネントの色の不透明度を更新しました。(Idb383)
バージョン 1.0.0-alpha26
2024 年 10 月 2 日
androidx.wear.compose:compose-material3:1.0.0-alpha26 がリリースされました。バージョン 1.0.0-alpha26 にはこれらの commit が含まれています。
API の変更
HorizontalPageIndicatorの API と外観を更新し、VerticalPagerで使用するVerticalPageIndicatorを追加しました。(Ic9309)AlertDialogは、EdgeButton が不要なカスタム レイアウトで、ボタン スタック バリエーションからデフォルトの最下部のボタンを省略する機能をサポートするようになりました。(I34fa9)- Wear Material 3 に
SwipeToRevealコンポーネントを追加しました(Ic38b2) - 現在の画面でスワイプして閉じる機能がサポートされていないまれなケースに対応するため、
SwipeToRevealで双方向スワイプのサポートを追加しました。デフォルトでは、右から左へのスワイプでのみスワイプして表示されます。スワイプして閉じる操作との競合を避けるため、デフォルトの動作を尊重することを強く推奨します。(Ifac04) EdgeButtonのbuttonHeightパラメータの名前をpreferredHeightに変更しました。(I4fab3)- Kotlin のバージョンが 1.9(I1a14c)に更新されました
Iconとの競合を避けるため、OpenOnPhoneDialogDefaults.Iconの名前をOpenOnPhoneDialogDefaults.OpenOnPhoneIconに変更しました(I0f391)LazyColumnでScrollIndicatorのサポートを追加しました。(Ia546a)TextToggleButtonとIconToggleButtonのデフォルト値を更新しました。(I7aaa9)PickerAPI とPickerGroupAPI を簡素化しました。(Id0653)CardDefaults.ShapeとCardDefaults.Heightを追加しました。これらは(トークンであるため)ライブラリを使用するデベロッパーに対して非公開でした。(I1594a、b/347649765)- バイナリ セグメント化された円形の進行状況インジケーターの進行状況パラメータの名前を
segmentValueに変更しました。(Ib72d9) - スライダーの色とレイアウトを更新しました。(Ic3eec)
バグの修正
openOnPhoneアイコンのアニメーションを更新しました(I66f85)Slider、TimePicker、DatePickerで Google Symbols アイコンを使用するようになりました。(I46c7c)ConfirmationとOpenOnPhoneDialogのパディングを更新しました。(Iaa82e)
バージョン 1.0.0-alpha25
2024 年 9 月 18 日
androidx.wear.compose:compose-material3:1.0.0-alpha25 がリリースされました。バージョン 1.0.0-alpha25 には、これらの commit が含まれています。
API の変更
- 不確定の円形進行状況インジケーターを追加しました。(I427a7)
CircularProgressIndicatorとSegmentedCircularProgressIndicatorの両方で、進行状況のオーバーフロー(進行状況が 100% を超える)のサポートを追加しました。進行状況が 1.0 を超えると、新しいoverflowTrackの色で示されます。(Iaaa3d)- 丸い
IconToggleButtonとTextToggleButtonで、新しい形状アニメーションのバリエーションがサポートされるようになりました。このバリエーションでは、チェック済み、未チェック、押下状態が異なる形状で表されます。直前に押された状態の以前のアニメーション形状のバリエーションは引き続きサポートされます。(I29f03) ScreenScaffoldでEdgeButtonの高さを明示的に指定する必要があるため、ColumnでEdgeButtonを使用するサポートを削除しました。(Ie353d)ScreenScaffoldで Wear ComposeLazyColumnのサポートを追加しました(また、LazyColumnState用のScrollInfoProviderの実装も追加しました)。(Ib8d29)LocalTextMaxLines、LocalTextAlign、LocalTextOverflowを 1 つのLocalTextConfigurationコンポジション ローカルに統合し、今後よりスケーラブルなソリューションを提供できるようにしました。(I5edbc)- arc-large を追加のタイプスケールとして追加しました。これは、確認オーバーレイのように、画面の最上部または最下部にある短いヘッダー テキスト文字列用に予約されています。(I60e3e)
- ボタンにデフォルトを追加し、推奨される大サイズと特大サイズのアイコンとコンテンツのパディングを設定しました。(I84675)
バグの修正
IconButtonとTextButtonの色を更新しました。(I48324)- 他のオーバーロードとの整合性を保つため、基本の Button オーバーロードを垂直方向に中央揃えに変更しました。以前の動作を復元するには、
RowScopeのModifier.alignを使用します。(I66e57)
バージョン 1.0.0-alpha24
2024 年 9 月 4 日
androidx.wear.compose:compose-material3:1.0.0-alpha24 がリリースされました。バージョン 1.0.0-alpha24 には、これらの commit が含まれています。
API の変更
- Material3 テーマにモーション スキームを追加しました。これは、ライブラリのコンポーネント全体で、表現力豊かなモーションのためのスプリングなどのアニメーション仕様を適用するために使用されます。(I54ff3)
- Material3 ライブラリに
AppScaffoldコンポーネントとScreenScaffoldコンポーネントを追加しました。これらには、TimeTextとScrollIndicatorのレイヤリングとトランジションを調整する機能が含まれています。AppScaffoldは、すべての画面の上に配置される最上位のスキャフォールディング コンポーネントを提供します。そのため、TimeTextをAppScaffoldに追加すると、画面をスワイプしてもその位置に留まります。画面自体で時間テキストをオーバーライドまたは非表示にできます。ScreenScaffoldはScrollIndicatorのスロットを提供し、スクロール時にスクロール インジケーターを自動的にアニメーション表示します。これには、操作がない場合にスクロール インジケーターを非表示にするタイムアウトも含まれます。(I047d6) - 新しい Material3 デザインを特徴とする
ScrollIndicatorを追加しました。遅延コンテンツがリストに読み込まれたときにサイズの変動を避けるため、初期リストのコンテンツに基づいてサムネイルのサイズが固定されています。(Ic228d) ScrollAwayAPI を変更し、ScreenStageが列挙型クラスではなく値クラスになるようにしました。これにより、必要に応じて追加のステージを追加できるようになります。(I48c93)- 画面下部の曲率に沿った形状の Wear 専用の独特なボタンである
EdgeButtonを追加しました(I16369) ScreenScaffoldに、下部のボタン(EdgeButtonなど)用の新しいスロットを追加しました。このボタンは、スクロールするコンテンツに応じて表示され、サイズが変更されます(I032eb)Modifier.scrollTransformとModifier.targetMorphingHeightを追加して、LazyColumnのアイテムに Material3 モーション効果を追加しました。(Ie229a)SegmentedCircularProgressIndicatorをCircularProgressIndicatorのバリエーションとして追加しました。分割されたバリエーションでは、すべてのセグメントで 1 つの進行状況の値が表示されるか、各セグメントがオン/オフとして表示されます。(I6e059)- 既存の
CircularProgressIndicatorの代替としてLinearProgressIndicatorを追加しました。(I89182) AlertDialogを追加しました。これにより、ユーザーに重要なプロンプトを表示するためのレイアウトが提供されます。バリエーションには、確認ボタンと閉じるボタンのペア、またはオプションのスタックの下にある 1 つの下部ボタン(通常は EdgeButton)が含まれます。どちらのバリエーションにも、アイコン、タイトル、追加テキストの各スロットがあり、詳細情報を表示できます。(Ieb873)OpenOnPhoneDialogを追加しました。これは、ユーザーのスマートフォンで続行されるアクションを示すために使用する必要があります。OpenOnPhoneDialogは、指定したタイムアウト後に閉じられます。(I978fd)- アイコンと曲線または直線のテキスト用のスロットがあるダイアログ コンポーネント
Confirmationを追加しました。成功メッセージと失敗メッセージには、それぞれ固有のバリエーションが用意されています。確認はタイムアウト後に自動的に閉じられます。(Ib43e8) - 基盤となるコンテンツと
TimeTextが重なって時刻が隠れてしまう問題を軽減するため、TimeTextに背景を追加しました。(Ia11fd) - 音量などの設定の値を表示する
LevelIndicatorを追加しました。これは既存のStepperコンポーネントと組み合わせて音量画面を構築できます。LevelIndicatorはScrollIndicatorと似ていますが、画面の反対側に表示され、ストローク幅が広く、デフォルトのインジケーターの色が異なります。(I8a4ac) TimePickerを追加しました。24 時間形式(秒ありまたは秒なし)または 12 時間形式(午前/午後を選択可能)のレイアウトがあります。(Ia5124)- 列の順序(日-月-年、月-日-年、年-月-日)とオプションの最小/最大日付の構成を含む
DatePickerを追加しました。(Ibf13b) TimeTextのtext関数に重みパラメータを追加しました。TimeText が複数のテキスト要素で構成されている場合、この属性を使用すると、スペースの配分方法を制御できます。(I36700)RadioButtonとSplitRadioButtonを追加しました。これらのコンポーネントは、(スプリット)SelectableButtonと子ラジオ コントロール(If7ae8)の両方を組み合わせることで、以前の API を簡素化します。CheckboxButtonとSplitCheckboxButtonを追加しました。これらのコンポーネントは、(分割)ToggleButtonと子チェックボックス コントロール(Ia8f70)の両方を組み合わせることで、以前の API を簡素化します。SwitchButtonとSplitSwitchButtonを追加しました。これらのコンポーネントは、(Split)ToggleButtonと子 Switch コントロール(I0d349)の両方を組み合わせることで、以前の API を簡素化します。AnimatedTextのドキュメントを更新し、オーバーシュートの動作について説明しました。(Iff30a)- ボタンの押下で連携したアニメーションが生成されるように、2 つまたは 3 つのボタンを組み合わせる
ButtonGroupを追加しました。(Ie27db) - 押されたときに
IconButtonとTextButtonのシェイプ アニメーション(オプション)を追加しました。(Iffca5) Button、IconButton、TextButton、CompactButton、EdgeButtonにFilledVariantという色のバリエーションを追加しました(I65fc3)forcedSizeパラメータをImageWithScrimPainterに追加しました。これにより、ボタンの画像背景はデフォルトでコンポーネントのサイズを維持するようになりました。forcedSize = nullを設定すると、代わりにPainter.instrinsicSizeが採用されます。(Ic57af)- ボタンに長押しを追加しました(Ib613d)
IconButtonとTextButtonにも長押しクリックのサポートが追加されました。(I38891)- カードでの長押しクリックに対応しました(I305d5)
LocalTextMaxLines、LocalTextAlign、LocalTextOverflowをCompositionLocalsとして追加し、Textのパラメータのデフォルトとして使用しました。コンポーザブル ローカルは、CheckboxButton、SwitchButton、RadioButtonなどのコンポーネントで UX ガイダンスを実装するために使用できるようになりましたが、必要に応じてパラメータをデベロッパーがオーバーライドできます。(Iab841)- データが読み込まれるまでボタンやカードなどのコンポーネントのコンテンツをマスクするのに役立つ
Placeholderを追加しました。(I1a532) - 削除された
ToggleButtonColorsに代わるIconToggleButtonColorsとTextToggleButtonColorsを追加しました。(Ie0bf1)
バグの修正
Button、FilledTonalButton、OutlinedButton、ChildButton、CompactButtonを新しいCompositionLocalsLocalTextMaxLines、LocalTextAlign、LocalTextOverflowを使用するように更新し、UX ガイダンスを実装しました。これらのパラメータは、必要に応じてデベロッパーが Text で直接オーバーライドできます(Ie51f7)4dpのストローク幅を持つScrollIndicatorと区別するために、LevelIndicatorのデフォルトのストローク幅を6dpに変更しました。(If6f63)TimeTextの問題を修正し、より大きなスイープ角度をサポートしました。(Ie489f)EdgeButtonの再コンポジション中の問題を修正しました。(I4cdca)- カスタマイズされたコンテンツ パディングが指定されている場合の分割切り替えボタンのレイアウトを修正しました。(Ia33d3)
- 小さな進行状況の値は、進行状況インジケーターの線の幅以上に切り上げられます。(I3bd84)
バージョン 1.0.0-alpha23
2024 年 5 月 14 日
androidx.wear.compose:compose-material3:1.0.0-alpha23 がリリースされました。バージョン 1.0.0-alpha23 にはこれらの commit が含まれています。
API の変更
- 無効な色を構成できるように、
ToggleButtonAPI とRadioButtonAPI を更新しました。(If13a7) - Material3 用の新しい
CircularProgressIndicatorを追加しました。(Ib3bd7)
バグの修正
- 選択可能なボタンがすでに選択されている場合に、ダブルタップで切り替えられるとアナウンスされるバグを修正しました。(I7ed88)
バージョン 1.0.0-alpha22
2024 年 5 月 1 日
androidx.wear.compose:compose-material3:1.0.0-alpha22 がリリースされました。バージョン 1.0.0-alpha22 には、これらの commit が含まれています。
API の変更
- Material3 の
ColorSchemeを更新しました。(I7b2b8) - Material3 の Switch を更新しました。色の変更に加えて、チェックマークが Checkbox で使用されているものと一致するようになりました。(Icac7b)
バグの修正
- 新しい
rotaryScrollable修飾子を使用するようにすべての統合デモを更新します。(I25090)
バージョン 1.0.0-alpha21
2024 年 4 月 17 日
androidx.wear.compose:compose-material3:1.0.0-alpha21 がリリースされました。バージョン 1.0.0-alpha21 には、これらの commit が含まれています。
- このリリースは、以前のリリースでソース jar が見つからないという技術的な問題が発生したためにトリガーされました。このリリースには新しいコミットはありません。
バージョン 1.0.0-alpha20
2024 年 4 月 3 日
androidx.wear.compose:compose-material3:1.0.0-alpha20 がリリースされました。バージョン 1.0.0-alpha20 にはこれらの commit が含まれています。
バグの修正
- コントラストを調整するため、リップルの押下状態とフォーカス状態のアルファ値を調整しました。(I59f0a)
- タイポグラフィ スタイルと行の高さの最新の変更に沿って、
Button、ToggleButton、RadioButtonのメインラベルとサブラベルの間にスペースを追加しました。(I2c0ba)
バージョン 1.0.0-alpha19
2024 年 3 月 6 日
androidx.wear.compose:compose-material3:1.0.0-alpha19 がリリースされました。バージョン 1.0.0-alpha19 には、これらの commit が含まれています。
API の変更
- Wear Compose Material3 ライブラリに
TimeTextを追加しました。このコンポーネントは、画面上部に現在時刻(と追加のステータス)を表示します。新しい簡潔な Material3 API では、直線的なコンテンツと曲線的なコンテンツの重複を回避できます。(I4d7c3) RadioButtonのパラメータ名をonSelectedからonSelectに更新しました。(I1a971)RadioButtonとSplitRadioButtonをトークン化し、既存のメソッドをリファクタリングして、色のキャッシュされたインスタンスを追加し、RadioButtonColorsとSplitRadioButtonColorsのメソッドを内部化することで、CompositionLocalルックアップの量を減らします。(I02b33)
バージョン 1.0.0-alpha18
2024 年 2 月 21 日
androidx.wear.compose:compose-material3:1.0.0-alpha18 がリリースされました。バージョン 1.0.0-alpha18 に含まれる commit については、こちらをご覧ください。
API の変更
- 内部でキャッシュされたインスタンスを作成し、
CompositionLocalの使用量を減らすことで、CardColors、ToggleButtonColors、SplitToggleButtonColorsのデフォルト パターンをリファクタリングしました。(If3fec)
バージョン 1.0.0-alpha17
2024 年 2 月 7 日
androidx.wear.compose:compose-material3:1.0.0-alpha17 がリリースされました。バージョン 1.0.0-alpha17 に含まれる commit については、こちらをご覧ください。
API の変更
- Button API を更新して、デフォルトで
buttonColorsを使用するようにし、重複するfilledButtonColorsを削除しました。(I4fe3b) - 内部でキャッシュされたインスタンスを作成し、
CompositionLocalの使用量を減らすことで、ButtonColors、IconButtonColors、TextButtonColorsのデフォルト パターンをリファクタリングしました。(I5f51c) - コンポーネント固有の色クラスで
rememberUpdatedStateのオーバーヘッドを削除し、色クラス内のアクセサ メソッドを内部としてマークしました。(If6571)
バグの修正
Modifier.nodeを使用するようにModifier.minimumInteractiveComponentSizeを更新しました。(Iba6b7)
バージョン 1.0.0-alpha16
2024 年 1 月 24 日
androidx.wear.compose:compose-material3:1.0.0-alpha16 がリリースされました。バージョン 1.0.0-alpha16 に含まれる commit については、こちらをご覧ください。
新機能
CompactButtonを追加しました。これは、Button と同じ塗りつぶし、塗りつぶし(トーン別)、枠線の色を使用できます。(I05df0)
API の変更
- ラジオボタンなどの選択コントロールのコンテナとして
RadioButton/SplitRadioButtonを追加しました。既存のToggleButtonとの違いは、RadioButtonは選択可能(選択グループ内で動作)であるのに対し、ToggleButtonは切り替え可能(独立して動作)である点です。(I61275) - Compose Material3 ライブラリとの一貫性を保つため、Wear Compose Material3 ライブラリから
LocalContentAlphaを削除します。(I49a0a) - API で
MutableInteractionSourceを公開する Wear material コンポーネントと Wear material3 コンポーネントが更新され、デフォルトで null になる null 許容のMutableInteractionSourceを公開するようになりました。セマンティクスの変更はありません。null を渡すことは、MutableInteractionSourceをホイストしないことを意味し、必要に応じてコンポーネント内で作成されます。null に変更すると、一部のコンポーネントでMutableInteractionSourceが割り当てられなくなり、他のコンポーネントでは必要なときにのみインスタンスが遅延作成されるため、これらのコンポーネント全体のパフォーマンスが向上します。これらのコンポーネントに渡すMutableInteractionSourceを使用していない場合は、代わりに null を渡すことをおすすめします。独自のコンポーネントでも同様の変更を行うことをおすすめします。(Ib90fc、b/298048146) - 非推奨の
rememberRippleに代わる、wear:compose-materialライブラリとwear:compose-material3ライブラリに新しいリップル API を追加しました。また、Material コンポーネントを非推奨のrememberRipple/RippleThemeAPI を使用するように戻すための一時的なCompositionLocal、LocalUseFallbackRippleImplementationも追加します。これは次の安定版リリースで削除される予定です。カスタムRippleThemeを提供している場合にのみ、一時的な移行支援として使用してください。移行情報とこの変更の背景については、developer.android.com をご覧ください。(af92b21) HorizontalPageIndicatorAPI とそのドキュメントを若干改善しました。(I60efc)ColorSchemeを不変に変更しました。これにより、個々の色の更新の効率は低下しますが、色の一般的な使用の効率は向上します。この変更の理由は、ほとんどのアプリでは個々の色を更新することが主なユースケースではないためです。これは引き続き可能ですが、以前よりも再コンポーズが多くなり、その結果、マテリアル コード全体で状態サブスクリプションの量が大幅に減少し、より標準的なユースケースの初期化とランタイムのコストに影響します。(Ibc2d6)- 無効な色をカスタマイズできるように
ToggleButtonAPI とSplitToggleButtonAPI を更新しました。また、色とタイポグラフィの値にマテリアル デザイン トークンが使用されるようになりました。(If087c) - ボタン画像の背景色を更新して、マテリアル デザイン トークンを使用するようにしました。(Iba215)
- クリック処理を削除することで、
Checkbox、Switch、RadioButtonコンポーネントを表示専用に変更しました。これらのコンポーネントはクリックを処理する(Split)ToggleButtonで使用されることが想定されているため、コンポーネントはディスプレイ専用(Wear でのスタンドアロン使用を想定していない)としてより明確に示されるようになりました。(I2322e)
バグの修正
- Wear Compose マテリアル 3 に、期間とイージングのモーション値のトークンを追加しました。(I437cd)
ToggleButton、SplitToggleButton、Checkbox、Switch、RadioButtonのバグを修正し、ユーザー補助の読み上げが繰り返されないようにしました(以前は、セマンティック ロールが重複していました)。(Ica281)- パフォーマンスを改善するため、
CompactButtonの materialcore レイヤを削除しました。(7902858)
バージョン 1.0.0-alpha15
2023 年 11 月 15 日
androidx.wear.compose:compose-material3:1.0.0-alpha15 がリリースされました。バージョン 1.0.0-alpha15 に含まれる commit については、こちらをご覧ください。
API の変更
- Foundation レベルの
SwipeToDismissBoxの名前をBasicSwipeToDismissBoxに変更しました。これにより、Foundation レベルのコンポーネントと Material3 レベルのSwipeToDismissBoxの違いがより明確になります。後者は、MaterialThemeからスクリムで使用する色を取得し、残りの実装をBasicSwipeToDismissBoxに委任します。(Ibecfc)
バグの修正
- パフォーマンスを改善するため、Material3 Button の material-core レイヤを削除しました。(I55555)
バージョン 1.0.0-alpha14
2023 年 10 月 18 日
androidx.wear.compose:compose-material3:1.0.0-alpha14 がリリースされました。バージョン 1.0.0-alpha14 に含まれる commit については、こちらをご覧ください。
API の変更
- Material3 の
HorizontalPageIndicatorからindicatorStyleパラメータを削除しました。代わりに、デバイスの画面の形状(直線または円形)に沿って表示されます。(I83728) - 新しい
SplitToggleButtonColorsクラスを追加して、SplitToggleButtonの色をToggleButtonの色から分離しました。(I78bee)
バージョン 1.0.0-alpha13
2023 年 10 月 4 日
androidx.wear.compose:compose-material3:1.0.0-alpha13 がリリースされました。バージョン 1.0.0-alpha13 に含まれる commit については、こちらをご覧ください。
API の変更
バージョン 1.0.0-alpha12
2023 年 9 月 20 日
androidx.wear.compose:compose-material3:1.0.0-alpha12 がリリースされました。バージョン 1.0.0-alpha12 に含まれる commit については、こちらをご覧ください。
API の変更
- マテリアル デザイン トークンを使用するよう
IconButtonを更新しました。(I3f137) - マテリアル デザイン トークンを使用するよう
IconToggleButtonを更新しました。(I7d263) CheckboxColors、RadioButtonColors、SwitchColorsのコンストラクタを公開しました。(I82b73)
バージョン 1.0.0-alpha11
2023 年 9 月 6 日
androidx.wear.compose:compose-material3:1.0.0-alpha11 がリリースされました。バージョン 1.0.0-alpha11 に含まれる commit については、こちらをご覧ください。
バグの修正
- Material3 カードのタイポグラフィを
TitleMediumに更新しました。(I597bd) - マテリアル 3 の
ListHeaderとListSubheaderのタイポグラフィと配置を更新しました。(Ib5ceb)
バージョン 1.0.0-alpha10
2023 年 8 月 23 日
androidx.wear.compose:compose-material3:1.0.0-alpha10 がリリースされました。バージョン 1.0.0-alpha10 に含まれる commit については、こちらをご覧ください。
新機能
- Wear Material3 ライブラリに
HorizontalPageIndicatorを追加しました。(Ifee99)
API の変更
- Material3 デザイン トークンを使用するようにボタンのコードを更新します。(I92fe4)
- ユーザー インターフェースの詳細がまだ最終決定されていないため、Wear Material 3 の Stepper API と Slider API を試験運用版として宣言。(I84d54)
ExtraSmallサイズはIconButtonにのみ適用されるため、丸いTextButtonとTextToggleButtonから削除しました。(Ibc7d5)
バグの修正
- TextToggleButton のタイポグラフィに関するガイダンスを更新し、LargeButtonSize に LabelLarge を使用するようにしました(Ib10fa)
- TextButton のタイポグラフィに関するガイダンスを更新し、LargeButtonSize に LabelLarge を使用するようにしました(I8f3a7)
- ユーザー補助のため、カードの最小タップ ターゲットを 48 dp に設定しました。(Ieb9b1)
- 画像デモを含む AppCard を追加し、背景デモを含む AppCard を削除(Id735f)
- 修飾子が正しくチェーンされない丸いボタンのバグを修正しました。(I5e162)
バージョン 1.0.0-alpha09
2023 年 8 月 9 日
androidx.wear.compose:compose-material3:1.0.0-alpha09 がリリースされました。バージョン 1.0.0-alpha09 に含まれる commit については、こちらをご覧ください。
新機能
- material3 に
ToggleButtonを追加しました。(I6bed6)
API の変更
- 以前にコメントで説明した
FloatRangeアノテーションを API 制約として有効にしました。(Icb401) - 最新の Material3 ガイドラインに準拠するよう、Wear Material3 のタイポグラフィを更新しました。(I1bad6)
バグの修正
- Material3 デザインに沿って、
Button、IconButton、TextButtonの色を更新しました。(Ib2495) - 無効状態のチェックボックスのチェックマークの表示を修正しました。(Ib25bf)
バージョン 1.0.0-alpha08
2023 年 7 月 26 日
androidx.wear.compose:compose-material3:1.0.0-alpha08 がリリースされました。バージョン 1.0.0-alpha08 に含まれる commit については、こちらをご覧ください。
新機能
- マテリアル 3 の選択コントロール(
Switch、Checkbox、RadioButton)を追加しました。(Ib918c) - Material3 に
IconToggleButtonとTextToggleButtonを追加しました。これらは、アイコンとテキスト用にそれぞれ 1 つのスロットを備えた円形の切り替えボタンです。ToggleButtonのさまざまなサイズについては、それぞれの切り替えボタンで指定されたサイズでModifier.touchTargetAwareSizeを使用することをおすすめします。(I9f015) - Material3 コンポーネントに
ListHeaderとListSubheaderを追加しました。(Ibaefe) - Material3
SwipeToDismissBoxを追加しました。これは、新しい FoundationSwipeToDismissBoxを呼び出し、そのテーマからデフォルトのカラー値を指定します。(I275fb) - Wear Compose に Material3
InlineSliderを追加しました。ユーザーは値の範囲から選択できます。選択範囲は、範囲の最小値と最大値の間にバーとして表示され、ユーザーはそこから値を 1 つ選択できます。InlineSliderは、音量や明るさなどの設定を調整するのに最適です。(I7085f)
API の変更
- Wear Material 3 テーマの Shapes を更新し、Shape ではなく
RoundedCornerShapeベースを使用するようにしました。(Idb133) - Button の高さの定数を公開しました(Idbfde)
- API ファイルを更新し、互換性の抑制をアノテーションしました(I8e87a、b/287516207)
- Wear Compose Material 3 の
InlineSliderColorsを更新し、パブリック コンストラクタとパブリック プロパティを追加しました。(I6b632) - Wear Compose Material 3 のすべてのカラークラスを更新し、パブリック コンストラクタとパブリック プロパティを持つようにしました。(I17702)
- Button の水平方向と垂直方向のパディング定数を公開しました。(Ieeaf7)
バグの修正
- アクセシビリティのためにフォントサイズが大きくなったことでコンテンツが拡大した場合、必要に応じてボタンの高さが調整されるようになりました(Iaf302)
- ユーザー補助機能に関する問題に対処するため、ボタンのデモをいくつか更新しました。(I61ce9)
StepperとInlineSliderで長押し時の繰り返しクリックがサポートされるようになりました。これにより、+ ボタンまたは - ボタンを長押しすることで、StepperとInlineSliderの値をすばやく増減させることができます(I27359)
バージョン 1.0.0-alpha07
2023 年 6 月 21 日
androidx.wear.compose:compose-material3:1.0.0-alpha07 がリリースされました。バージョン 1.0.0-alpha07 に含まれる commit については、こちらをご覧ください。
新機能
- Compose for Wear OS Material 3 ライブラリに
Stepperコンポーネントを追加しました。これは以前の Material バージョンと似ていますが、デベロッパーからのフィードバックに基づき、デフォルトで範囲セマンティクスが省略されています。範囲セマンティクスが必要なケースをModifier.rangeSemanticsに提供します。(Ic39fd) - Wear OS 向け Compose マテリアル 3 ライブラリに
curvedTextを追加しました。(Ia8ae3)
バグの修正
wear.compose.foundationをwear.compose.material3の API 依存関係として更新しました(I72004、b/285404743)
バージョン 1.0.0-alpha06
2023 年 6 月 7 日
androidx.wear.compose:compose-material3:1.0.0-alpha06 がリリースされました。バージョン 1.0.0-alpha06 に含まれる commit については、こちらをご覧ください。
バグの修正
- 無効なアルファ値を正しく使用するために、
TextButtonを更新してtoDisabledColor拡張関数を使用するようにしました。(I814c8)
バージョン 1.0.0-alpha05
2023 年 5 月 24 日
androidx.wear.compose:compose-material3:1.0.0-alpha05 がリリースされました。バージョン 1.0.0-alpha05 に含まれる commit については、こちらをご覧ください。
新機能
- Material3 に
TextButtonを追加しました。これは、テキスト用のスロットが 1 つある円形のボタンです。TextButtonのサイズが異なる場合は、TextButtonDefaultsで提供されるModifier.touchTargetAwareSizeとExtraSmallButtonSize、SmallButtonSize、DefaultButtonSize、LargeButtonSizeIconを使用することをおすすめします。デフォルトのTextButtonは、強調度の低いアクション用に枠線がなく、背景が透明になっています。高強調が必要なアクションにはfilledTextButtonColorsを使用します。中強調のアウトラインTextButtonの場合は、境界線をButtonDefaults.outlinedButtonBorderに設定します。アウトラインと塗りつぶしの中間にはfilledTonalTextButtonColorsを使用します。(I667e4) - Wear Compose Material3 ライブラリに
Card、OutlinedCard、AppCard、TitleCardが追加されました。AppCardとTitleCardは、CardDefaults.outlinedCardColorsとCardDefaults.outlinedCardBorderを使用してアウトライン表示にすることもできます(I80e72)
API の変更
- 末尾ラムダ構文をサポートするために、ボタンラベル パラメータを末尾に移動し、ロール パラメータを削除しました(これは
Modifier.semanticsを使用してオーバーライドできます)。ButtonColorsコンストラクタが公開されました。(Ie1b6d)
バージョン 1.0.0-alpha04
2023 年 5 月 10 日
androidx.wear.compose:compose-material3:1.0.0-alpha04 がリリースされました。バージョン 1.0.0-alpha04 に含まれる commit については、こちらをご覧ください。
新機能
- Material3 に
IconButtonを追加しました。これは、アイコン/画像用の 1 つのスロットを備えた円形のボタンです。バリエーションはIconButton、FilledIconButton、FilledTonalIconButton、OutlinedIconButtonの 4 つです。IconButtonのサイズが異なる場合は、IconButtonDefaultsで提供されるModifier.touchTargetAwareSizeとExtraSmallButtonSize、SmallButtonSize、DefaultButtonSize、LargeButtonSizeIconを使用することをおすすめします。また、特定のボタン サイズに推奨されるアイコン サイズを決定するIconButtonDefaults.iconSizeForも提供しています。(I721d4)
バージョン 1.0.0-alpha03
2023 年 4 月 19 日
androidx.wear.compose:compose-material3:1.0.0-alpha03 がリリースされました。バージョン 1.0.0-alpha03 に含まれる commit については、こちらをご覧ください。
API の変更
- マテリアル 3 の Button コンポーネントを追加しました。これはスタジアム型のボタンで、以前は Wear Compose マテリアル ライブラリで Chip という名前でしたが、Compose マテリアル 3 ライブラリとの整合性を保つため、Button に名前が変更されました。デフォルトのボタンは背景が塗りつぶされています。ボタンのバリエーションには、
FilledTonal(背景がミュート)、アウトライン(透明で細い枠線)、子(透明な背景で枠線なし。目立たせたくない補助的なアクションに使用)があります。シンプルなアイコンとテキスト コンテンツ用の丸いボタンは、今後のリリースで対応予定です。(Ia6942)
バージョン 1.0.0-alpha02
2023 年 4 月 5 日
androidx.wear.compose:compose-material3:1.0.0-alpha02 がリリースされました。バージョン 1.0.0-alpha02 に含まれる commit については、こちらをご覧ください。
バグの修正
- Wear Compose Material 3 に
DefaultTextStyleを追加しました。これにより、PlatformTextStyle.includeFontPaddingがデフォルトで true(現在の設定)になります。これにより、今後、フォント パディングをデフォルトでオフにする処理を Compose ライブラリと同期できるようになります(Compose で背景のフォント パディングを修正を参照)。(I7e461)
バージョン 1.0.0-alpha01
2023 年 3 月 22 日
androidx.wear.compose:compose-material3:1.0.0-alpha01 がリリースされました。バージョン 1.0.0-alpha01 に含まれる commit については、こちらをご覧ください。
新機能
マテリアル 3 はマテリアル デザインの進化版であり、更新されたテーマ設定と再設計されたコンポーネントが含まれています。Wear Compose のマテリアル 3 は、Android のマテリアル 3 Compose ライブラリと一貫性があるように設計されています。この最初のアルファ版リリースには、次のものを備えた初期段階の機能実装が含まれています。
Wear Material(
androidx.wear.compose:compose-material)と Wear Material 3(androidx.wear.compose:compose-material3)は引き続き並行して開発されます。今後の material3 のリリースでは、ウィジェット セットが拡張され、ボタン、選択ツール、スライダーなど、Compose for Wear OS の他のコンポーネントも含まれる予定です。Wear Material ライブラリと Wear Material 3 ライブラリは相互に排他的であり、同じアプリ内で混在させるべきではありません。これは主に、参照するテーマが異なるため、予期しない不整合が生じる可能性があるためです。