Material 3 Adaptive erstellen

  
Mit der adaptiven Material 3-Bibliothek können Sie adaptive UIs erstellen, die sich automatisch an die aktuellen Fensterkonfigurationen wie Fenstergrößenklassen oder Gerätestatus anpassen. Die Bibliothek bietet sowohl Standard-Scaffold-Implementierungen als auch die erforderlichen Composables für Bausteine, mit denen Sie Ihre eigenen benutzerdefinierten Funktionen erstellen können.
Letzte Aktualisierung Stabile Version Releasekandidat Beta-Ausgabe Alpharelease
2. Juli 2025 1.1.0 - - 1.2.0-alpha08

Abhängigkeiten deklarieren

Wenn Sie eine Abhängigkeit von Compose hinzufügen möchten, müssen Sie Ihrem Projekt das Google Maven-Repository hinzufügen. Weitere Informationen finden Sie im Maven-Repository von Google.

Fügen Sie der Datei build.gradle für Ihre App oder Ihr Modul die Abhängigkeiten für die benötigten Artefakte hinzu:

Groovy

dependencies {
    implementation "androidx.compose.material3.adaptive:adaptive:1.2.0-alpha08"
    implementation "androidx.compose.material3.adaptive:adaptive-layout:1.2.0-alpha08"
    implementation "androidx.compose.material3.adaptive:adaptive-navigation:1.2.0-alpha08"
}

Kotlin

dependencies {
    implementation("androidx.compose.material3.adaptive:adaptive:1.2.0-alpha08")
    implementation "androidx.compose.material3.adaptive:adaptive-layout:1.2.0-alpha08"
    implementation "androidx.compose.material3.adaptive:adaptive-navigation:1.2.0-alpha08"
}

Weitere Informationen zu Abhängigkeiten finden Sie unter Build-Abhängigkeiten hinzufügen.

Feedback

Ihr Feedback hilft uns, Jetpack zu verbessern. Lassen Sie es uns wissen, wenn Sie neue Probleme entdecken oder Ideen zur Verbesserung dieser Bibliothek haben. Sehen Sie sich die vorhandenen Probleme in dieser Bibliothek an, bevor Sie ein neues erstellen. Sie können für ein vorhandenes Problem abstimmen, indem Sie auf die Schaltfläche mit dem Stern klicken.

Neues Problem erstellen

Weitere Informationen finden Sie in der Dokumentation zur Problemverfolgung.

Compose Material3 Adaptive Version 1.2

Version 1.2.0-alpha08

2. Juli 2025

androidx.compose.material3.adaptive:adaptive-*:1.2.0-alpha08 wird veröffentlicht. Version 1.2.0-alpha08 enthält diese Commits.

Version 1.2.0-alpha07

18. Juni 2025

androidx.compose.material3.adaptive:adaptive-*:1.2.0-alpha07 wird veröffentlicht. Version 1.2.0-alpha07 enthält diese Commits.

API-Änderungen

  • Die currentWindowAdaptiveInfo()-Funktion unterstützt jetzt die Größenklassen „große“ und „sehr große“ Fensterbreite. Die Funktionen calculatePosture() und currentWindowDpSize() sind jetzt stabil. (I92e97)

Version 1.2.0-alpha06

20. Mai 2025

androidx.compose.material3.adaptive:adaptive-*:1.2.0-alpha06 wird veröffentlicht. Version 1.2.0-alpha06 enthält diese Commits.

Neue Funktionen

  • Die Standardberechnungsfunktionen für die Gerüst-Direktive für Bereiche unterstützen jetzt die Fensterbreitenklassen L und XL.

API-Änderungen

  • Sorgen Sie dafür, dass Modifier.paneExpansionDraggable standardmäßige Barrierefreiheitssemantik bietet und relevante APIs auf stabil hochgestuft werden. (Idb818)
  • Drag-to-Resize-Funktion für schwebende Bereiche unterstützen (Idadd3)
  • Unterstützung von Scrims für schwebende Bereiche (I9b091)

Version 1.2.0-alpha05

7. Mai 2025

androidx.compose.material3.adaptive:adaptive-*:1.2.0-alpha05 wird veröffentlicht. Version 1.2.0-alpha05 enthält diese Commits.

