Wear Compose マテリアル 3
最新の更新 | 安定版リリース | リリース候補版 | ベータ版リリース | アルファ版リリース |
---|---|---|---|---|
2025 年 8 月 13 日 | - | 1.5.0-rc02 | - | - |
依存関係の宣言
Wear への依存関係を追加するには、Google の Maven リポジトリをプロジェクトに追加する必要があります。詳しくは、Google の Maven リポジトリをご覧ください。
アプリまたはモジュールの build.gradle
ファイルに、必要なアーティファクトの依存関係を追加します。
Groovy
dependencies { implementation "androidx.wear.compose:compose-foundation:1.5.0-rc02" // For Wear Material Design UX guidelines and specifications implementation "androidx.wear.compose:compose-material3:1.5.0-rc02" // For integration between Wear Compose and Androidx Navigation libraries implementation "androidx.wear.compose:compose-navigation:1.5.0-rc02" // For Wear preview annotations implementation("androidx.wear.compose:compose-ui-tooling:1.5.0-rc02") // 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-rc02") // For Wear Material Design UX guidelines and specifications implementation("androidx.wear.compose:compose-material3:1.5.0-rc02") // For integration between Wear Compose and Androidx Navigation libraries implementation("androidx.wear.compose:compose-navigation:1.5.0-rc02") // For Wear preview annotations implementation("androidx.wear.compose:compose-ui-tooling:1.5.0-rc02") // 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-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 の
SwipeToReveal
API を優先して、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
SwipeToReveal
API を更新しました。具体的には、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)。 SwipeToReveal
API をさらに更新しました。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) PickerGroupScope
DSL をコンポーザブルに置き換えました。そのため、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)OpenOnPhoneDialog
API が更新され、明確性が向上し、他のダイアログとの一貫性が高まりました。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)ButtonGroup
API で、新しい修飾子ベースの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)
ScreenScaffold
API とEdgeButton
API を更新し、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)- アクションのラベル(セカンダリ アクションを除く)のテキスト スロット パラメータを受け取り、元に戻すアクションからラベル パラメータを削除するように
SwipeToReveal
API を改善しました(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)Stepper
API を更新し、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)に弧のバリエーションを追加しました。
AlertDialog
API を構成するAlertDialogContent
とDialog
のコンポーザブルを公開しました。これにより、必要に応じてカスタマイズを追加できます(推奨されるコンテンツ レイアウトを維持しながらAlertDialog
アニメーションをカスタマイズするなど)。また、AlertDialogDefaults
のEdgeButton
、ConfirmButton
、DismissButton
メンバーにModifier
パラメータとColor
パラメータを追加しました。(I4eb71)Placeholder
API を更新しました。具体的には、PlaceholderState.startPlaceholderAnimation
をPlaceholderState.animatePlaceholder
に、PlaceholderState.isShowContent
をPlaceholderState.isHidden
に、PlaceholderDefaults.shape
をPlaceholderDefaults.Shape
に名前変更しました。また、painterWithPlaceholderOverlayBackgroundBrush
のpainter
パラメータをoriginalPainter
に名前変更しました。さらに、PlaceholderState.placeholderProgression
の公開設定を内部に変更し、placeholderShimmerProgression
に名前変更しました。最後に、PlaceholderDefaults
にプレースホルダ アニメーションの期間定数を追加しました。(Ie5a59)EdgeButton
API を更新しました。具体的には、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)MotionScheme
API を変更し、使いやすさと一貫性を向上させました。インラインの 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)Picker
API とPickerGroup
API を簡素化しました。(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) ScrollAway
API を変更し、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
を新しいCompositionLocals
LocalTextMaxLines
、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 の変更
- 無効な色を構成できるように、
ToggleButton
API とRadioButton
API を更新しました。(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/RippleTheme
API を使用するように戻すための一時的なCompositionLocal
、LocalUseFallbackRippleImplementation
も追加します。これは次の安定版リリースで削除される予定です。カスタムRippleTheme
を提供している場合にのみ、一時的な移行支援として使用してください。移行情報とこの変更の背景については、developer.android.com をご覧ください。(af92b21) HorizontalPageIndicator
API とそのドキュメントを若干改善しました。(I60efc)ColorScheme
を不変に変更しました。これにより、個々の色の更新の効率は低下しますが、色の一般的な使用の効率は向上します。この変更の理由は、ほとんどのアプリでは個々の色を更新することが主なユースケースではないためです。これは引き続き可能ですが、以前よりも再コンポーズが多くなり、その結果、マテリアル コード全体で状態サブスクリプションの量が大幅に減少し、より標準的なユースケースの初期化とランタイムのコストに影響します。(Ibc2d6)- 無効な色をカスタマイズできるように
ToggleButton
API とSplitToggleButton
API を更新しました。また、色とタイポグラフィの値にマテリアル デザイン トークンが使用されるようになりました。(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 ライブラリは相互に排他的であり、同じアプリ内で混在させるべきではありません。これは主に、参照するテーマが異なるため、予期しない不整合が生じる可能性があるためです。