Material 3 – Adaptiv zusammenstellen

  
Mit der adaptiven Material 3-Bibliothek können Sie adaptive Benutzeroberflächen erstellen, die sich automatisch an die aktuellen Fensterkonfigurationen wie Fenstergrößenklassen oder Gerätepositionen anpassen. Die Bibliothek bietet sowohl Standard-Scaffold-Implementierungen als auch die erforderlichen Baustein-Kompositionen, um eigene benutzerdefinierte Funktionen zu erstellen.
Letzte Aktualisierung Stabile Version Release Candidate Beta-Ausgabe Alphaversion
12. Dezember 2024 1.0.0 - - 1.1.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 erforderlichen Artefakte hinzu:

Cool

dependencies {
    implementation "androidx.compose.material3.adaptive:adaptive:1.1.0-alpha02"
    implementation "androidx.compose.material3.adaptive:adaptive-layout:1.1.0-alpha02"
    implementation "androidx.compose.material3.adaptive:adaptive-navigation:1.1.0-alpha02"
}

Kotlin

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

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

Feedback

Ihr Feedback hilft uns, Jetpack zu verbessern. Bitte teilen Sie uns mit, wenn Sie neue Probleme feststellen 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 einem vorhandenen Problem Ihre Stimme geben, indem Sie auf die Schaltfläche mit dem Stern klicken.

Neues Problem erstellen

Weitere Informationen finden Sie in der Dokumentation zum Issue Tracker.

Material3 Adaptive Version 1.1 erstellen

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() freigeben (I2d6b7)
  • Entfernen Sie PaneScaffoldMotionScope und machen Sie es zu einem Feld unter PaneScaffoldTransitionScope. Benennen Sie sie außerdem in PaneScaffoldMotionDataProvider um und entfernen Sie den Zugriff auf die zugrunde liegende Datenstruktur von PaneMotionData. Stellen Sie stattdessen Getter- und Looping-Methoden für den Zugriff auf die Daten bereit. (Id8884)
  • Überschreibungsmechanismus für ThreePaneScaffold erstellen, um Sideloading-Implementierungen für verschiedene Formfaktoren zu unterstützen. (I5280f)
  • Der Status der Ansichtserweiterung 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

  • Die Implementierung des Ziehpunkts in der adaptiven Bibliothek wurde entfernt. Wir empfehlen stattdessen die M3-Version. Außerdem wird eine Modifikation eingeführt, mit der sich der Bereich durch Ziehen des bereitgestellten Drag-Handle-Elements maximieren lässt. Verstecken Sie auch DraggableState als Implementierungsdetail, damit wir es bei Bedarf später ändern können. (Ib50cd)
  • Der Einstiegspunkt für die Anpassung der Fensterbewegung wurde gemäß UX-Recherchefeedback von den Stützfunktionen zu AnimatedPane verschoben. (I10f72)
  • Einführung der Unterstützung für Wischaktionen und benutzerdefinierte Animationsspezifikationen für die Ansichtserweiterung. (Ie207d, b/362584341)