Neue Funktionen

  • Material3-Layouts unterstützen jetzt „Levitated“-Anpassungsstrategien, mit denen ein Bereich in ein schwebendes Pop-up umgewandelt werden kann.

API-Änderungen

  • Funktionen für die aktuelle Fenstergröße für mehrere Plattformen unterstützen (Ie4172)
  • Einführung von Bereichsbewegungen für schwebende Bereiche (Ic9dc3)
  • Levitate-Strategie für die Anpassung einführen (I1ba7c)

Fehlerkorrekturen

  • Verwendung des Coroutine-Bereichs in adaptiven Beispielen korrigieren (7631016)

Version 1.2.0-alpha04

23. April 2025

androidx.compose.material3.adaptive:adaptive-*:1.2.0-alpha04 wird veröffentlicht. Version 1.2.0-alpha04 enthält diese Commits.

Neue Funktionen

  • Für ListDetailPaneScaffold und SupportingPaneScaffold sind jetzt Reflow-Strategien verfügbar, mit denen der zugehörige Bereich in einer Layout-Einstellung mit einem einzelnen Bereich neu angeordnet wird.

API-Änderungen

  • Saveable-State-Holder zu PaneScaffoldScope hinzufügen (Id9299)
  • Reflow-Strategie für die Anpassung einführen (I75c6a)

Fehlerkorrekturen

  • Der Fehler wurde behoben, durch den Bereiche bei der ersten Übergangsanimation nicht animiert wurden. (Ib0415)
  • Problem mit bevorzugten Höhen behoben. (I1913b)
  • Der Fehler wurde behoben, dass die Scaffold-Anweisung nicht richtig aktualisiert wurde. (0403ab)

Version 1.2.0-alpha03

9. April 2025

androidx.compose.material3.adaptive:adaptive-*:1.2.0-alpha03 wird veröffentlicht. Version 1.2.0-alpha03 enthält diese Commits.

Fehlerkorrekturen

  • ​​Problem behoben, bei dem der Ziehpunkt im Layout mit einem einzelnen Bereich fälschlicherweise angezeigt wurde. (806e443 )

Abhängigkeitsupdates

  • Diese Bibliothek ist jetzt auf das Kotlin 2.0-Sprachniveau ausgerichtet und erfordert KGP 2.0.0 oder höher. (Idb6b5)

Version 1.2.0-alpha02

26. März 2025

androidx.compose.material3.adaptive:adaptive-*:1.2.0-alpha02 wird veröffentlicht. Version 1.2.0-alpha02 enthält diese Commits.

Version 1.2.0-alpha01

12. März 2025

androidx.compose.material3.adaptive:adaptive-*:1.2.0-alpha01 wird veröffentlicht. Version 1.2.0-alpha01 enthält diese Commits.

API-Änderungen

  • Wir führen den Modifikator PaneScaffoldScope.preferredHeight für Entwickler ein, mit dem sie bevorzugte Höhen für Bereiche angeben können, die mit den neuen Anpassungsstrategien angewendet werden, die wir einführen werden. (I957dd, b/220960090)
  • Benennen Sie ComponentOverride-Typen in Override und ComponentOverrideContext-Typen in OverrideScope um. (Id973c)
  • Einige Methoden zum Überschreiben von Komponenten wurden umbenannt. (I222b3)

Compose Material3 Adaptive Version 1.1

Version 1.1.0

12. März 2025

androidx.compose.material3.adaptive:adaptive-*:1.1.0 wird veröffentlicht. Version 1.1.0 enthält diese Commits.

Wichtige Änderungen seit Version 1.0.0

  • ListDetailPaneScaffold und SupportingPaneScaffold unterstützen jetzt das Feature zum Erweitern von Bereichen. Nutzer können die Standardaufteilung von Bereichen in einem Layout mit zwei Bereichen per Drag-and-drop ändern. Entwickler können die Aufteilung von Bereichen auch zur Laufzeit ändern, indem sie die neu eingeführte PaneExpansionState ändern.
  • Die standardmäßige Unterstützung der intelligenten „Zurück“-Geste ist jetzt mit NavigableListDetailPaneScaffold und NavigableSupportingPaneScaffold verfügbar. Sie können auch ThreePaneScaffoldPredictiveBackHandler verwenden, um die intelligente „Zurück“-Geste in Ihren eigenen Implementierungen mit drei Bereichen zu unterstützen.
  • Sie können jetzt die Bewegungen von Bereichen beim Wechseln zwischen Bereichen anpassen, indem Sie AnimatedPane verschiedene EnterTransition- und ExitTransition-Werte zuweisen.

