このたび、Material 3 Adaptive 1.2.0 が安定版としてリリースされました。
このリリースでは、以前のバージョンの基盤をさらに強化し、ウィンドウ サイズクラスのブレークポイントのサポートを拡大するとともに、表示ペインを自動的に配置する新しい戦略を導入しています。
Material 3 Adaptive 1.2.0 の新機能
この安定版リリースは、WindowManager 1.5.0 の大サイズと特大サイズのブレークポイントのサポートを基盤としており、ListDetailPaneScaffold と SupportingPaneScaffold の新しいリフロー戦略とリフトアップ戦略を導入しています。
新しいウィンドウ サイズクラス: 大サイズと特大サイズ
WindowManager 1.5.0 では、幅のウィンドウ サイズクラスに 2 つの新しいブレークポイントが導入され、拡大ウィンドウ サイズクラスよりも大きなウィンドウをサポートできるようになりました。大サイズ(L)と特大サイズ(XL)のブレークポイントを有効にするには、コードベースの currentWindowAdaptiveInfo() 呼び出しに次のパラメータを追加します。
currentWindowAdaptiveInfo(supportLargeAndXLargeWidth = true)
このフラグを使用すると、ライブラリは必要に応じて L ブレークポイントと XL ブレークポイントも返せるようになります。
新しいアダプティブ戦略: リフローとリフトアップ
ウィンドウにコンテンツと表示ペインを配置するには、ウィンドウ サイズをはじめとする多くの要素を考慮する必要があるため、複雑な作業になります。新しい Material 3 Adaptive ライブラリでは、2 つの新しいテクノロジーを使用して、最小限の労力でアダプティブ レイアウトを実現できます。
リフロー を使用すると、ウィンドウ サイズやアスペクト比が変更されたときにペインが再配置されます。ウィンドウの幅が十分な場合は、2 つ目のペインが 1 つ目のペインの横に配置されます。ウィンドウの高さが十分な場合は、2 つ目のペインが 1 つ目のペインの下にリフローされます。この手法は、ウィンドウが小さくなった場合にも適用されます。コンテンツは下部にリフローされます。
ウィンドウ サイズに基づいてペインをリフローする
リフローは多くの場合に優れた選択肢ですが、コンテンツをウィンドウの片側にドッキングしたり、ウィンドウの上にリフトアップしたりする必要がある場合もあります。 リフトアップ戦略では、コンテンツをドッキングするだけでなく、ドラッグ可能、サイズ変更可能、背景スクリムなどの機能をカスタマイズすることもできます。
アスペクト比に基づいてペインを横から中央にリフトアップする
フロー戦略とリフトアップ戦略はどちらも、adaptStrategies パラメータを使用して Navigator コンストラクタ内で宣言できます。また、どちらの戦略もリストと詳細ペインとサポートペインの scaffolds に適用できます。
val navigator = rememberListDetailPaneScaffoldNavigator<Nothing>( adaptStrategies = ListDetailPaneScaffoldDefaults.adaptStrategies( detailPaneAdaptStrategy = AdaptStrategy.Reflow( reflowUnder = ListDetailPaneScaffoldRole.List ), extraPaneAdaptStrategy = AdaptStrategy.Levitate( alignment = Alignment.Center ) ) )
これらの新しいアダプティブ戦略を活用する方法について詳しくは、Material のウェブサイトと完全なサンプルコードを GitHub でご覧ください。
続きを読む
-
プロダクト ニュース
Android Studio Panda 4 が安定版としてリリースされ、本番環境で使用できるようになりました。このリリースでは、プランニング モード、次の編集の予測などが導入され、高品質の Android アプリをこれまで以上に簡単に構築できるようになります。
Matt Dyor • 5 分で読了
-
プロダクト ニュース
革新的な AI 機能をアプリに実装したい Android デベロッパー向けに、強力な新機能がリリースされました。
Thomas Ezan • 3 分で読了
-
プロダクト ニュース
Android 17 がベータ版 4 に到達しました。これは、このリリース サイクルの最後のベータ版であり、アプリの互換性とプラットフォームの安定性にとって重要なマイルストーンです。
Daniel Galpin • 4 分で読了
メールを受け取る
Android 開発に関する最新の分析情報を毎週メールでお届けします。