Fehlerkorrekturen

  • Behebung von Problemen mit der Vorhersage von Rückgaben bei Stornierungen (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 Navigationsparameter in navigierbaren Scaffolds in generische Typen. (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

  • Einführung einer Klasse für Animationsspezifikationen, um ein einheitlicheres Bewegungsverhalten und eine zukünftige Erweiterung 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 teilweise Navigationszustände zu unterstützen (z.B. die Vorhersage von Rückschritten). (I5a651, b/359616816)
  • MutableThreePaneScaffoldState wurde hinzugefügt, um den Übergang zwischen Scaffold-Werten zu steuern. Die vorhandene ThreePaneScaffoldState wurde schreibgeschützt. (Idb3c6)
  • Standardimplementierungen für die Ansichtsbewegung freigeben (I95a7b)
  • Es ist jetzt möglich, den Anfangsanker des Zustands der Ansichtserweiterung festzulegen (Ie41b3, b/362350560)

Fehlerkorrekturen

  • Mindestgröße des Touch-Ziels für den Ziehpunkt auf 48 × 48 dp festlegen (7ce6635, b/366018217)
  • Angedockte Position 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 Creator die Standardbewegungen bei Änderungen des Status des adaptiven Scaffolds ändern können. Creator können aus einer Reihe von Standardübergängen für den Beginn und das Ende von Videos auswählen oder benutzerdefinierte Übergänge mit den Informationen aus den neuen Bewegungsbereichen implementieren.
  • Einblendungsanimation für die Ziehpunkte zum Maximieren von Bereichen implementieren (46e3c69)
  • Gespeicherte PaneExpansionState können gespeichert werden (61ff76f)

API-Änderungen

  • Scaffolds fehlende APIs für die Fenstererweiterung 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 Ziehpunkte auf bestimmte Bereiche beschränken (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 Erweiterung von Bereichen in adaptiven Scaffolds.

API-Änderungen

  • Einführung der APIs zur Bereichserweiterung (I301d6)
  • Einführung von ThreePaneScaffoldState zum Steuern von Wertübergängen im Steuerfeld. Es wurden Überladungen von ListDetailPaneScaffold und SupportingPaneScaffold hinzugefügt, die diesen Status akzeptieren. (I5db3b)
  • Einführung des Bereichserweiterungsschlüssels und der Schlüsselanbieteroberfläche (Id621f)

Fehlerkorrekturen

  • Fehler bei der Partitionsberechnung beheben, wenn ein ausgenommenes Scharnier vorhanden ist (9dfd483)

Material3 Adaptive Version 1.0 erstellen

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 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

  • Fehler bei der Partitionsberechnung beheben, wenn ein ausgenommenes Scharnier vorhanden ist (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

  • Behebung von Abstürzen, die durch eine falsche Abhängigkeitsauflösung in beta02 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)
  • APIs für adaptive Layouts nicht mehr als experimentell kennzeichnen (Id23df)
  • BackNavigationBehavior wurde von einer Enumeration in eine Werteklasse geändert (Id8757)

Fehlerkorrekturen

  • Übergangsbruch in ein Lambda ändern (I6f5a9)
  • Problem mit dem Anfangsstatus von SizeTracker behoben (18326a9)
  • Scharnierliste in die Gleichheitsprüfung für Posture 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

  • Bereichsschnittstellen versiegeln. (Iefa57)
  • AnimatedPaneScope vorstellen. (I62d73, b/332750742)
  • Achten Sie darauf, dass AdaptStrategy versiegelt und stabil ist. (Ia28b2)
  • Einführung einer Kopiermethode für PaneScaffoldDirective (I9291f)
  • ThreePaneScaffoldScope als experimentell markieren (I9d527)
  • Bieten Sie nutzerfreundliche Scaffold-APIs, 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 Standard-bevorzugte Breite soll anpassbar und adaptiv sein. (Ic3abc)
  • Benennen Sie die Berechnungsfunktionen der Skript-Direktive um. (I10855)
  • Entfernen Sie Ränder und Einzüge aus Scaffold-APIs. (I786f8)
  • Fügen Sie Methoden zum Speichern von Navigationselementen 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 Statusübergangsfelder hinzu. (I3d917)
  • Scaffold-Parameter neu anordnen (I4dff5)
  • Geben Sie den Standardwert des AnimatedPane-Modifikatorparameters an. (I77dd7)

Fehlerkorrekturen

  • Berücksichtigen Sie die Größe des Abstands bei den Bereichsbewegungen. (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

  • Implementieren Sie eine verzögerte Ansicht beim Wechseln der Bereiche. (I1a38e)

API-Änderungen

  • Die ThreePaneScaffoldState-Benutzeroberfläche wurde entfernt. (I63f23)

Version 1.0.0-alpha07

21. Februar 2024