Version 1.1.0-rc01

26. Februar 2025

androidx.compose.material3.adaptive:adaptive-*:1.1.0-rc01 wird veröffentlicht. Version 1.1.0-rc01 enthält diese Commits.

Fehlerkorrekturen

  • Deaktivieren der intelligenten „Zurück“-Touchgeste für die Skalierung des dreispaltigen Gerüsts (ab6fd0b)

Version 1.1.0-beta02

12. Februar 2025

androidx.compose.material3.adaptive:adaptive-*:1.1.0-beta02 wird veröffentlicht. Version 1.1.0-beta02 enthält diese Commits.

API-Änderungen

  • Die Art und Weise, wie isPredictiveBackInProgress in MutableThreePaneScaffoldState-Animationsfunktionen festgelegt wird, wurde geändert, um die Konsistenz des Status beizubehalten. (Idc97f)

Fehlerkorrekturen

  • Das Standardverhalten von NavigableListDetailPaneScaffold und NavigableSupportingPaneScaffold wurde aus Konsistenzgründen mit dem Rest der Bibliothek zu PopUntilScaffoldValueChange geändert. (I873f0)
  • Legen Sie die richtige Reihenfolge für die Bedienungshilfen von Container-Scaffolds fest. (67d030)
  • Das Problem, dass der Status von Inhalten im Bereich nicht gespeichert wird, wurde behoben. (88b0ff)
  • Unterstützung alternativer Bedienungshilfen anstelle von Drag-and-drop. (28266d)
  • Die aktuelle Aufteilung des Bereichs wird nach einer Änderung angekündigt. (0c3a80)

Version 1.1.0-beta01

29. Januar 2025

androidx.compose.material3.adaptive:adaptive-*:1.1.0-beta01 wird veröffentlicht. Version 1.1.0-beta01 enthält diese Commits.

API-Änderungen

  • Einführung von Factory-Funktionen zum Erstellen von Ankern für die Bereichserweiterung vom Typ „offset“ vom Start und vom Ende. (I2eb21)
  • Versiegeln Sie die PaneMotion-Schnittstelle und entfernen Sie die Standardübergangsmethoden. (Ifc4c7)
  • Einführung von APIs zum Abrufen des aktuellen Ankers und zum Animieren zu einem Anker. (Icf95d)
  • Einführung von Accessibility APIs für die Erweiterung von Bereichen (Icc669)
  • Ändern Sie den Typ von PaneScaffoldParentData.preferredWidth in DP. (Id98ee)

Version 1.1.0-alpha09

15. Januar 2025

androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha09 wird veröffentlicht. Version 1.1.0-alpha09 enthält diese Commits.

API-Änderungen

  • Die neue experimentelle Annotation ExperimentalMaterial3AdaptiveComponentOverrideApi wurde hinzugefügt und kann verwendet werden. (Id45aa)
  • Blende ThreePaneScaffoldHorizontalOrder.toLtrOrder aus. (I6f8d2)
  • ThreePaneScaffoldPredictiveBackHandler wurde veröffentlicht. (I1a995, b/370543873)
  • Das Attribut isPredictiveBackInProgress wurde zu ThreePaneScaffoldState hinzugefügt. (I1a995, b/370543873)
  • Es wird ein Überschreibungsmechanismus für AnimatedPane erstellt, um Sideloading-Implementierungen für verschiedene Formfaktoren zu unterstützen. (Id7622)

Fehlerkorrekturen

  • Das Problem wurde behoben, dass die Abrechnungsrichtung keine Ankerpunkte hatte. (df8257d)

Version 1.1.0-alpha08

12. Dezember 2024

androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha08 wird veröffentlicht. Version 1.1.0-alpha08 enthält diese Commits.

API-Änderungen

  • Einführung der Funktion currentWindowDpSize (I99125, b/296300441)
  • PaneScaffoldParentData und ThreePaneScaffoldHorizontalOrder.toLtrOrder() verfügbar machen (I2d6b7)
  • Entfernen Sie PaneScaffoldMotionScope und machen Sie daraus ein Feld unter PaneScaffoldTransitionScope. Benenne sie außerdem in PaneScaffoldMotionDataProvider um und entferne den Zugriff auf die zugrunde liegende Datenstruktur von PaneMotionData. Stelle stattdessen Getter- und Schleifenmethoden für den Zugriff auf die Daten bereit. (Id8884)
  • Es wird ein Überschreibungsmechanismus für ThreePaneScaffold erstellt, um Sideloading-Implementierungen für verschiedene Formfaktoren zu unterstützen. (I5280f)
  • Der Status für die Erweiterung des Bereichs ist standardmäßig „null“ (Ia65f8, b/376394520)

Version 1.1.0-alpha07

13. November 2024

androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha07 wird veröffentlicht. Version 1.1.0-alpha07 enthält diese Commits.

API-Änderungen

  • Entfernen Sie die Implementierung des Ziehpunkts in der adaptiven Bibliothek und empfehlen Sie Nutzern, die M3-Version zu verwenden. Gleichzeitig wird ein Modifikator eingeführt, um das Ziehen zum Maximieren des Bereichs für eine bereitgestellte Ziehpunkt-Composable zu ermöglichen. Blende DraggableState als Implementierungsdetail aus, damit wir es bei Bedarf später ändern können. (Ib50cd)
  • Der Einstiegspunkt für die Anpassung der Bereichsbewegung wird gemäß UXR-Feedback von den Scaffold-Funktionen zu AnimatedPane verschoben. (I10f72)
  • Unterstützung für Fling-Gesten und benutzerdefinierte Animationsspezifikation für die Erweiterung von Bereichen. (Ie207d, b/362584341)

Fehlerkorrekturen

  • Beheben Sie Probleme mit der vorausschauenden Abrechnung bei der Kündigung. (36a3e0a), (b/369899645)

Version 1.1.0-alpha06

30. Oktober 2024

androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha06 wird veröffentlicht. Version 1.1.0-alpha06 enthält diese Commits.

API-Änderungen

  • Fügen Sie FloatRange zu PaneScaffoldTransitionScope.motionProgress hinzu. (Iac0dd)
  • Ändern Sie den Typ der Navigator-Parameter in generische Typen in navigierbaren Scaffolds. (I1da6e)

Version 1.1.0-alpha05

16. Oktober 2024

androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha05 wird veröffentlicht. Version 1.1.0-alpha05 enthält diese Commits.

API-Änderungen

  • Die Klasse „animation specs“ wurde eingeführt, um ein einheitlicheres Bewegungsverhalten und eine bessere Erweiterbarkeit zu ermöglichen. (I2d3cc)
  • Geben Sie den Bewegungstyp an und benennen Sie „currentXXXXX“ in PaneMotionData in „originXXXX“ um. (I7c61a)

Version 1.1.0-alpha04

2. Oktober 2024

androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha04 wird veröffentlicht. Version 1.1.0-alpha04 enthält diese Commits.

Neue Funktionen

  • Unterstützung für die intelligente „Zurück“-Geste für NavigableListDetailPaneScaffold und NavigableSupportingPaneScaffold hinzugefügt. (I4dc21, b/359616816)

API-Änderungen

  • ThreePaneScaffoldState wurde zu ThreePaneScaffoldNavigator hinzugefügt. Navigationsmethoden wurden suspend, um die Navigation mit Animation zu unterstützen. seekBack wurde hinzugefügt, um partielle Navigationsstatus zu unterstützen (z.B. „Zurück“-Vorhersage). (I5a651, b/359616816)
  • MutableThreePaneScaffoldState wurde hinzugefügt, um den Übergang zwischen Gerüstwerten zu steuern. Die vorhandene ThreePaneScaffoldState ist jetzt schreibgeschützt. (Idb3c6)
  • Standardimplementierungen für die Bewegung von Bereichen verfügbar machen (I95a7b)
  • Einstellung des anfänglichen Ankers des Bereichserweiterungsstatus aktivieren (Ie41b3, b/362350560)

Fehlerkorrekturen

  • Mindestgröße des Touch-Targets für den Ziehpunkt von 48 × 48 dp erzwingen (7ce6635, b/366018217)
  • Ankerposition nach Konfigurationsänderungen wiederherstellen (3c9fc6b, b/362353672)

Version 1.1.0-alpha03

18. September 2024

androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha03 wird veröffentlicht. Version 1.1.0-alpha03 enthält diese Commits.

Version 1.1.0-alpha02

4. September 2024

androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha02 wird veröffentlicht. Version 1.1.0-alpha02 enthält diese Commits.

Neue Funktionen

  • Die Anpassung von Bewegungen (I0bf9c, I80e66) wird unterstützt, damit Entwickler die Standardbewegungen bei adaptiven Änderungen des Gerüststatus ändern können. Makers können aus einer Reihe von Standardübergängen für das Ein- und Ausblenden wählen oder mit den Informationen, die über neue Bewegungsbereiche bereitgestellt werden, rein benutzerdefinierte Übergänge implementieren.
  • Einblendeanimation für Ziehpunkte zum Maximieren des Bereichs implementieren (46e3c69)
  • Gespeicherte PaneExpansionState können jetzt gespeichert werden (61ff76f)

API-Änderungen

  • Fehlende APIs zum Maximieren von Bereichen zu Gerüsten hinzufügen (Ic5bc0)
  • ThreePaneScaffoldDestinationItem.content wurde in contentKey umbenannt. Das Standardtypargument für rememberListDetailPaneScaffoldNavigator und rememberSupportingPaneScaffoldNavigator wurde von Nothing in Any geändert. (I58749)
  • ThreePaneScaffoldState als stabil markieren (I64aec)
  • Parameter für Ziehpunktbereich festlegen (Ic0aa2)

Version 1.1.0-alpha01

21. August 2024

androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha01 wird veröffentlicht. Version 1.1.0-alpha01 enthält diese Commits.

Neue Funktionen

  • Unterstützung für die Bereichserweiterung von adaptiven Scaffolds wird eingeführt.

API-Änderungen

  • Einführung von APIs zum Maximieren von Bereichen für die Öffentlichkeit (I301d6)
  • ThreePaneScaffoldState wurde eingeführt, um Wertübergänge im Steuerfeld zu steuern. Es wurden Überladungen von ListDetailPaneScaffold und SupportingPaneScaffold hinzugefügt, die diesen Status akzeptieren. (I5db3b)
  • Einführung der Taste zum Maximieren des Bereichs und der Schnittstelle für den Schlüsselanbieter (Id621f)

Fehlerkorrekturen

  • Falsche Partitionsberechnung bei ausgeschlossenen Scharnieren korrigiert. (9dfd483)

Compose Material3 Adaptive Version 1.0

Version 1.0.0

4. September 2024

androidx.compose.material3.adaptive:adaptive-*:1.0.0 wird veröffentlicht. Version 1.0.0 enthält diese Commits.

Wichtige Funktionen von Version 1.0.0

Version 1.0.0-rc01

21. August 2024

androidx.compose.material3.adaptive:adaptive-*:1.0.0-rc01 wird veröffentlicht. Version 1.0.0-rc01 enthält diese Commits.

Fehlerkorrekturen

  • Falsche Partitionsberechnung bei ausgeschlossenen Scharnieren korrigiert. (9dfd483)

Version 1.0.0-beta04

26. Juni 2024

androidx.compose.material3.adaptive:adaptive-*:1.0.0-beta04 wird veröffentlicht. Version 1.0.0-beta04 enthält diese Commits.

Fehlerkorrekturen

  • Das Problem wurde behoben, dass das Layout nicht entsprechend aktualisiert wurde, wenn die Scharniergrenzen aktualisiert wurden. (71e9cf1)

Version 1.0.0-beta03

12. Juni 2024

androidx.compose.material3.adaptive:adaptive-*:1.0.0-beta03 wird veröffentlicht. Version 1.0.0-beta03 enthält diese Commits.

Fehlerkorrekturen

  • Behebt Abstürze, die durch eine falsche Abhängigkeitsauflösung in Beta 02 verursacht wurden.

Version 1.0.0-beta02

29. Mai 2024

androidx.compose.material3.adaptive:adaptive-*:1.0.0-beta02 wird veröffentlicht. Version 1.0.0-beta02 enthält diese Commits.

Version 1.0.0-beta01

14. Mai 2024

androidx.compose.material3.adaptive:adaptive-*:1.0.0-beta01 wird veröffentlicht. Version 1.0.0-beta01 enthält diese Commits.

Version 1.0.0-alpha12

1. Mai 2024

androidx.compose.material3.adaptive:adaptive-*:1.0.0-alpha12 wird veröffentlicht. Version 1.0.0-alpha12 enthält diese Commits.

API-Änderungen

  • isFlat-Informationen zu HingeInfo hinzufügen (Ie0516, b/333784198)
  • Adaptive APIs nicht mehr als experimentell kennzeichnen (I1d038)
  • Adaptive Layout APIs nicht mehr als experimentell kennzeichnen (Id23df)
  • BackNavigationBehavior wurde von einer Enumeration in eine Wertklasse (Id8757) geändert.

Fehlerkorrekturen

  • Übergangsbruch in Lambda ändern (I6f5a9)
  • Problem mit dem Ausgangszustand von SizeTracker beheben (18326a9)
  • Scharnierliste in Posture-Gleichheitsprüfung einbeziehen (6687137)

Version 1.0.0-alpha11

17. April 2024

androidx.compose.material3.adaptive:adaptive-*:1.0.0-alpha11 wird veröffentlicht. Version 1.0.0-alpha11 enthält diese Commits.

API-Änderungen

  • Scope-Schnittstellen versiegeln (Iefa57)
  • Stelle AnimatedPaneScope vor. (I62d73, b/332750742)
  • Sorgen Sie dafür, dass AdaptStrategy versiegelt und stabil ist. (Ia28b2)
  • Eine Kopiermethode für PaneScaffoldDirective einführen. (I9291f)
  • ThreePaneScaffoldScope als experimentell markieren (I9d527)
  • Stellen Sie benutzerfreundliche Scaffold-APIs bereit, die die Navigation unterstützen. (I263f0, b/321010778)

Version 1.0.0-alpha10

3. April 2024

androidx.compose.material3.adaptive:adaptive-*:1.0.0-alpha10 wird veröffentlicht. Version 1.0.0-alpha10 enthält diese Commits.

API-Änderungen

  • Die bevorzugte Standardbreite soll adaptiv und anpassbar sein. (Ic3abc)
  • Benennen Sie die Berechnungsfunktionen für Gerüstdirektiven um. (I10855)
  • Entfernen Sie das Padding und die Insets aus den Scaffold-APIs. (I786f8)
  • Fügen Sie Methoden zum Speichern des Navigators ohne generische Typen hinzu. (I607c3)

Version 1.0.0-alpha09

20. März 2024

androidx.compose.material3.adaptive:adaptive-*:1.0.0-alpha09 wird veröffentlicht. Version 1.0.0-alpha09 enthält diese Commits.

API-Änderungen

  • Fügen Sie ThreePaneScaffoldScope Felder für Statusübergänge hinzu. (I3d917)
  • Gerüstparameter neu anordnen (I4dff5)
  • Geben Sie den Standardwert des Parameter des Modifikators AnimatedPane an. (I77dd7)

Fehlerkorrekturen

  • Die Größe des Trennzeichens in die Bewegungen des Bereichs einbeziehen. (a3174ca)

Version 1.0.0-alpha08

6. März 2024

androidx.compose.material3.adaptive:adaptive-*:1.0.0-alpha08 wird veröffentlicht. Version 1.0.0-alpha08 enthält diese Commits.

Neue Funktionen

  • Verzögertes Einblenden beim Wechseln von Bereichen implementieren. (I1a38e)

API-Änderungen

  • Die ThreePaneScaffoldState-Schnittstelle wurde entfernt. (I63f23)

Version 1.0.0-alpha07

21. Februar 2024