Wear Composer

  
Jetpack Compose-Anwendungen für Wearable-Geräte schreiben, indem Funktionen zur Unterstützung bestimmter am Körper tragbarer Geräte, Größen, Formen und Navigationsgesten.
Letzte Aktualisierung Stabile Version Releasekandidat Beta-Ausgabe Alpha-Release
4. September 2024 1.4.0 - - 1.5.0-alpha01

Abhängigkeiten deklarieren

Um eine Wear-Abhängigkeit hinzuzufügen, musst du das Maven-Repository von Google zu deinem Projekt arbeiten. Maven-Repository von Google lesen .

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

Cool

dependencies {
    implementation "androidx.wear.compose:compose-foundation:1.4.0"

    // For Wear Material Design UX guidelines and specifications
    implementation "androidx.wear.compose:compose-material:1.4.0"

    // For integration between Wear Compose and Androidx Navigation libraries
    implementation "androidx.wear.compose:compose-navigation:1.4.0"

    // For Wear preview annotations
    implementation("androidx.wear.compose:compose-ui-tooling:1.4.0")
    
    // NOTE: DO NOT INCLUDE a dependency on androidx.compose.material:material.
    // androidx.wear.compose:compose-material is designed as a replacement
    // not an addition to androidx.compose.material:material.
    // If there are features from that you feel are missing from
    // androidx.wear.compose:compose-material please raise a bug to let us know.
}

Kotlin

dependencies {
    implementation("androidx.wear.compose:compose-foundation:1.4.0")

    // For Wear Material Design UX guidelines and specifications
    implementation("androidx.wear.compose:compose-material:1.4.0")

    // For integration between Wear Compose and Androidx Navigation libraries
    implementation("androidx.wear.compose:compose-navigation:1.4.0")
    
    // For Wear preview annotations
    implementation("androidx.wear.compose:compose-ui-tooling:1.4.0")

    // NOTE: DO NOT INCLUDE a dependency on androidx.compose.material:material.
    // androidx.wear.compose:compose-material is designed as a replacement
    // not an addition to androidx.compose.material:material.
    // If there are features from that you feel are missing from
    // androidx.wear.compose:compose-material please raise a bug to let us know.
}

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

Feedback

Dein Feedback hilft uns, Jetpack zu verbessern. Teilen Sie uns mit, wenn Sie neue Ausgaben entdecken oder zur Verbesserung dieser Bibliothek. In der bestehende Probleme in dieser Bibliothek, bevor Sie eine neue erstellen. So können Sie für ein vorhandenes Problem abstimmen: indem Sie auf die Sternschaltfläche klicken.

Neues Problem erstellen

Weitere Informationen finden Sie in der Dokumentation zur Problemverfolgung. .

Wear Compose Material3 Version 1.0

Version 1.0.0-alpha24

4. September 2024

androidx.wear.compose:compose-material3:1.0.0-alpha24 wurde veröffentlicht. Version 1.0.0-alpha24 enthält diese Commits.

API-Änderungen

  • Wir haben dem Design Material3 ein Bewegungsschema hinzugefügt. Sie wird von Komponenten in der Bibliothek verwendet, um Animationsspezifikationen wie Federn für ausdrucksstarke Bewegungen anzuwenden. (I54ff3)
  • Wir haben der Material3-Bibliothek AppScaffold- und ScreenScaffold-Komponenten hinzugefügt, die Funktionen zur Koordinierung von Ebenen und Übergängen von TimeText und ScrollIndicator enthalten. AppScaffold stellt eine oberste Ebene von Scaffold-Komponenten bereit, die auf allen Bildschirmen platziert werden. Wenn du also TimeText zum AppScaffold hinzufügst, bleibt es an der richtigen Stelle, auch wenn du zwischen den Bildschirmen wischst. Die Bildschirme können den Zeittext überschreiben oder ausblenden. ScreenScaffold stellt einen Slot für ScrollIndicator bereit und animiert beim Scrollen automatisch die Scroll-Anzeige, einschließlich eines Zeitlimits, um die Scroll-Anzeige nach Inaktivität auszublenden. (I047d6)
  • Wir haben ScrollIndicator mit dem neuen Material3-Design hinzugefügt. Die Miniaturansicht basiert auf dem ursprünglichen Listeninhalt, um Größenschwankungen zu vermeiden, wenn verzögerte Inhalte in die Liste geladen werden. (IC228d)
  • Wir haben die ScrollAway API so geändert, dass ScreenStage eine Wertklasse anstelle einer enum-Klasse ist, damit in Zukunft bei Bedarf zusätzliche Phasen hinzugefügt werden können. (I48c93)
  • Wir haben EdgeButton hinzugefügt, eine auffällige Wear-spezifische Schaltfläche mit einer Form, die der Krümmung am unteren Displayrand folgt (I16369).
  • Wir haben dem ScreenScaffold eine neue Anzeigenfläche für eine untere Schaltfläche (z. B. EdgeButton) hinzugefügt, die angezeigt wird und je nach scrollbarem Inhalt seine Größe ändert (I032eb).
  • Wir haben Modifier.scrollTransform und Modifier.targetMorphingHeight hinzugefügt, um Material3-Bewegungseffekte zu Elementen in LazyColumn hinzuzufügen. (Ie229a)
  • Wir haben SegmentedCircularProgressIndicator als Variante für CircularProgressIndicator hinzugefügt. Bei der segmentierten Variante wird entweder ein einzelner Fortschrittswert für alle Segmente angezeigt oder für jedes Segment wird „Ein“ oder „Aus“ angezeigt. (I6e059)
  • Wir haben LinearProgressIndicator als Alternative zur vorhandenen CircularProgressIndicator hinzugefügt. (I89182)
  • Wir haben AlertDialog hinzugefügt. Mit diesen Layouts können Nutzer wichtige Aufforderungen präsentieren. Variationen werden entweder für ein Paar Bestätigungs-/Schließen-Schaltflächen oder für eine einzelne untere Schaltfläche (in der Regel eine Edge-Schaltfläche) unter einem Stapel von Optionen enthalten. Beide Varianten verfügen über Anzeigenflächen für Symbol, Titel und zusätzlichen Text zur Angabe weiterer Details. (Ieb873)
  • Wir haben OpenOnPhoneDialog hinzugefügt, um auf eine Aktion hinzuweisen, die auf dem Smartphone des Nutzers fortgesetzt wird. OpenOnPhoneDialog wird nach einem bestimmten Zeitlimit geschlossen. (I978fd)
  • Wir haben Confirmation hinzugefügt, eine Dialogkomponente, die Flächen für ein Symbol und entweder gebogenen oder linearen Text enthält. Für Erfolgs-/Misserfolgsmeldungen werden spezielle Variationen angegeben. Bestätigungen werden nach einer Zeitüberschreitung automatisch geschlossen. (Ib43e8)
  • Wir haben TimeText einen Hintergrund hinzugefügt, um Probleme zu beheben, bei denen sich die zugrunde liegenden Inhalte und die TimeText überschneiden und die Zeit verdeckt wurde. (Ia11fd)
  • Wir haben LevelIndicator hinzugefügt. Es zeigt den Wert einer Einstellung wie z. B. der Lautstärke an und kann mit der vorhandenen Stepper-Komponente verwendet werden, um einen Lautstärkebildschirm zu erstellen. LevelIndicator ähnelt ScrollIndicator, wird aber auf der gegenüberliegenden Seite des Bildschirms angezeigt und hat standardmäßig eine breitere Strichbreite und eine andere Indikatorfarbe. (I8a4ac)
  • Wir haben TimePicker hinzugefügt, mit Layouts für die 24-Stunden-Zeit (mit oder ohne Sekunden) oder die 12-Stunden-Zeit mit der Wahl zwischen AM/PM. (Ia5124)
  • Wir haben DatePicker mit einer Konfiguration für die Spaltensortierung (d.h. Tag-Monat-Jahr, Monat-Tag-Jahr oder Jahr-Monat-Tag) und optionalen Mindest-/Maximaldaten hinzugefügt. (Ibf13b)
  • Wir haben der Funktion text der TimeText einen Gewichtungsparameter hinzugefügt. Wenn TimeText aus mehr als einem Textelement besteht, können Sie so steuern, wie der Raum verteilt wird. (I36700)
  • Wir haben RadioButton und SplitRadioButton hinzugefügt. Diese Komponenten vereinfachen die vorherige API, indem sie sowohl das (Split)SelectableButton-Element und das untergeordnete Optionsfeld (If7ae8) kombinieren.
  • Wir haben CheckboxButton und SplitCheckboxButton hinzugefügt. Diese Komponenten vereinfachen die vorherige API, indem sie sowohl das (Aufteilen) ToggleButton als auch das untergeordnete Kästchen-Steuerelement (Ia8f70) kombinieren.
  • Wir haben SwitchButton und SplitSwitchButton hinzugefügt. Diese Komponenten vereinfachen die vorherige API, indem sie sowohl die (Split)ToggleButton als auch die untergeordnete Schaltersteuerung (I0d349) kombinieren.
  • Wir haben die Dokumentation zu AnimatedText aktualisiert, um das Überschreitungsverhalten zu erläutern. (Iff30a)
  • Wir haben ButtonGroup hinzugefügt, um 2 oder 3 Schaltflächen zu kombinieren, sodass durch Tastendruck eine koordinierte Animation erzeugt wird. (Ie27db)
  • Beim Drücken wurde eine optionale Formanimation für IconButton und TextButton hinzugefügt. (Iffca5)
  • Wir haben Button, IconButton, TextButton, CompactButton und EdgeButton (I65fc3) eine weitere Farbvariante hinzugefügt: FilledVariant.
  • Wir haben den Parameter forcedSize zu ImageWithScrimPainter hinzugefügt, damit Hintergründe für Schaltflächenbilder jetzt standardmäßig ihre Komponentengröße beibehalten. Wenn Sie für forcedSize = null festlegen, wird stattdessen das Painter.instrinsicSize verwendet. (Ic57af)
  • Wir haben den Schaltflächen (Ib613d) die Langklick-Funktion hinzugefügt.
  • In IconButton und TextButton werden jetzt auch lange Klicks unterstützt. (I38891)
  • Infokarten werden jetzt auch lange Klicks unterstützt. (I305d5)
  • Wir haben LocalTextMaxLines, LocalTextAlign und LocalTextOverflow als CompositionLocals hinzugefügt und sie als Standardparameter für Text verwendet. Die lokalen Kompositionen können jetzt von Komponenten wie CheckboxButton, SwitchButton und RadioButton verwendet werden, um UX-Richtlinien zu implementieren. Die Parameter können jedoch bei Bedarf von Entwicklern überschrieben werden. (Iab841)
  • Wir haben Placeholder hinzugefügt, um die Maskierung des Inhalts von Komponenten wie Schaltflächen und werden, bis die Daten geladen sind. (I1a532)
  • Wir haben IconToggleButtonColors und TextToggleButtonColors hinzugefügt, um die jetzt entfernte ToggleButtonColors zu ersetzen. (Ie0bf1)

Fehlerkorrekturen

  • Wir haben Button, FilledTonalButton, OutlinedButton, ChildButton, CompactButton aktualisiert, um die neuen CompositionLocals LocalTextMaxLines, LocalTextAlign und LocalTextOverflow zu verwenden, um UX-Richtlinien zu implementieren. Diese Parameter können bei Bedarf direkt von Entwicklern im Textformat überschrieben werden (Ie51f7).
  • Wir haben die Standardstrichbreite von LevelIndicator in 6dp geändert, um sie von der ScrollIndicator mit einer Strichbreite von 4dp zu unterscheiden. (If6f63)
  • Wir haben ein Problem in TimeText behoben, sodass größere Erledigungswinkel unterstützt werden. (Ie489f)
  • Ein Problem bei der Neuzusammensetzung von EdgeButton wurde behoben. (I4cdca)
  • Das Layout der Ein-/Aus-Schaltflächen zum Teilen wurde korrigiert, wenn ein benutzerdefinierter Inhaltsabstand angegeben wird. (Ia33d3)
  • Kleine Fortschrittswerte wurden auf mindestens die Linienbreite der Fortschrittsanzeige aufgerundet. (I3bd84)

Version 1.0.0-alpha23

14. Mai 2024

androidx.wear.compose:compose-material3:1.0.0-alpha23 wurde veröffentlicht. Version 1.0.0-alpha23 enthält diese Commits.

API-Änderungen

  • Wir haben die APIs ToggleButton und RadioButton so aktualisiert, dass deaktivierte Farben konfiguriert werden können. (If13a7)
  • Wir haben eine neue CircularProgressIndicator für Material3 hinzugefügt. (Ib3bd7)

Fehlerkorrekturen

  • Wir haben einen Fehler behoben, bei dem auswählbare Schaltflächen zum Umschalten doppelt angetippt wurden, wenn sie bereits ausgewählt waren. (I7ed88)

Version 1.0.0-alpha22

1. Mai 2024

androidx.wear.compose:compose-material3:1.0.0-alpha22 wurde veröffentlicht. Version 1.0.0-alpha22 enthält diese Commits.

API-Änderungen

  • Wir haben die Material3-ColorScheme aktualisiert. (I7b2b8)
  • Wir haben den Material3 Switch aktualisiert. Neben einigen Farbänderungen ist das Häkchen nun mit dem des Kästchens identisch. (Icac7b)

Fehlerkorrekturen

  • Aktualisieren Sie alle Integrationsdemos, um den neuen rotaryScrollable-Modifikator zu verwenden. (I25090)

Version 1.0.0-alpha21

17. April 2024

androidx.wear.compose:compose-material3:1.0.0-alpha21 wurde veröffentlicht. Version 1.0.0-alpha21 enthält diese Commits.

  • Dieser Release wurde aufgrund eines technischen Problems in der vorherigen Version ausgelöst, durch das JAR-Quelldateien fehlten. In dieser Version gibt es keine neuen Commits.

Version 1.0.0-alpha20

3. April 2024

androidx.wear.compose:compose-material3:1.0.0-alpha20 wurde veröffentlicht. Version 1.0.0-alpha20 enthält diese Commits.

Fehlerkorrekturen

  • Wir haben die Alphas bei gedrückter und fokussierter Welle für den Kontrast angepasst. (I59f0a)
  • Wir haben den Abstand zwischen primären und sekundären Labels in Button, ToggleButton und RadioButton gemäß den neuesten Änderungen an Typografie und Zeilenhöhe hinzugefügt. (I2c0ba)

Version 1.0.0-alpha19

6. März 2024

androidx.wear.compose:compose-material3:1.0.0-alpha19 wurde veröffentlicht. Version 1.0.0-alpha19 enthält diese Commits.

API-Änderungen

  • Wir haben der Wear Compose Material3-Bibliothek TimeText hinzugefügt. Diese Komponente zeigt die aktuelle Uhrzeit und den zusätzlichen Status oben auf dem Bildschirm an. Die neue, prägnante Material3 API vermeidet Duplikate zwischen linearen und gekrümmten Inhalten. (I4d7c3)
  • Wir haben die Parameternamen für RadioButton von onSelected zu onSelect aktualisiert. (I1a971)
  • Tokenisieren Sie RadioButton und SplitRadioButton und refaktorieren Sie außerdem die vorhandenen Methoden, um die Anzahl der CompositionLocal-Suchen zu reduzieren. Dazu werden im Cache gespeicherte Farbinstanzen hinzugefügt und die Methoden von RadioButtonColors und SplitRadioButtonColors intern verwendet. (I02b33)

Version 1.0.0-alpha18

21. Februar 2024

androidx.wear.compose:compose-material3:1.0.0-alpha18 wurde veröffentlicht. Version 1.0.0-alpha18 enthält diese Commits.

API-Änderungen

  • Wir haben das Standardmuster für CardColors, ToggleButtonColors und SplitToggleButtonColors umgestaltet, indem intern im Cache gespeicherte Instanzen erstellt und die Nutzung von CompositionLocal reduziert wurde. (If3fec)

Version 1.0.0-alpha17

7. Februar 2024

androidx.wear.compose:compose-material3:1.0.0-alpha17 wurde veröffentlicht. Version 1.0.0-alpha17 enthält diese Commits.

API-Änderungen

  • Wir haben die Button API so aktualisiert, dass standardmäßig buttonColors verwendet wird, und das doppelte filledButtonColors entfernt. (I4fe3b)
  • Wir haben die Standardmuster für ButtonColors, IconButtonColors und TextButtonColors umgestaltet, indem intern eine im Cache gespeicherte Instanz erstellt und die Nutzung von CompositionLocal reduziert wurde. (I5f51c)
  • Wir haben den Aufwand für rememberUpdatedState in komponentenspezifischen Farbklassen entfernt und Zugriffsmethoden innerhalb von Farbklassen als intern gekennzeichnet. (If6571)

Fehlerkorrekturen

  • Wir haben Modifier.minimumInteractiveComponentSize aktualisiert, sodass Modifier.node verwendet wird. (Iba6b7)

Version 1.0.0-alpha16

24. Januar 2024

androidx.wear.compose:compose-material3:1.0.0-alpha16 wurde veröffentlicht. Version 1.0.0-alpha16 enthält diese Commits.

Neue Funktionen

  • Wir haben CompactButton hinzugefügt, das dieselben gefüllten, ausgefüllten Ton- und Umrissfarben wie für die Schaltfläche verwenden kann.(I05df0)

API-Änderungen

  • Wir haben RadioButton/SplitRadioButton als Container für Auswahleinstellungen wie die Radiosteuerung hinzugefügt. Dies unterscheidet sich von der vorhandenen ToggleButton insofern, als RadioButton auswählbar ist (und innerhalb einer Auswahlgruppe ausgeführt wird), während ToggleButton umschaltbar ist (und unabhängig ist). (I61275)
  • Wir entfernen LocalContentAlpha aus der Wear Compose Material3-Bibliothek, um es an die Compose Material3-Bibliothek anzupassen. (I49a0a)
  • Wear-Material und Wear Material3-Komponenten, für die eine MutableInteractionSource in ihrer API offengelegt wird, wurden aktualisiert. Jetzt ist eine MutableInteractionSource verfügbar, für die Nullwerte zulässig sind, die standardmäßig auf null gesetzt ist. Hier gibt es keine semantischen Änderungen: Wenn „null“ übergeben wird, bedeutet das, dass das MutableInteractionSource nicht gezogen werden soll. Es wird bei Bedarf innerhalb der Komponente erstellt. Wenn Sie den Wert auf null ändern, können einige Komponenten niemals ein MutableInteractionSource zuweisen. Andere Komponenten können eine Instanz nur bei Bedarf langsam erstellen, wodurch die Leistung dieser Komponenten verbessert wird. Wenn Sie die MutableInteractionSource nicht verwenden, die Sie an diese Komponenten übergeben, empfiehlt es sich, stattdessen null zu übergeben. Es wird auch empfohlen, ähnliche Änderungen an Ihren eigenen Komponenten vorzunehmen. (Ib90fc, b/298048146)
  • Fügt eine neue Ripple API in die Bibliotheken wear:compose-material und wear:compose-material3 hinzu, die die verworfene rememberRipple ersetzt. Außerdem wird eine temporäre CompositionLocal (LocalUseFallbackRippleImplementation) hinzugefügt, damit Material-Komponenten wieder die eingestellten rememberRipple/RippleTheme APIs verwenden. Diese Funktion wird in der nächsten stabilen Version entfernt und dient nur als vorübergehende Migrationshilfe für Fälle, in denen du eine benutzerdefinierte RippleTheme bereitstellst. Informationen zur Migration und weitere Hintergrundinformationen zu dieser Änderung findest du unter developer.android.com. (af92b21)
  • Wir haben kleinere Verbesserungen an der HorizontalPageIndicator API und der zugehörigen Dokumentation vorgenommen. (I60efc)
  • Wir haben ColorScheme so aktualisiert, dass sie unveränderlich ist. Einzelne Farbaktualisierungen sind jetzt weniger effizient, eine gebräuchliche Verwendung von Farben ist jedoch effizienter. Der Grund für diese Änderung ist, dass die Aktualisierung einzelner Farben bei den meisten Apps nicht in erster Linie erforderlich wäre. Dies ist immer noch möglich, aber es wird mehr als zuvor zusammengefügt. Im Gegenzug verringern wir die Anzahl der Statusabos durch den gesamten wesentlichen Code erheblich. Dies wirkt sich auf die Initialisierungs- und Laufzeitkosten von Standardanwendungsfällen aus. (Ibc2d6)
  • Die APIs ToggleButton und SplitToggleButton wurden aktualisiert, damit deaktivierte Farben angepasst werden können. Außerdem werden jetzt Material Design-Tokens für Farb- und Typografiewerte verwendet. (If087c)
  • Hintergrundfarben für Schaltflächenbild wurden aktualisiert, um Material Design-Tokens zu verwenden. (Iba215)
  • Wir haben die Komponenten Checkbox, Switch und RadioButton so geändert, dass sie schreibgeschützt sind, indem die Klickbehandlung entfernt wurde. Diese Komponenten sollen in der App „(Split)ToggleButton“ verwendet werden, in der Klicks verarbeitet werden. Deshalb sind die Komponenten jetzt klarer als reine Display-Komponenten gekennzeichnet und nicht für die eigenständige Verwendung unter Wear bestimmt. (I2322e)

Fehlerkorrekturen

  • Wir haben Tokens für Bewegungswerte für Dauer und Easing in Wear Compose Material 3 hinzugefügt. (I437cd)
  • Wir haben einen Fehler in ToggleButton, SplitToggleButton, Checkbox, Switch und RadioButton behoben, sodass Ankündigungen zur Barrierefreiheit nicht wiederholt werden (bisher wurden semantische Rollen dupliziert). (Ica281)
  • Wir haben die Materialcore-Ebene für CompactButton entfernt, um die Leistung zu verbessern. (7902858)

Version 1.0.0-alpha15

15. November 2023

androidx.wear.compose:compose-material3:1.0.0-alpha15 wurde veröffentlicht. Version 1.0.0-alpha15 enthält diese Commits.

API-Änderungen

  • Wir haben die Grundlagenebene SwipeToDismissBox in BasicSwipeToDismissBox umbenannt. Dadurch wird der Unterschied zwischen der Komponente auf der Basisebene und der SwipeToDismissBox auf Material3-Ebene deutlicher. Letzterer ruft Farben aus dem MaterialTheme ab, die in Scrums verwendet werden sollen, und delegiert die verbleibende Implementierung an BasicSwipeToDismissBox. (Ibecfc)

Fehlerkorrekturen

  • Wir haben die Material-Kernebene für die Material3-Schaltfläche entfernt, um die Leistung zu verbessern. (I55555)

Version 1.0.0-alpha14

18. Oktober 2023

androidx.wear.compose:compose-material3:1.0.0-alpha14 wurde veröffentlicht. Version 1.0.0-alpha14 enthält diese Commits.

API-Änderungen

  • Wir haben den Parameter indicatorStyle aus Material3 HorizontalPageIndicator entfernt. Er folgt stattdessen der Form des Gerätebildschirms (linear oder rund). (I83728)
  • Wir haben die Farben für SplitToggleButton von denen für ToggleButton getrennt, indem wir eine neue SplitToggleButtonColors-Klasse hinzugefügt haben. (I78bee)

Version 1.0.0-alpha13

4. Oktober 2023

androidx.wear.compose:compose-material3:1.0.0-alpha13 wurde veröffentlicht. Version 1.0.0-alpha13 enthält diese Commits.

API-Änderungen

  • Wir haben ein optionales Untertitelfeld zu TitleCard hinzugefügt. (Ifc45a)
  • Wir haben Material Design-Farbtokens für TextButton hinzugefügt. (I769dc)

Version 1.0.0-alpha12

20. September 2023

androidx.wear.compose:compose-material3:1.0.0-alpha12 wurde veröffentlicht. Version 1.0.0-alpha12 enthält diese Commits.

API-Änderungen

  • Wir haben IconButton aktualisiert, sodass Material Design-Tokens verwendet werden. (I3f137)
  • Wir haben IconToggleButton aktualisiert, sodass Material Design-Tokens verwendet werden. (I7d263)
  • Wir haben die Konstruktoren von CheckboxColors, RadioButtonColors und SwitchColors veröffentlicht. (I82b73)

Version 1.0.0-alpha11

6. September 2023

androidx.wear.compose:compose-material3:1.0.0-alpha11 wurde veröffentlicht. Version 1.0.0-alpha11 enthält diese Commits.

Fehlerkorrekturen

  • Wir haben die Typografie für Material3-Karten auf TitleMedium aktualisiert. (I597bd)
  • Wir haben die Typografie und Ausrichtung für Material3 ListHeader und ListSubheader aktualisiert. (Ib5ceb)

Version 1.0.0-alpha10

23. August 2023

androidx.wear.compose:compose-material3:1.0.0-alpha10 wurde veröffentlicht. Version 1.0.0-alpha10 enthält diese Commits.

Neue Funktionen

  • Füge „HorizontalPageIndicator“ in der Wear Material3-Mediathek hinzu. (Ifee99)

API-Änderungen

  • Aktualisiere Schaltflächen-Code, um Material3-Designtokens zu verwenden. (I92fe4)
  • Wear Material 3 Stepper und Slider APIs werden als experimentell deklariert, da die Details der Benutzeroberfläche noch nicht fertiggestellt sind. (I84d54)
  • Wir haben die ExtraSmall-Größen aus den runden TextButton und TextToggleButton entfernt, da diese Größe nur für IconButton gilt. (Ibc7d5)

Fehlerkorrekturen

  • Wir haben die Richtlinien zur Typografie für TextToggleButton so aktualisiert, dass „LabelLarge“ für LargeButtonSize (Ib10fa) verwendet wird
  • Wir haben die Richtlinien zur Typografie für TextButton so aktualisiert, dass „LabelLarge“ für LargeButtonSize verwendet wird (I8f3a7).
  • Wir haben das minimale Berührungsziel der Karte für eine bessere Barrierefreiheit auf 48 dp festgelegt. (Ieb9b1)
  • Demokarte mit AppCard mit Bild hinzufügen, Demokarte mit AppCard mit Hintergrund wird entfernt (Id735f)
  • Ein Fehler bei runden Schaltflächen wurde behoben, bei denen Modifikatoren nicht richtig verkettet wurden. (I5e162)

Version 1.0.0-alpha09

9. August 2023

androidx.wear.compose:compose-material3:1.0.0-alpha09 wurde veröffentlicht. Version 1.0.0-alpha09 enthält diese Commits.

Neue Funktionen

  • Wir haben ToggleButton für material3 (I6bed6) hinzugefügt.

API-Änderungen

  • Wir haben die Annotation FloatRange als API-Einschränkungen aktiviert , die zuvor in den Kommentaren angegeben wurden. (Icb401)
  • Wir haben die Typografie für Wear Material3 so aktualisiert, dass sie den aktuellen Material3-Richtlinien entspricht. (I1bad6)

Fehlerkorrekturen

  • Wir haben die Farben für Button, IconButton und TextButton an das Design von Material3 angepasst. (Ib2495)
  • Die Sichtbarkeit von Kästchenmarkierungen im deaktivierten Status wurde korrigiert. (Ib25bf)

Version 1.0.0-alpha08

26. Juli 2023

androidx.wear.compose:compose-material3:1.0.0-alpha08 wurde veröffentlicht. Version 1.0.0-alpha08 enthält diese Commits.

Neue Funktionen

  • Wir haben die folgenden Auswahlsteuerelemente für Material3 hinzugefügt: Switch, Checkbox, RadioButton. (Ib918c)
  • Wir haben IconToggleButton und TextToggleButton zu Material3 hinzugefügt, einer runden Ein-/Aus-Schaltfläche mit einem einzelnen Slot für Symbol bzw. Text. Für verschiedene Größen von ToggleButton empfehlen wir die Verwendung von Modifier.touchTargetAwareSize mit den Größen, die auf den jeweiligen Ein/Aus-Schaltflächen angegeben sind. (I9f015)
  • Wir haben ListHeader und ListSubheader zu unseren Material3-Komponenten hinzugefügt. (Ibaefe)
  • Wir haben Material3 SwipeToDismissBox hinzugefügt, das die neue Foundation SwipeToDismissBox heißt und Standardfarbwerte aus seinem Design bereitstellt. (I275fb)
  • Wir haben das Material3-InlineSlider zu Wear Compose hinzugefügt. Nutzende können einen Wertebereich auswählen. Der Auswahlbereich wird als Balken zwischen den Mindest- und Höchstwerten des Bereichs angezeigt, aus dem Nutzer einen einzelnen Wert auswählen können. InlineSlider ist ideal zum Anpassen von Einstellungen wie Lautstärke oder Helligkeit. (I7085f)

API-Änderungen

  • Wir haben das Design „Formen in Wear Material 3“ aktualisiert, sodass jetzt RoundedCornerShape anstelle von Form verwendet wird. (Idb133)
  • Wir haben die Höhenkonstanten für die Schaltfläche veröffentlicht (Idbfde).
  • API-Dateien wurden aktualisiert, um mit Anmerkungen zur Unterdrückung der Kompatibilität zu versehen (I8e87a, b/287516207)
  • Wir haben InlineSliderColors in Wear Compose Material 3 mit einem öffentlichen Konstruktor und öffentlichen Properties aktualisiert. (I6b632)
  • Wir haben alle Farbklassen in Wear Compose Material 3 so aktualisiert, dass sie öffentliche Konstruktoren und öffentliche Eigenschaften enthalten. (I17702)
  • Wir haben die Konstanten für die horizontale und vertikale Auffüllung der Schaltfläche öffentlich gemacht. (Ieeaf7)

Fehlerkorrekturen

  • Die Höhe der Schaltfläche wird jetzt bei Bedarf an Inhalte angepasst, die aufgrund großer Schriftgrößen größer geworden sind (Iaf302).
  • Wir haben einige Schaltflächen-Demos aktualisiert, um Probleme mit der Barrierefreiheit zu beheben. (I61ce9)
  • Stepper und InlineSlider unterstützen jetzt wiederholte Klicks bei langem Drücken. Sie können den Wert von Stepper und InlineSlider jetzt schnell erhöhen oder verringern, indem Sie die Plus- oder Minustasten (I27359) gedrückt halten.

Version 1.0.0-alpha07

21. Juni 2023

androidx.wear.compose:compose-material3:1.0.0-alpha07 wurde veröffentlicht. Version 1.0.0-alpha07 enthält diese Commits.

Neue Funktionen

  • Wir haben der Bibliothek „Compose for Wear OS Material 3“ die Komponente „Stepper“ hinzugefügt. Dies ist ähnlich wie bei der vorherigen Material-Version, allerdings wird die Bereichssemantik standardmäßig weggelassen. Wir stellen Modifier.rangeSemantics für Fälle bereit, in denen eine Bereichssemantik erforderlich ist. (IC39fd)
  • Wir haben der Bibliothek „Compose for Wear OS Material 3“ curvedText hinzugefügt. (Ia8ae3)

Fehlerkorrekturen

  • Wir haben wear.compose.foundation auf eine API-Abhängigkeit von wear.compose.material3 aktualisiert (I72004, b/285404743).

Version 1.0.0-alpha06

7. Juni 2023

androidx.wear.compose:compose-material3:1.0.0-alpha06 wurde veröffentlicht. Version 1.0.0-alpha06 enthält diese Commits.

Fehlerkorrekturen

  • Wir haben TextButton aktualisiert, um die Erweiterungsfunktion toDisabledColor für korrekte deaktivierte Alphawerte zu verwenden. (I814c8)

Version 1.0.0-alpha05

24. Mai 2023

androidx.wear.compose:compose-material3:1.0.0-alpha05 wurde veröffentlicht. Version 1.0.0-alpha05 enthält diese Commits.

Neue Funktionen

  • Wir haben TextButton zu Material3 hinzugefügt, einer runden Schaltfläche mit einem einzigen Slot für Text. Für verschiedene Größen von TextButton empfehlen wir die Verwendung von Modifier.touchTargetAwareSize und ExtraSmallButtonSize, SmallButtonSize, DefaultButtonSize und LargeButtonSizeIcon in TextButtonDefaults. Die Standardeinstellung TextButton hat keinen Rahmen und einen transparenten Hintergrund für Aktionen mit geringer Betonung. Für Aktionen, die eine hohe Betonung erfordern, verwende filledTextButtonColors. Legen Sie für eine mittlere Betonung (TextButton mit Kontur) den Rahmen auf ButtonDefaults.outlinedButtonBorder fest. Um einen Mittelweg zwischen umrissen und ausgefüllt zu erhalten, verwenden Sie filledTonalTextButtonColors. (I667e4)
  • Wir haben der Wear Compose Material3-Bibliothek Card, OutlinedCard, AppCard und TitleCard hinzugefügt. AppCard und TitleCard können auch mithilfe von CardDefaults.outlinedCardColors und CardDefaults.outlinedCardBorder(I80e72) wie umrissen dargestellt werden.

API-Änderungen

  • Wir haben den Parameter „Button“-Label an das Ende verschoben, um die nachgestellte Lambda-Syntax zu unterstützen, und den Parameter „role“ entfernt, da dieser mit Modifier.semantics überschrieben werden kann. ButtonColors-Konstruktoren sind jetzt öffentlich. (IE1b6d)

Version 1.0.0-alpha04

10. Mai 2023

androidx.wear.compose:compose-material3:1.0.0-alpha04 wurde veröffentlicht. Version 1.0.0-alpha04 enthält diese Commits.

Neue Funktionen

  • Wir haben IconButton zu Material3 hinzugefügt, einer runden Schaltfläche mit einem einzelnen Slot für Symbol/Bild. Es gibt vier Varianten: IconButton, FilledIconButton, FilledTonalIconButton und OutlinedIconButton. Für verschiedene Größen von IconButton empfehlen wir die Verwendung von Modifier.touchTargetAwareSize und ExtraSmallButtonSize, SmallButtonSize, DefaultButtonSize und LargeButtonSizeIcon in IconButtonDefaults. Außerdem geben wir IconButtonDefaults.iconSizeFor an, um die empfohlene Symbolgröße für eine bestimmte Schaltflächengröße zu bestimmen. (I721d4)

Version 1.0.0-alpha03

19. April 2023

androidx.wear.compose:compose-material3:1.0.0-alpha03 wurde veröffentlicht. Version 1.0.0-alpha03 enthält diese Commits.

API-Änderungen

  • Wir haben die Schaltflächenkomponente "Material 3" hinzugefügt. Das ist unsere stadionförmige Schaltfläche, die in der Wear Compose Material-Bibliothek früher "Chip" hieß. Aus Gründen der Einheitlichkeit mit der Bibliothek "Compose Material 3" wurde sie in Button umbenannt. Die Standardschaltfläche hat einen ausgefüllten Hintergrund und es gibt Schaltflächenvariationen für FilledTonal (stumm geschalteter Hintergrund), Umriss (transparent mit dünnem Rahmen) und Child (transparenter Hintergrund und kein Rahmen, die für ergänzende Aktionen mit geringfügig sichtbarer Auffälligkeit verwendet werden). Die runden Schaltflächen für einfache Symbol- und Textinhalte werden in einer zukünftigen Version folgen (Ia6942).

Version 1.0.0-alpha02

5. April 2023

androidx.wear.compose:compose-material3:1.0.0-alpha02 wurde veröffentlicht. Version 1.0.0-alpha02 enthält diese Commits.

Fehlerkorrekturen

  • Wir haben eine DefaultTextStyle zu Wear Compose Material 3 hinzugefügt, wodurch PlatformTextStyle.includeFontPadding standardmäßig auf „true“ gesetzt ist (die aktuelle Einstellung). Auf diese Weise können wir in Zukunft die standardmäßige Deaktivierung des Schriftabstands mit den Texterstellungsbibliotheken synchronisieren (siehe Schriftabstand in „Compose“ für den Hintergrund korrigieren). (I7e461)

Version 1.0.0-alpha01

22. März 2023

androidx.wear.compose:compose-material3:1.0.0-alpha01 wurde veröffentlicht. Version 1.0.0-alpha01 enthält diese Commits.

Neue Funktionen

  • Material 3 ist die nächste Weiterentwicklung des Material Design und umfasst aktualisierte Designs und neu gestaltete Komponenten. Material 3 in Wear Compose wurde so entwickelt, dass es mit der Material 3 Compose-Bibliothek unter Android kohärent ist. Diese erste Alphaversion enthält frühe, funktionale Implementierungen des folgenden Elements:

    • Materialdesign: Konfiguriert Farbschema, Typografie und Formen über alle Komponenten der Bibliothek hinweg einheitlich. Beim Thema Material3 wurden die Farben überarbeitet, die einen barrierefreien Kontrast unterstützen. (I84005)
    • Text/Symbol – Bausteine für Wear Compose-Apps (I8e06a)
  • Wir werden Wear Material (androidx.wear.compose:compose-material) und Wear Material 3 (androidx.wear.compose:compose-material3) parallel weiter entwickeln. In zukünftigen Material3-Releases wird das Widget-Set um weitere bekannte Komponenten aus Compose for Wear OS erweitert, z. B. Schaltflächen, Auswahlelemente und Schieberegler.

  • Die Wear Material- und Wear Material 3-Bibliotheken schließen sich gegenseitig aus und sollten nicht in derselben App gemischt werden, hauptsächlich, weil sie auf unterschiedliche Themen verweisen, was zu unerwarteten Inkonsistenzen führen würde.

Wear Compose Version 1.5

Version 1.5.0-alpha01

4. September 2024

androidx.wear.compose:compose-*:1.5.0-alpha01 wurde veröffentlicht. Version 1.5.0-alpha01 enthält diese Commits.

API-Änderungen

  • Wir haben der Wear Compose Foundation-Bibliothek eine neue LazyColumn mit den zugehörigen LazyColumnState- und LazyColumnScope-APIs hinzugefügt. Dies dient als Grundlage für die Erstellung anpassbarer Skalierungs- und Morphing-Effekte mit Wear Compose. (Ib3b22)
  • Wir haben LazyColumnScope als Teil der neuen LazyColumn API eine indexierte Version von itemsIndexed hinzugefügt. (Ib4a57)
  • Wir haben LazyColumn-Modifikatoren hinzugefügt, um Skalierungs- und Morphing-Verhaltensweisen zu unterstützen. (Ie229a)
  • HierarchicalFocusCoordinator wurde auf die stabile Ebene hochgestuft. (I31035)
  • Bei gebogenem Text wird jetzt der Buchstabenabstand unterstützt. (I3c740)
  • Der Parameter rotationLocked wurde zu CurvedLayout.curvedComposable hinzugefügt, um das Drehen von Komponenten zu stoppen. (I66898)
  • Die temporäre LocalUseFallbackRippleImplementation API aus Verschleißmaterial und Verschleißmaterial3 wurde entfernt (I62282).
  • WearDevices.SQUARE wurde aus der Multi-Vorschau-Version von @WearPreviewDevices (I11c02) entfernt.

Fehlerkorrekturen

  • SwipeToReveal positioniert die eingeblendeten Elemente jetzt im sichtbaren Teil des Bildschirms. Das ist hilfreich, wenn SwipeToReveal in einer Liste verwendet wird. Die Elemente können dann immer interagieren und verbleiben nicht außerhalb des Bildschirms. (I38929)
  • SwipeToReveal setzt lastActionType jetzt auf „None“, wenn animatedTo abgeschlossen ist. (I59b03)
  • Die Dokumentation für den neuen rotationLocked-Parameter in curvedComposable wurde verbessert. (Ifbd57)
  • Ein Absturz bei der Übergabe von NaN an die performFling von ScalingLazyColumnSnapFlingBehavior wurde behoben. (IC13DA)
  • Der Fehler beim Modifizierer für die Größe des gebogenen Layouts (I0fedf) wurde behoben.
  • Wir unterstützen jetzt den mit "sp" angegebenen Buchstabenabstand. (I9f6e3)
  • Wir haben einen Fehler im Material2-Dialogfeld behoben, bei dem der onDismissRequest-Callback nicht aufgerufen wurde, als das Dialogfeld unsichtbar wurde (I64656).
  • LayoutCoordinates.introducesFrameOfReference wurde in LayoutCoordinates.introducesMotionFrameOfReference umbenannt, um den Zweck besser widerzuspiegeln. Die zugehörige Funktion wurde umbenannt, um Koordinaten basierend auf dieser Markierung zu berechnen. (I3a330)

Version 1.4

Version 1.4.0

4. September 2024

androidx.wear.compose:compose-*:1.4.0 wurde veröffentlicht. Version 1.4.0 enthält diese Commits.

Wichtige Änderungen seit Version 1.3.0

  • ScalingLazyColumn und Picker unterstützen jetzt standardmäßig den Drehknopf. Es wird empfohlen, die explizite Drehbewegung zu entfernen und auf das Standardsystemverhalten zu übertragen. Konfigurieren Sie bei Bedarf mit dem Parameter rotaryScrollableBehavior entweder das Scroll- oder das Andocken. Für das Andockverhalten wird empfohlen, Funktionen zum Andocken und Scrollen durch Berührung mithilfe des Parameters flingBehavior bereitzustellen.
  • Modifier.rotaryScrollable ist ein neuer Modifikator, der drehbare Ereignisse mit scrollbaren Containern verbindet. So können Nutzer auf ihrem Wear OS-Gerät über eine Krone oder einen drehbaren Rand scrollen.
  • SwipeDismissableNavHost bietet jetzt eine Einstiegsanimation für In-App-Übergänge.
  • PositionIndicator wird jetzt standardmäßig beim ersten Aufrufen eines Bildschirms angezeigt.

Weitere Änderungen

Version 1.4.0-rc01

21. August 2024

androidx.wear.compose:compose-*:1.4.0-rc01 wurde veröffentlicht. Version 1.4.0-rc01 enthält diese Commits.

  • Wir haben die Compose-Abhängigkeiten auf 1.7.0-rc01 aktualisiert und die Wear Compose-Navigation an androidx.lifecycle 2.8.3 angepinnt.

Version 1.4.0-beta03

12. Juni 2024

androidx.wear.compose:compose-*:1.4.0-beta03 wurde veröffentlicht. Version 1.4.0-beta03 enthält diese Commits.

Fehlerkorrekturen

  • Wir haben Modifier.rotaryScrollable aktualisiert, um die Verwendung von „focusable“ durch „focusTarget“ zu ersetzen. (ID294b)
  • Wir haben ein Problem behoben, bei dem die ProgressIndicator unter „TalkBack“ wiederholt angezeigt wurde. (I94563)
  • Wir haben die Basisprofile der Wear Compose-Bibliothek aktualisiert. (I3cbc3)

Version 1.4.0-beta02

29. Mai 2024

androidx.wear.compose:compose-*:1.4.0-beta02 wurde veröffentlicht. Version 1.4.0-beta02 enthält diese Commits.

Fehlerkorrekturen

  • Wir haben die Begrenzungsbreite, die an Screenreader übergeben wird, von gebogenem Text erhöht, um Probleme beim Abschneiden zu beheben (Id865f).
  • Wir haben die Begrenzung von HorizontalPageIndicator beschränkt, die an Screenreader übergeben wurde. Zuvor belegte der Indikator den gesamten Bildschirm (Id8d7a).

Version 1.4.0-beta01

14. Mai 2024

androidx.wear.compose:compose-*:1.4.0-beta01 wurde veröffentlicht. Version 1.4.0-beta01 enthält diese Commits.

Die Version 1.4-beta01 von Compose für Wear OS gibt an, dass dieser Release der Bibliothek vollständig ist und die API gesperrt ist (sofern nicht als experimentell gekennzeichnet). Wear Compose 1.4 enthält die folgenden neuen Funktionen:

  • Wir haben Modifier.rotaryScrollable hinzugefügt, einen neuen Modifikator, der drehbare Ereignisse mit scrollbaren Containern verbindet. So können Nutzer auf ihrem Wear OS-Gerät über eine Krone oder einen drehbaren Rand scrollen. Außerdem unterstützen ScalingLazyColumn und Picker jetzt standardmäßig den Drehknopf. Mit dem Parameter rotaryScrollableBehavior können Sie das Scroll- oder Andockverhalten konfigurieren. Für das Andocken wird empfohlen, das Andocken über den Parameter flingBehavior sowie für das Scrollen durch Berührung bereitzustellen.
  • SwipeDismissableNavHost bietet jetzt eine Einstiegsanimation für In-App-Übergänge.
  • PositionIndicator wird jetzt standardmäßig beim ersten Aufrufen eines Bildschirms angezeigt.
  • SelectableChip und SplitSelectableChip wurden als Variante zu ToggleChip hinzugefügt – verwenden Sie dies mit RadioButton, um eine auswählbare Semantik anstelle einer ein-/ausschaltbaren Semantik für die Barrierefreiheit bereitzustellen
  • ListHeader unterstützt jetzt Höhenanpassungen, wenn Inhalte für große Schriftgrößen zusätzliche Höhe benötigen.

Fehlerkorrekturen

  • Wir haben einen Fehler behoben, bei dem bei auswählbaren Chips das Umschalten durch Doppeltippen angesagt wurde, wenn sie bereits ausgewählt waren. (I7ed88)

Version 1.4.0-alpha08

1. Mai 2024

androidx.wear.compose:compose-*:1.4.0-alpha08 wurde veröffentlicht. Version 1.4.0-alpha08 enthält diese Commits.

API-Änderungen

  • Wir haben folgende Änderungen an der neuen Rotary API vorgenommen: Modifier.rotary wurde in Modifier.rotaryScrollable umbenannt. Die RotaryBehavior-Schnittstelle wurde in RotaryScrollableBehavior und ihre Funktion handleScrollEvent in performScroll umbenannt. hat RotaryScrollableAdapter in RotaryScrollableLayoutInfoProvider umbenannt und die Property scrollableState entfernt. (I0c8a6)
  • Wir haben zusätzliche Änderungen an der Rotary API vorgenommen: RotaryScrollableLayoutInfoProvider wurde in RotarySnapLayoutInfoProvider umbenannt, da dieser Anbieter nur für Drehgeräte mit Ausrichtung benötigt wird. hat den Typ des Parameters snapOffset in RotaryScrollableDefaults.snapBehavior snapOffset von „Int“ zu „Dp“ geändert. (Iddebe)
  • Wir haben den clickInteractionSource-Parameter auf SplitSelectableChip in containerInteractionSource umbenannt. (Ia8f84)
  • Wir haben die Namen der Callback-Parameter für Klicks für SplitSelectableChip von onClick zu onSelectionClick und von onBodyClick in onContainerClick geändert. (I32237)

Fehlerkorrekturen

  • Wir haben den horizontalen Abstand für PositionIndicator auf 2 dp (vorher 5 dp) aktualisiert, um einen Fehler zu beheben, bei dem sich PositionIndicator (Bildlaufleiste) scrollbarer Inhalte überschneidet. Hinweis: Durch den geänderten Abstand werden vorhandene Screenshots, die PositionIndicator enthalten, voraussichtlich nicht mehr funktionieren. (I57472)
  • Wir haben die Dokumentation für das neue Rotary API verbessert, indem die Unterschiede zwischen hochauflösenden drehbaren Geräten beschrieben werden. (I63abe)
  • Wir haben in SwipeDismissableNavHost eine Ausnahme außerhalb des Bereichs behoben, die ausgelöst werden könnte, wenn interpolierte Alphawerte kleiner als null waren. (Ib75a1, b/335782510)

Version 1.4.0-alpha07

17. April 2024

androidx.wear.compose:compose-*:1.4.0-alpha07 wurde veröffentlicht. Version 1.4.0-alpha07 enthält diese Commits.

API-Änderungen

  • Wir haben Modifier.rotary hinzugefügt, einen neuen Modifikator, der drehbare Ereignisse mit scrollbaren Containern verbindet. So können Nutzer auf ihrem Wear OS-Gerät über eine Krone oder einen drehbaren Rand scrollen. Darüber hinaus unterstützen ScalingLazyColumn und Picker jetzt standardmäßig die Drehknopfeingabe mit neuen Überlastungen, die den Parameter rotaryBehavior enthalten, um die Konfiguration von Scrollen oder Andocken anzugeben. Wenn der Parameter rotaryBehavior auf Andocken eingestellt ist, empfiehlt es sich, auch den Parameter flingBehavior für das Andocken durch Berührung einzurichten. (I2ef6f)
  • NestedScroll-Quellen „Ziehen und Ziehen“ werden durch UserInput und SideEffect ersetzt, um die erweiterte Definition dieser Quellen zu ermöglichen, die jetzt Animationen (Nebeneffekt) sowie Mausrad und Tastatur (UserInput) umfassen. (I40579)
  • Wir haben SelectableChip und SplitSelectableChip hinzugefügt, um die Unterscheidung zwischen Ein-/Aus-Schaltflächen wie Switch/Checkbox und auswählbaren Steuerelementen wie RadioButton zu verdeutlichen. Dies ersetzt die zuvor hinzugefügten Überlastungen von ToggleChip/SplitToggleChip durch selectionControl-Parameter. (Ia0217)
  • Der Sichtbarkeitsmodifikator von IndeterminateStrokeWidth in ProgressIndicatorDefaults wurde zu „Öffentlich“ geändert. (I5b5a4)

Version 1.4.0-alpha06

3. April 2024

androidx.wear.compose:compose-*:1.4.0-alpha06 wurde veröffentlicht. Version 1.4.0-alpha06 enthält diese Commits.

Fehlerkorrekturen

  • Im Rahmen der größeren Bemühungen, das Verhalten von Rotary von Horologist zu AndroidX zu migrieren, haben wir einen internen Entwurf für die Rotary-Unterstützung hinzugefügt. (I617d1)
  • Wir haben im Rahmen der größeren Bemühungen, das Verhalten von Rotary von Horologist zu AndroidX zu migrieren, einen internen Entwurf für die haptische Unterstützung hinzugefügt. (I5568a)

Version 1.4.0-alpha05

20. März 2024

androidx.wear.compose:compose-*:1.4.0-alpha05 wurde veröffentlicht. Version 1.4.0-alpha05 enthält diese Commits.

API-Änderungen

  • Die Properties initialCenterItemIndex und initialCenterItemScrollOffset von ScalingLazyListState wurden veröffentlicht. (I0c616)
  • Die FullScreenStrokeWidth von ProgressIndicatorDefaults wurde veröffentlicht. (Ibea23)

Fehlerkorrekturen

  • Wir haben die Leistung von PositionIndicator verbessert, indem die Anzahl der Aufrufe von layoutInfo von ScalingLazyColumn reduziert wird. (Idc83d)

Version 1.4.0-alpha04

6. März 2024

androidx.wear.compose:compose-*:1.4.0-alpha04 wurde veröffentlicht. Version 1.4.0-alpha04 enthält diese Commits.

API-Änderungen

  • Wir haben eine neue Überlastung für ToggleChip und SplitToggleChip hinzugefügt, die einen selectionControl-Parameter anstelle des toggleControl-Parameters verwendet. Sollte mit dem Steuerelement RadioButton verwendet werden, um eine auswählbare Semantik anstelle einer ein-/ausschaltbaren Semantik für die Barrierefreiheit bereitzustellen (I1d6d9).
  • Die Parameternamen für die neue selectionControl-Überlastung wurden für ToggleChip und SplitToggleChip (I1a971) von onSelected auf onSelect aktualisiert.

Version 1.4.0-alpha03

21. Februar 2024

androidx.wear.compose:compose-*:1.4.0-alpha03 wurde veröffentlicht. Version 1.4.0-alpha03 enthält diese Commits.

API-Änderungen

  • Der Modifier.inspectable-Wrapper wurde eingestellt. Diese API führt zu mehr Entwertungen als notwendig, weshalb von ihrer Verwendung abgeraten wird. Entwicklern wird empfohlen, die inspectableProperties()-Methode auf ModifierNodeElement zu implementieren, wenn sie Tools Modifikatoreigenschaften zur Verfügung stellen möchten. (Ib3236)

Fehlerkorrekturen

  • Wir haben einen Dokumentationsfehler für WearPreview*-Annotationen behoben. (Id526d)

Version 1.4.0-alpha02

7. Februar 2024

androidx.wear.compose:compose-*:1.4.0-alpha02 wurde veröffentlicht. Version 1.4.0-alpha02 enthält diese Commits.

Fehlerkorrekturen

  • Wir haben einen Fehler beim Anzeigen zum Einblenden durch Wischen behoben. Es war möglich, mit einer zugesicherten Aktion für ein Element zu interagieren und diese abzubrechen, indem das Wischen über ein anderes Element begonnen wurde. (Ide059)
  • Wir haben die ListHeader aktualisiert. Sie unterstützt jetzt Höhenanpassungen für Inhalte, die für große Schriftgrößen eine größere Höhe erfordern. (I7290c, b/251166127)

Version 1.4.0-alpha01

24. Januar 2024

androidx.wear.compose:compose-*:1.4.0-alpha01 wurde veröffentlicht. Version 1.4.0-alpha01 enthält diese Commits.

Neue Funktionen

  • Wir haben SwipeDismissableNavHost eine Eingabeanimation für In-App-Übergänge hinzugefügt (cfeb79a).
  • PositionIndicator wird jetzt standardmäßig beim ersten Aufrufen eines Bildschirms angezeigt. Diese Änderung wurde eingeführt, um die Wear-Qualitätsrichtlinien zu erfüllen. Leider bedeutet dies, dass Screenshot-Tests auf Bildschirmen mit PositionIndicator aktualisiert werden müssen, da PositionIndicator zuvor nicht angezeigt worden war. (419cef7)

API-Änderungen

  • Wir haben den Bibliotheken wear:compose-material und wear:compose-material3 eine neue Ripple API hinzugefügt, die die eingestellte rememberRipple ersetzt. Außerdem wird eine temporäre CompositionLocal (LocalUseFallbackRippleImplementation) hinzugefügt, damit Material-Komponenten wieder die eingestellten rememberRipple/RippleTheme APIs verwenden. Diese Funktion wird in der nächsten stabilen Version entfernt und dient nur als vorübergehende Migrationshilfe für Fälle, in denen du eine benutzerdefinierte RippleTheme bereitstellst. Informationen zur Migration und weitere Hintergrundinformationen zu dieser Änderung findest du unter developer.android.com. (af92b21)
  • Wir haben ColorScheme so aktualisiert, dass sie unveränderlich ist. Einzelne Farbaktualisierungen sind jetzt weniger effizient, eine gebräuchliche Verwendung von Farben ist jedoch effizienter. Der Grund für diese Änderung ist, dass die Aktualisierung einzelner Farben bei den meisten Apps nicht in erster Linie erforderlich wäre. Dies ist immer noch möglich, aber es wird mehr als zuvor zusammengefügt. Im Gegenzug verringern wir die Anzahl der Statusabos durch den gesamten wesentlichen Code erheblich, was sich auf die Initialisierungs- und Laufzeitkosten von Standardanwendungsfällen auswirkt. (f5c48b7)
  • Wear-Material und Wear-Material3-Komponenten, die eine MutableInteractionSource in ihrer API offenlegen, wurden aktualisiert. Jetzt ist eine MutableInteractionSource verfügbar, für die Nullwerte zulässig sind, die standardmäßig auf null gesetzt ist. Hier gibt es keine semantischen Änderungen: Wenn „null“ übergeben wird, bedeutet das, dass das MutableInteractionSource nicht gezogen werden soll. Es wird bei Bedarf innerhalb der Komponente erstellt. Wenn Sie den Wert auf null ändern, können einige Komponenten niemals ein MutableInteractionSource zuweisen. Andere Komponenten können eine Instanz nur bei Bedarf langsam erstellen, wodurch die Leistung dieser Komponenten verbessert wird. Wenn Sie die MutableInteractionSource nicht verwenden, die Sie an diese Komponenten übergeben, empfiehlt es sich, stattdessen null zu übergeben. Es wird auch empfohlen, ähnliche Änderungen an Ihren eigenen Komponenten vorzunehmen. (f8fa920)
  • rememberExpandableState wurde aktualisiert, um den maximierbaren Status zu speichern. Dadurch werden die Daten gespeichert, wenn Sie zu einem anderen Bildschirm wechseln, und wiederhergestellt werden, wenn Sie zum ursprünglichen Bildschirm zurückkehren. (5c80095)

Fehlerkorrekturen

  • Wir haben die ReduceMotion-Einstellung aktualisiert, um einen Lebenszyklus-bewussten Listener zu verwenden. (7c6b122)
  • Wir haben den Listener von TouchExplorationStateProvider aktualisiert, um den Lebenszyklus zu berücksichtigen (be28b01).
  • Wir haben die Materialcore-Ebene für CompactButton entfernt, um die Leistung zu verbessern (25db8e9).
  • BasicSwipeToDismissBox wurde gegenüber NaN-Offsets robuster gemacht, um Ausnahmen zu vermeiden (b983739).
  • Wir haben BasicSwipeToDismissBox aktualisiert, damit Alphawerte im Bereich 0,1 liegen
  • Wir haben einen Fehler in ToggleButton, SplitToggleButton, Checkbox, Switch und RadioButton behoben, sodass Ankündigungen zur Barrierefreiheit nicht wiederholt werden (bisher wurden semantische Rollen dupliziert) (d11eeb7).

Version 1.3

Version 1.3.1

3. April 2024

androidx.wear.compose:compose-*:1.3.1 wurde veröffentlicht. Version 1.3.1 enthält diese Commits.

Fehlerkorrekturen

  • Wir haben einen Fehler in der Funktion zum Anzeigen durch Wischen behoben, bei der es möglich war, mit einer Aktion, für die ein Commit durchgeführt wurde, zu interagieren und diese abzubrechen, indem mit dem Wischen über ein anderes Element begonnen wurde. (Ide059)

Version 1.3.0

24. Januar 2024

androidx.wear.compose:compose-*:1.3.0 wurde veröffentlicht. Version 1.3.0 enthält diese Commits.

Wichtige Änderungen seit Version 1.2.0

  • Die Klasse SwipeToDismissBoxState, die SwipeToDismissValue-Aufzählung und die Erweiterungsfunktion Modifier.edgeSwipeToDismiss sind jetzt beide Teil des androidx.wear.compose.foundation-Pakets und nicht mehr des androidx.wear.compose.material-Pakets. Mit dieser aktualisierten Architektur können Sie die Gestenhandhabung unabhängig von anderen Designüberlegungen implementieren. Material Design-Workflows, wie das Anwenden von Farben aus einem konfigurierten Design, werden separat verarbeitet.
  • Mit den Klassen SwipeToRevealCard und SwipeToRevealChip können Sie recommended swipe-to-reveal guidance implementieren. Die Klasse SwipeToRevealSample zeigt, wie diese Komponenten verwendet werden.
  • In unserer Version 1.3.0-alpha02 wurde eine Änderung eingeführt, die dazu führt, dass die Objekte Chip und ToggleChip vergrößert werden, um die vom Nutzer ausgewählte Schriftskalierung besser zu unterstützen. Dies kann dazu führen, dass einige Clips abgeschnitten werden. Um dieses Problem zu beheben, verwendet die Form large für MaterialTheme jetzt einen größeren Eckenradius (26 dp statt 24 dp). Chip- und ToggleChip-Objekte verwenden diesen neuen Eckenradius, um zu verhindern, dass Inhalte an den Ecken des Chips und ToggleChip abgeschnitten werden.

    • Die meisten Chips und ToggleChips sind aufgrund ihrer Standardhöhe von 52 dp unverändert. Chip- und ToggleChip-Objekte, die mehrere Zeilen primären oder sekundären Labeltexts enthalten oder bei denen die Höhe überschrieben wurde, können jedoch zu Fehlern bei Screenshot-Tests führen.

Weitere Änderungen

Eine vollständigere Übersicht der Änderungen in Version 1.3.0 finden Sie in den Versionshinweisen zu Betaversion 01.

Empfehlungen für die Implementierung

  • Wenn Nutzer in Ihrer App um den Bildschirminhalt schwenken können, z. B. in einer kartenbasierten App, deaktivieren Sie die Wischgeste, indem Sie userSwipeEnabled in der zusammensetzbaren Funktion SwipeDismissableNavHost auf false setzen und eine Schaltfläche einfügen, über die Nutzer zum vorherigen Bildschirm wechseln können.
  • Verwenden Sie ein SnapSpec-Objekt, um Animationen für eine Positionsanzeige während Einblendungs- und Positionsänderungsanimationen innerhalb einer Scrollliste zu deaktivieren.
  • Während Sie warten, bis eine Medien-App Inhalte für die Wiedergabe lädt, wird eine leere Placeholder-Zusammensetzbare Funktion angezeigt.
  • Wenn Sie eine Sammlung erweiterbarer Elemente bei Bedarf erstellen möchten, können Sie die experimentelle Klasse ExpandableStateMapping verwenden.

Version 1.3.0-rc01

10. Januar 2024

androidx.wear.compose:compose-*:1.3.0-rc01 wurde veröffentlicht. Version 1.3.0-rc01 enthält diese Commits.

Fehlerkorrekturen

  • Wir haben die große Form „MaterialTheme“ so aktualisiert, dass sie einen abgerundeten Eckenradius von 26 dp verwendet. Dieser wird jetzt von Chip und ToggleChip verwendet. Diese Änderung ist erforderlich, um Höhenanpassungen zu unterstützen, wenn Inhalte eine größere Höhe für große Schriftgrößen benötigen. Andernfalls schneidet die vorhandene Stadionform einige Textinhalte ab.

    <ph type="x-smartling-placeholder">
    </ph> Text an Ecken abgeschnitten
    Abbildung 1: Text an den Ecken abgeschnitten.
    <ph type="x-smartling-placeholder">
    </ph> Text nicht abgeschnitten
    Abbildung 2: Text nicht abgeschnitten.

    Diese Änderung kann zu Fehlern bei den Screenshot-Tests führen. (I2e6ae)

Version 1.3.0-beta02

13. Dezember 2023

androidx.wear.compose:compose-*:1.3.0-beta02 wurde veröffentlicht. Version 1.3.0-beta02 enthält diese Commits.

Fehlerkorrekturen

  • Wir haben die beabsichtigte Wischbewegung in BasicSwipeToDismissBox wiederhergestellt. Dies wurde in einer früheren Version so geändert, dass der gleitende Teil des Übergangs erfolgte, während der Finger den Bildschirm berührte. (Id8e76)

Version 1.3.0-beta01

15. November 2023

androidx.wear.compose:compose-*:1.3.0-beta01 wurde veröffentlicht. Version 1.3.0-beta01 enthält diese Commits.

Version 1.3-beta01 von Compose für Wear OS gibt an, dass der Release der Bibliothek vollständig und die API gesperrt ist (sofern nicht als experimentell gekennzeichnet). Wear Compose 1.3 bietet die folgenden neuen Funktionen:

  • SwipeToDismissBoxState, SwipeToDismissValue und Modifier.edgeSwipeToDismiss sowie die zugrunde liegende Implementierung zum Schließen durch Wischen von androidx.wear.compose.material zu androidx.wear.compose.foundation wurden in BasicSwipeToDismissBox migriert. Dadurch kann die Gestenhandhabung zum Schließen unabhängig von Material Design verwendet werden, z. B. über die SwipeDismissableNavHost in androidx.wear.compose.navigation. SwipeToDismissBox von androidx.wear.compose.material wird weiterhin für die Verwendung mit Material Design empfohlen, da es Farben aus MaterialTheme abruft und dann die verbleibende Implementierung an BasicSwipeToDismissBox delegiert.
  • SwipeDismissableNavHost unterstützt jetzt einen neuen userSwipeEnabled-Parameter, mit dem die Wischgeste für Bildschirme deaktiviert werden kann, auf denen sie nicht erforderlich ist.
  • BasicSwipeToDismissBox hat die Fokusbehandlung mit HierarchicalFocusCoordinator verbessert.
  • Für SwipeToReveal gibt es in Material neue zusammensetzbare Funktionen für SwipeToRevealCard und SwipeToRevealChip, die den empfohlenen UX-Richtlinien für Card und Chip entsprechen. Auch die Unterstützung der sekundären Aktion wird rückgängig gemacht.
  • DefaultTextStyle deaktiviert jetzt den Abstand zwischen Schriftarten, damit er auf der gesamten Android-Plattform einheitlich ist.
  • Chip und ToggleChip passen jetzt ihre Höhe an Inhalte an, die aufgrund großer Schriftarten für Barrierefreiheit größer geworden sind
  • PositionIndicator verfügt nun über individuelle Animationsspezifikationen für die Ein-, Aus- und Positionsanimationen. Aus Leistungsgründen empfehlen wir, das Ein- und Ausblenden sowie Positionsänderungen zu deaktivieren, wenn sie mit scrollbaren Listen verwendet werden.
  • ExpandableStateMapping bietet eine neue Möglichkeit, ExpandableStates zu generieren, wenn sie on demand und nicht unbedingt mit einem @Composable-Bereich erstellt werden müssen.
  • Placeholder ermöglicht jetzt das Zurücksetzen, wenn der Inhalt nicht mehr bereit ist. Außerdem wird die Einstellung zum Reduzieren von Bewegungen jetzt auf den Schimmereffekt und die Wischbewegung bei Placeholder angewendet.

Bekannte Probleme

  • PositionIndicator wird beim ersten Aufrufen eines Bildschirms nicht angezeigt. Wir beabsichtigen, eine Änderung in einer frühen Alphaversion der Version 1.4 vorzunehmen, damit sie anfangs, jedoch ohne Animation angezeigt wird.

API-Änderungen

  • Wir haben die Grundlagenebene SwipeToDismissBox in BasicSwipeToDismissBox umbenannt. Dadurch wird der Unterschied zwischen der Komponente auf der Basisebene und der Materialebene SwipeToDismissBox deutlicher. Letzterer ruft Farben aus dem MaterialTheme ab, die in Scrums verwendet werden sollen, und delegiert die verbleibende Implementierung an BasicSwipeToDismissBox. (Ibecfc)
  • rememberExpandableStateMapping wurde als Test eingestuft und die Leistung von expandableItem verbessert. (I5f6bc)
  • Wir haben die Klasse SwipeToRevealAction in den Material SwipeToReveal Card und Chip APIs durch eine Slot-basierte API mit zusammensetzbaren Funktionen SwipeToRevealPrimaryAction, SwipeToRevealSecondaryAction und SwipeToRevealUndoAction ersetzt. Im Beispielcode finden Sie Beispiele für die Verwendung der neuen API. (Ia8943)
  • Die Animations-Flags PositionIndicator wurden durch AnimationSpec-Parameter ersetzt. Die einzelnen Animationen können deaktiviert werden, indem snap als AnimationSpec übergeben wird. (I6c523)

Fehlerkorrekturen

  • Wir haben einen Fehler behoben, der bei begrenzter Größe durch wenig gebogenen Text ausgelöst wurde (I50efe).
  • Wir haben einen möglichen NaN-Absturz im Zusammenhang mit curvedComposable (I970eb) behoben.
  • Wir haben die Entfernung der Highlights-Animation zu Positionsänderungen am PositionIndicator rückgängig gemacht. (Ieb424)
  • Wir haben die „Material-Kernschicht“ für „Material Chip“ entfernt, um seine Leistung zu verbessern. (If2dcb)

Version 1.3.0-alpha08

18. Oktober 2023

androidx.wear.compose:compose-*:1.3.0-alpha08 wurde veröffentlicht. Version 1.3.0-alpha08 enthält diese Commits.

API-Änderungen

  • Wir haben der Überlastung von PositionIndicator einzelne Flags hinzugefügt, um verschiedene Animationen zu steuern: showFadeInAnimation, showFadeOutAnimation und showPositionAnimation. Die vorherige API wurde verworfen und leitet Aufrufe an die neue weiter. Aus Leistungsgründen und aus Gründen der UX-Konsistenz empfehlen wir, die Flags showFadeInAnimation und showPositionAnimation zu deaktivieren, wenn PositionIndicator mit einer scrollbaren Liste verwendet wird. Wenn PositionIndicator als eigenständige Anzeige verwendet wird, z. B. zur Lautstärkeänderung, empfehlen wir, alle drei Animationen zu aktivieren. (I44294)
  • Wir haben Material SwipeToDismissBoxState, SwipeToDismissValue und edgeSwipeToDismiss nach der Migration der „Wischen zum Schließen“-Funktion zu wear.compose.foundation eingestellt. Bitte ersetzen Sie sie durch die entsprechenden wear.compose.foundation-Angaben. (Iee8c9)

Fehlerkorrekturen

  • Wir haben die Basisprofile für die Wear Compose-Grundlage, Material- und Navigationsbibliotheken aktualisiert. (Idb060)
  • Wir haben eine Verhaltensänderung für PositionIndicator rückgängig gemacht, die in einem früheren Änderungsprotokoll eingeführt wurde, sodass PositionIndicator beim ersten Einblenden eines Bildschirms animiert war. Wir planen, eine ähnliche Änderung in einer frühen Alphaversion der Version 1.4 vorzunehmen, sodass PositionIndicator anfänglich angezeigt wird, jedoch ohne Animation. (I41843)
  • Wir haben einige Leistungsprobleme in PositionIndicator behoben. (I1c654, b/302399827)
  • Wir haben die Leistung der Standardimplementierung des Anbieters für die Touchscreen-Erkundung so optimiert, dass auf dem State<Boolean> statt auf dem abgeleiteten Status beruhen. (Ieec4d)
  • Wir haben systemGestureExclusion-Rechtecke für Android 13 und höher festgelegt. (Ib1f4b)

Version 1.3.0-alpha07

4. Oktober 2023

androidx.wear.compose:compose-*:1.3.0-alpha07 wurde veröffentlicht. Version 1.3.0-alpha07 enthält diese Commits.

API-Änderungen

  • Wir haben einzelne Flags zu PositionIndicator hinzugefügt, um verschiedene Animationen zu steuern: showFadeInAnimation, showFadeOutAnimation und showPositionAnimation. Die vorherige API wurde verworfen und leitet Aufrufe an die neue weiter. Aus Leistungsgründen und aus Gründen der UX-Konsistenz empfehlen wir, die Flags showFadeInAnimation und showPositionAnimation zu deaktivieren, wenn PositionIndicator mit einer scrollbaren Liste verwendet wird. Wenn PositionIndicator als eigenständige Anzeige verwendet wird, z. B. zur Lautstärkeänderung, empfehlen wir, alle drei Animationen zu aktivieren. (Ia2d63)

Fehlerkorrekturen

  • Wir haben Verbesserungen an der Wischbewegung vorgenommen, um die Bewegung anzuzeigen. Dazu wurde dem primären Aktionstext eine Ausblendungsanimation hinzugefügt, die sekundäre Aktion wird ausgeblendet und die Symbolgröße bei vollständiger Ausweitung der Wischbewegung wurde geändert. (Ib7223)
  • Wir empfehlen, die Aktionen für „Zum Einblenden wischen“ barrierefrei zugänglich zu machen. Außerdem haben wir unseren Beispielen für „Zum Einblenden wischen“ benutzerdefinierte Bedienungshilfen hinzugefügt. (I42224)
  • Wir haben die Leistung von SwipeToDismissBox verbessert, einschließlich einer Refaktorierung, damit die ursprüngliche Logik keine Neuzusammensetzung auslöst. SwipeToDismissBox wird jetzt im Vollbildmodus dargestellt. (Ie0aa2)
  • Wir haben einen Fehler behoben, bei dem PositionIndicator fälschlicherweise verschwunden ist. (I2091a)
  • Die Leistung von PositionIndicator wurde durch die Optimierung der Neuzusammensetzung verbessert. Neue Flags zur Steuerung der Animationen (fadeIn, fadeOut und positionChange) wurden anschließend hinzugefügt (siehe API-Änderungen) (Ifac7d)
  • Wir haben MicroBenchmark-Tests für PositionIndicator hinzugefügt (Idf875).

Version 1.3.0-alpha06

20. September 2023

androidx.wear.compose:compose-*:1.3.0-alpha06 wurde veröffentlicht. Version 1.3.0-alpha06 enthält diese Commits.

Fehlerkorrekturen

  • Wir unterstützen jetzt Modifier.edgeSwipeToDismiss mit SwipeToReveal. (I95774, b/293444286)
  • Wir haben Beispiele für das Material SwipeToRevealChip und SwipeToRevealCard hinzugefügt. (Ieb974)
  • Wir haben die Basisprofile für Wear Compose Foundation und Material-Bibliotheken aktualisiert. (I1dd1f)

Version 1.3.0-alpha05

6. September 2023

androidx.wear.compose:compose-*:1.3.0-alpha05 wurde veröffentlicht. Version 1.3.0-alpha05 enthält diese Commits.

Fehlerkorrekturen

  • Wir haben unter „Zum Einblenden wischen“ eine Funktion hinzugefügt, mit der jeweils nur ein Element gewischt werden kann. (I3cd7a)
  • Die Dokumentation von ScalingLazyColumnDefaults wurde verbessert, damit sie besser dem tatsächlichen Verhalten entspricht. (I886d3)

Version 1.3.0-alpha04

23. August 2023

androidx.wear.compose:compose-*:1.3.0-alpha04 wurde veröffentlicht. Version 1.3.0-alpha04 enthält diese Commits.

Neue Funktionen

  • Die sekundäre Aktion SwipeToReveal wird jetzt rückgängig gemacht. (I7a22d)

API-Änderungen

  • Füge „HorizontalPageIndicator“ in der Wear Material3-Mediathek hinzu. (Ifee99)
  • Wear Compose-Vorschautools wurden aktualisiert, um die androidx.wear.tooling.preview-Mediathek zu verwenden. (Ib036e)

Fehlerkorrekturen

  • Ein Fehler bei runden Schaltflächen wurde behoben, bei denen Modifikatoren nicht richtig verkettet wurden. (I5e162)

Version 1.3.0-alpha03

9. August 2023

androidx.wear.compose:compose-*:1.3.0-alpha03 wurde veröffentlicht. Version 1.3.0-alpha03 enthält diese Commits.

API-Änderungen

  • Wir haben dem Material Design zwei neue zusammensetzbare Funktionen hinzugefügt, um SwipeToReveal mit Karten und Chips zu implementieren. Diese zusammensetzbaren Funktionen entsprechen den empfohlenen UX-Richtlinien für die Komponente und erleichtern es Entwicklern, SwipeToReveal mit den vorhandenen Komponenten in Wear Material zu implementieren. (I7ec65)
  • Wir haben die FloatRange-Annotationen als API-Einschränkungen aktiviert, die zuvor in den Kommentaren angegeben wurden. (Icb401)

Fehlerkorrekturen

  • Die anfängliche Scroll-Logik von ScalingLazyColumn wurde in onGloballyPositioned() verschoben. (Ic90f1)
  • Wir verwenden jetzt drawWithCache in PositionIndicator, ProgressIndicator und SelectionControls, um die Strichzuweisungen zu optimieren. (I5f225, b/288234617)
  • Die Sichtbarkeit von Kästchenmarkierungen im deaktivierten Status wurde korrigiert. (Ib25bf)
  • Wir haben Placeholder aktualisiert, damit der Platzhalter zurückgesetzt werden kann, wenn der Inhalt nicht mehr bereit ist. (Ibd820)
  • Wir haben Korrekturen an instabilen Placeholder-Tests vorgenommen (Idb560).

Version 1.3.0-alpha02

26. Juli 2023

androidx.wear.compose:compose-*:1.3.0-alpha02 wurde veröffentlicht. Version 1.3.0-alpha02 enthält diese Commits.

API-Änderungen

  • Wir haben ExpandableStateMapping bereitgestellt, eine neue Möglichkeit zum Generieren von ExpandableStates für Fälle, in denen sie on demand und nicht unbedingt innerhalb eines @Composable-Bereichs erstellt werden müssen (Iff9e0)
  • SwipeToDismissBox wurde von androidx.wear.compose.material zu Paket androidx.wear.compose.foundation migriert. (I275fb)
  • API-Dateien wurden aktualisiert, um eine unterdrückte Kompatibilität mit Anmerkungen zu versehen. (I8e87a, b/287516207)
  • Wir haben die Höhenkonstanten für Chip, CompactChip und ToggleChip veröffentlicht (Idbfde).
  • Die horizontalen und vertikalen Abstände für Chip und CompactChip wurden auf „Öffentlich“ gesetzt. (Ieeaf7)
  • Es wurde eine Funktion hinzugefügt, mit der die Wischverarbeitung in SwipeDismissableNavHost über den neuen userSwipeEnabled-Parameter deaktiviert werden kann. (Id2a0b, b/230865655)
  • Wir haben die Wear Compose-Navigationsbibliothek aktualisiert, sodass jetzt die neue SwipeToDismissBox aus der Wear Compose Foundation verwendet wird. (I4ff8e)

Fehlerkorrekturen

  • Wir haben einen Fehler in der Z-Reihenfolge behoben, bei dem expandedItem nicht den richtigen Inhalt anzeigte, nachdem auf eine Schaltfläche geklickt wurde, wenn sie Schaltflächen enthielt. (I1899d, b/289991514)
  • Verbessern Sie die Fokusbehandlung von SwipeToDismissBox (und folglich von SwipeDismissableNavHost) mithilfe von HierarchicalFocusCoordinator (I45362, b/277852486)
  • Die Touch-Gestensteuerung in SwipeableV2 wurde korrigiert . (I89737)
  • Wir haben die Basisprofile für unsere Version 1.2 fertiggestellt. (ID5740)
  • Nach der Migration von SwipeToDismissBox zu „Foundation“ wird die SwipeToDismissBox-Implementierung von Material zu „Foundation“ weitergeleitet und liefert Standardfarbwerte aus dem Design.(If8451)
  • Wir haben ListHeader eine Semantik für Überschriften hinzugefügt. (IC5420)
  • Chip und ToggleChip passen jetzt bei Bedarf ihre Höhe an Inhalte an, die aufgrund großer Schriftgrößen vergrößert wurden. (Iaf302)
  • Für mehr Barrierefreiheit wurde ein Fehler in der semantischen Rolle des antippbaren Bereichs von SplitToggleChip behoben. (Ieed3a)
  • Mit der Einstellung „Bewegung reduzieren“ werden jetzt der Schimmereffekt und die Wischbewegung bei Platzhaltern deaktiviert. (I91046)
  • Stepper und InlineSlider unterstützen jetzt wiederholte Klicks bei langem Drücken. Du kannst den Wert von Stepper und InlineSlider jetzt schnell erhöhen oder verringern, indem du die Schaltflächen "+" oder "-" gedrückt hältst. (I27359)

Version 1.3.0-alpha01

21. Juni 2023

androidx.wear.compose:compose-*:1.3.0-alpha01 wurde veröffentlicht. Version 1.3.0-alpha01 enthält diese Commits.

Fehlerkorrekturen

  • Wie in 1.2.0-alpha07 und 1.2.0-alpha10 angekündigt, ändern wir nun die DefaultTextStyle, um die Abstände zwischen den Schriftarten zu deaktivieren, damit sie auf der gesamten Android-Plattform einheitlich sind. Dadurch werden einige Fälle von Textbeschnitt mit großen Schriftgrößen beseitigt und können sich auch auf Bildschirmlayouts auswirken, sodass die Screenshot-Tests aktualisiert werden müssen. Beispielsweise sehen wir hier Textbeschnitt (Ic6a86).
<ph type="x-smartling-placeholder">
</ph> Text mit großer Schriftgröße abgeschnitten
Abbildung 1: Text abgeschnitten.
  • Sie ist nicht mehr vorhanden, wenn der Schriftabstand deaktiviert ist:
<ph type="x-smartling-placeholder">
</ph> Text nicht mit großer Schriftgröße abgeschnitten
Abbildung 2: Text nicht abgeschnitten.
  • Wir haben wear.compose.foundation auf eine API-Abhängigkeit von wear.compose.material aktualisiert (I72004, b/285404743).
  • Wir haben einen Fehler in SwipeToDismissBox behoben. Hintergrund- und Inhaltstasten werden jetzt an den Merkblock übergeben, sodass neue Modifikatoren erstellt werden, wenn sich der Inhalt oder Hintergrund ändert. (Ib876c, b/280392104)
  • Wir haben TimeText aktualisiert, sodass das Gebietsschema bei der Auswahl des Formats für das 12- oder 24-Stunden-Format verwendet wird. (If4a3d)
  • Wir haben eine Inkonsistenz bei den SwipeToDismissBox contentScrimColor-Standardparametern behoben. (I2d70f)
  • Wir haben die Bewegungsverarbeitung in SwipeToReveal verbessert. (I28fb7)

Bekannte Probleme

  • Die Unterstützung von vom Nutzer konfigurierten Schriftgrößen ist eine Anforderung für die Barrierefreiheit. Wir wissen, dass mehrzeilige Chips bei der Anzeige mit großen Schriftgrößen zu Textausschnitt führen können. Deshalb aktualisieren wir Chip in einer frühen 1.3-Alphaversion, um in diesen Fällen die Höhe anzupassen.

Version 1.2

Version 1.2.1

18. Oktober 2023

androidx.wear.compose:compose-*:1.2.1 wurde veröffentlicht. Version 1.2.1 enthält diese Commits.

Fehlerkorrekturen

  • Es wurde ein Fehler behoben, bei dem PositionIndicator fälschlicherweise verschwunden war. (7a167f)

Version 1.2.0

9. August 2023

androidx.wear.compose:compose-*:1.2.0 wurde veröffentlicht. Version 1.2.0 enthält diese Commits.

Wichtige Änderungen seit Version 1.1.0

Version 1.2.0-rc01

26. Juli 2023

androidx.wear.compose:compose-*:1.2.0-rc01 wurde veröffentlicht. Version 1.2.0-rc01 enthält diese Commits.

Fehlerkorrekturen

  • Wir haben die Basisprofile für Version 1.2 fertiggestellt (Id5740).

Version 1.2.0-beta02

7. Juni 2023

androidx.wear.compose:compose-*:1.2.0-beta02 wurde veröffentlicht. Version 1.2.0-beta02 enthält diese Commits.

Neue Funktionen

  • Wir haben die neue experimentelle Variable LocalReduceMotion CompositionLocal hinzugefügt, mit der das Skalieren und Ausblenden bei ScalingLazyColumn deaktiviert wird. (I58024)

Fehlerkorrekturen

  • Wir haben die Basisprofile für die Wear Compose-Grundlage und die Materialbibliotheken aktualisiert(I4725d).
  • Wir haben eine Inkonsistenz der Standardwerte für SwipeToDismissBox contentScrimColor-Parameter (I2d70f) behoben.
  • Der Standardwert von DefaultTextStyle für die Einstellung IncludeFontPadding (I737ed) wurde korrigiert.

Version 1.2.0-beta01

24. Mai 2023

androidx.wear.compose:compose-*:1.2.0-beta01 wurde veröffentlicht. Version 1.2.0-beta01 enthält diese Commits.

Funktionen der Funktion „Compose“ für Wear OS 1.2

Version 1.2-beta01 von Compose für Wear OS gibt an, dass dieser Release der Bibliothek vollständig ist und die API gesperrt ist (sofern nicht als experimentell gekennzeichnet). Wear Compose 1.2 enthält die folgenden neuen Funktionen:

  • expandableItem und expandableItems sind zwei neue Foundation-Komponenten, die Expandable-Elemente innerhalb einer ScalingLazyColumn unterstützen. Verwenden Sie expandableItem für ein einzelnes maximierbares Element, z. B. Text mit der Anzahl der Zeilen. Verwenden Sie expandableItems für eine Gruppe maximierbarer Elemente und expandableButton, um das Erstellen einer Schaltfläche zu vereinfachen, die nach dem Maximieren des Inhalts minimiert wird.
  • HierarchicalFocusCoordinator: Mit dieser experimentellen zusammensetzbaren Funktion können Unterstrukturen der Komposition als „Fokus aktiviert“ oder „Fokus deaktiviert“ markiert werden.
  • Picker: Die API enthält jetzt userScrollEnabled, um zu steuern, ob die Auswahl zum Scrollen durch Nutzer aktiv ist.
  • PickerGroup: eine neue zusammensetzbare Funktion zur gemeinsamen Verwaltung mehrerer Picker. Er steuert den Fokus zwischen den Auswahlfeldern mithilfe der HierarchicalFocusCoordinator API und ermöglicht die automatische Zentrierung von Auswahlelementen.
  • Placeholder: Wir haben Änderungen an den Schimmern und den Animationen vom Typ „Wipe Off“ vorgenommen. Der Löscheffekt wird jetzt sofort angewendet, wenn der Inhalt fertig ist.
  • ScalingLazyColumn: Wir haben ScalingLazyColumn und die zugehörigen Kurse von androidx.wear.compose.material.ScalingLazyColumn zu androidx.wear.compose.foundation.lazy.ScalingLazyColumn migriert. Bitte führen Sie ein Update durch, um die Foundation.Lazy-Version zu verwenden.
  • SwipeToReveal: Zur Ergänzung des bestehenden Musters „langes Drücken“ haben wir experimentelle Unterstützung für das Wischen zum Anzeigen hinzugefügt, um auf sekundäre Aktionen zuzugreifen.
  • Stepper: Hat jetzt eine Überlastung mit einem zusätzlichen enableRangeSemantics-Parameter, um das Deaktivieren der Standardbereichssemantik zu erleichtern.
  • Previews: Wir haben die folgenden benutzerdefinierten Anmerkungen für die Vorschau zusammensetzbarer Funktionen auf Wear-Bildschirmen hinzugefügt: WearPreviewSmallRound zeigt eine Vorschau der zusammensetzbaren Funktion auf einem kleinen, runden Gerät an. WearPreviewLargeRound zeigt eine Vorschau der zusammensetzbaren Funktion auf einem großen runden Gerät an. WearPreviewSquare zeigt eine Vorschau der zusammensetzbaren Funktion auf einem quadratischen Gerät an. Außerdem sehen Sie eine Vorschau der zusammensetzbaren Funktionen auf einem Wear-Gerät mit verschiedenen Schriftgrößen in WearPreviewFontScales und in WearPreviewDevices eine Vorschau der zusammensetzbaren Funktionen auf verschiedenen Wear-Geräten an.
  • Wir haben eine DefaultTextStyle zu Wear Compose hinzugefügt, mit der die PlatformTextStyle.includeFontPadding-Eigenschaft standardmäßig auf „true“ gesetzt ist (dies ist die aktuelle Einstellung). Auf diese Weise können wir die standardmäßige Deaktivierung des Schriftabstands mit den Erstellungsbibliotheken in der frühen Alphaversion 1.3 synchronisieren. Weitere Informationen finden Sie unter 1.2.0-alpha10.

Neue Funktionen

  • Wir haben experimentelle Unterstützung für die deaktivierte Skalierung und Ausblendung von Animationen hinzugefügt, wenn die Einstellung "Reduce_motion" aktiviert ist. (I58024)

Fehlerkorrekturen

  • Verbesserte Dokumentation für angularWidthDp in CurvedSize.kt (Iab75c)
  • SwipeDismissableNavHost protokolliert jetzt eine Warnung mit möglichen Ursachen für einen leeren Backstack. Dadurch werden unerwartete Abstürze vermieden, die durch IllegalArgumentException verursacht wurden, das ausgelöst wurde, als der Backstack leer war. (I04a81, b/277700155)

Version 1.2.0-alpha10

10. Mai 2023

androidx.wear.compose:compose-*:1.2.0-alpha10 wurde veröffentlicht. Version 1.2.0-alpha10 enthält diese Commits.

Neue Funktionen

  • Für den Zugriff auf sekundäre Aktionen wird jetzt „Zum Einblenden wischen“ unterstützt. Dieses Muster ergänzt das Muster „langes Drücken“, die bestehende Möglichkeit, wie Nutzende (verschiedene) sekundäre Aktionen anzeigen könnten. (I60862)

API-Änderungen

  • Wir haben RevealScope zu den zusammensetzbaren Funktionen für Aktionen in SwipeToReveal hinzugefügt, die Zugriff auf den Offset bieten, mit dem zusätzliche Aktionen angezeigt werden. (I3fd56)

Fehlerkorrekturen

  • Es wurde ein Problem behoben, bei dem ScalingLazyColumn nach dem Wischen mit der Wear API 33 hängen blieb (Ic4599)
  • Wir haben einige Leistungsverbesserungen an PositionIndicator vorgenommen, um Verzögerungen zu reduzieren. (I35e92)
  • Wir haben einen Fehler in Chip und CompactChip behoben, bei dem die semantische Rolle nicht mehr auf Role.Button festgelegt wurde. (I93f91, b/277326264)

Bekannte Probleme

  • Wir haben in Android Studio einen Fehler gefunden, der zu Fehlern beim Rendern der Vorschau führt, wenn diese mit @WearPreviewDevices und @WearPreviewFontScales gekennzeichnet sind. Eine Lösung ist für die Veröffentlichung geplant. Die anderen Anmerkungen zur Wear-Vorschau funktionieren ab Android Studio Giraffe 2022.3.1 wie vorgesehen.

  • In Version 1.2.0-alpha07 wurde der StandardtextStyle zu Wear Compose hinzugefügt und der vorhandene Wert von PlatformTextStyle.includeFontPadding auf "true" beibehalten. Informationen für den Hintergrund finden Sie unter Schriftabstand korrigieren in Compose. Wir werden den StandardtextStyle in einer frühen 1.3 Alpha-Version deaktivieren, um den Schriftabstand auf der Android-Plattform einheitlich zu gestalten. Dadurch werden einige Fälle von Textbeschnitt mit großen Schriftgrößen beseitigt und können sich auch auf Bildschirmlayouts auswirken, sodass die Screenshot-Tests aktualisiert werden müssen. Bei großen Schriftgrößen sehen wir hier zum Beispiel Textbeschnitt:

<ph type="x-smartling-placeholder">
</ph> Text mit großer Schriftgröße abgeschnitten
Abbildung 1: Text abgeschnitten.
  • Sie ist nicht mehr vorhanden, wenn der Schriftabstand deaktiviert ist:
<ph type="x-smartling-placeholder">
</ph> Text nicht mit großer Schriftgröße abgeschnitten
Abbildung 2: Text nicht abgeschnitten.

Sie können die neue Einstellung jetzt übernehmen, indem Sie die Typografie in Ihrem Design überschreiben (siehe Beispielcode).

Version 1.2.0-alpha09

19. April 2023

androidx.wear.compose:compose-*:1.2.0-alpha09 wurde veröffentlicht. Version 1.2.0-alpha09 enthält diese Commits.

API-Änderungen

  • Fügen Sie angularSizeDp zur CurvedModifier API hinzu, um die Winkelbreite in DP festzulegen (I89a52)

Fehlerkorrekturen

  • In unserer Demo zur Zeitauswahl(Id0eb7) wurden Probleme mit den Bedienungshilfen behoben.

Version 1.2.0-alpha08

5. April 2023

androidx.wear.compose:compose-*:1.2.0-alpha08 wurde veröffentlicht. Version 1.2.0-alpha08 enthält diese Commits.

API-Änderungen

  • Wir haben ExpandableItemsState in ExpandableState umbenannt. (If85ea)
  • Wir haben expandableButton hinzugefügt, um das Erstellen einer Schaltfläche zu vereinfachen, die minimiert wird, wenn der Inhalt maximiert wird. Außerdem wurden die Beispiele für maximierbare Elemente aktualisiert. (Iae309)

Fehlerkorrekturen

  • Verbesserte maximierbare Beispiele, um mehr Möglichkeiten anzuzeigen. Die Animation von expandableItem wurde so geändert, dass der Inhalt durch die Animation zentriert bleibt. (I2f637)
  • ToggleControls wurde aktualisiert, um zusätzliche Neuzusammensetzungen bei der manuellen Animation der Farben mithilfe der Funktion „Status“ zu vermeiden. (I5d319)

Version 1.2.0-alpha07

22. März 2023

androidx.wear.compose:compose-*:1.2.0-alpha07 wurde veröffentlicht. Version 1.2.0-alpha07 enthält diese Commits.

API-Änderungen

  • Wir haben die Expandable-Element-Komponenten (in 1.2.0-alpha06 hinzugefügt) vom Material auf das Fundament verschoben, da sie keinen aussagekräftigen Bezug zu MaterialTheme hatten. (Ib0525)

Fehlerkorrekturen

  • Wir haben einen Absturz behoben, der auf einem Bildschirm mit PickerGroup aufgetreten ist. Dabei wurde sichergestellt, dass PickerGroup den Fokus korrekt verarbeitet, wenn kein Picker im Fokus ist. Außerdem wird in unseren Auswahl-Demos das Scrollen per RSB unterstützt. (If8c19)
  • Wir haben die Dialogfeldübergänge verbessert: Der Intro-Übergang ist jetzt flüssiger und passt zum Outro-Übergang. (Ib5af9)
  • Wir haben eine DefaultTextStyle zu Wear Compose hinzugefügt, mit der die PlatformTextStyle.includeFontPadding-Eigenschaft standardmäßig auf „true“ gesetzt ist (dies ist die aktuelle Einstellung). Auf diese Weise können wir in Zukunft die standardmäßige Deaktivierung des Schriftabstands mit den Texterstellungsbibliotheken synchronisieren. Weitere Informationen zum Hintergrund finden Sie unter Korrektur des Schriftabstands in Compose. (I2aee8)
  • Eine Vorschauabhängigkeit von UpsideDownCake über die Aktivitätszusammensetzung wurde rückgängig gemacht, die die Veröffentlichung von Apps im Google Play Store blockiert hat. (I6443d)

Version 1.2.0-alpha06

8. März 2023

androidx.wear.compose:compose-*:1.2.0-alpha06 wurde veröffentlicht. Version 1.2.0-alpha06 enthält diese Commits.

API-Änderungen

  • Fügen Sie die Komponente CurvedBox hinzu, die Komponenten in einer gekrümmten Welt übereinander platziert. (I29200)
  • Expandable-Element(e) hinzugefügt – zwei neue Komponenten zur Unterstützung entweder einer Gruppe maximierbarer Elemente in einem ScalingLazyColumn oder eines einzelnen maximierbaren Elements wie Text, bei dem sich die Anzahl der Zeilen erhöht. (I95dd5)
  • Wir haben die folgenden benutzerdefinierten Anmerkungen für die Vorschau zusammensetzbarer Funktionen auf Wear-Bildschirmen hinzugefügt: WearPreviewSmallRound zeigt eine Vorschau der zusammensetzbaren Funktion auf einem kleinen, runden Gerät an: WearPreviewLargeRound zeigt eine Vorschau der zusammensetzbaren Funktion auf einem großen runden Gerät an. WearPreviewSquare zeigt eine Vorschau der zusammensetzbaren Funktion auf einem quadratischen Gerät an. Außerdem sehen Sie eine Vorschau der zusammensetzbaren Funktionen auf einem Wear-Gerät mit verschiedenen Schriftgrößen in WearPreviewFontScales und in WearPreviewDevices eine Vorschau der zusammensetzbaren Funktionen auf verschiedenen Wear-Geräten an. Um diese Vorschauen nutzen zu können, müssen Sie die neueste Android Studio-Version (Giraffe Canary 6) oder eine neuere Version verwenden. Wenn diese Anmerkungen für Ihren Zweck nicht geeignet sind, können Sie die Vorschau trotzdem verwenden und weitere Anpassungen über Parameter ermöglichen. (I397ff)
  • Wir haben HierarchicalFocusCoordinator als experimentell gekennzeichnet, da es aufgrund seiner breiten Anwendbarkeit als Kandidaten für die Verschiebung in die zentralen Editorenbibliotheken gilt. (I3a768)

Fehlerkorrekturen

  • Es wurde ein Fehler in HierarchicalFocusCoordinator behoben. Wenn die für den focusEnabled-Parameter übergebene Lambda geändert wurde, wird jetzt die neue Lambda-Funktion korrekt verwendet. (Icb353)
  • Wir haben die standardmäßig deaktivierte Inhaltsfarbe zu „Hintergrund“ geändert, wenn in Button, CompactButton, Chip, CompactChip und ToggleButton Primärfarben als Hintergrund verwendet werden. Dadurch wird der Kontrast für die Barrierefreiheit verbessert. (I527cc)

Version 1.2.0-alpha05

22. Februar 2023

androidx.wear.compose:compose-*:1.2.0-alpha05 wurde veröffentlicht. Version 1.2.0-alpha05 enthält diese Commits.

API-Änderungen

  • Die PickerGroup API wurde aktualisiert, damit die Mindesteinschränkungen optional an die zusammensetzbare Funktion weitergegeben werden können. Wenn dieser Wert auf „true“ gesetzt ist, sind die minimalen Einschränkungen, die von der übergeordneten zusammensetzbaren Funktion übergeben werden, für das PickerGroup zulässig. Wenn die Richtlinie auf „false“ gesetzt ist, setzt PickerGroup die minimalen Einschränkungen zurück. (I3e046)
  • Wir haben der Picker API animateScrollToOption hinzugefügt, um programmatische Animationen für eine bestimmte Auswahloption zu unterstützen (I6fe67).

Fehlerkorrekturen

  • Wir haben HorizontalPageIndicator aktualisiert, damit linksläufige Layouts unterstützt werden. (Ia4359)
  • Screenshot-Tests für Rechts-nach-links-Layout in HorizontalPageIndicator (I6fbb8) hinzugefügt
  • SwipeDismissableNavHostTest wurden weitere Tests hinzugefügt, die TestNavHostController verwenden (I61d54)

Version 1.2.0-alpha04

8. Februar 2023

androidx.wear.compose:compose-*:1.2.0-alpha04 wurde veröffentlicht. Version 1.2.0-alpha04 enthält diese Commits.

Neue Funktionen

  • PickerGroup zum gleichzeitigen Verarbeiten mehrerer Auswahlelemente mithilfe der Focus API. Sie steuert den Fokus zwischen den verschiedenen Auswahlen und ermöglicht die automatische Zentrierung der Auswahl basierend auf Parametern. Außerdem können Entwickler den Fokus zwischen verschiedenen Auswahlen ändern, während Ereignisse aus der Gruppe verarbeitet werden. Im TalkBack-Modus verarbeitet PickerGroup den TalkBack-Fokus, indem es den Fokus in die ausgewählte Auswahl der Gruppe verschiebt. (I60840)

API-Änderungen

  • Wir haben Stepper eine Überlastung mit einem zusätzlichen enableRangeSemantics-Parameter hinzugefügt, um das Deaktivieren der Standardbereichssemantik (Ia61d4) zu erleichtern.

Fehlerkorrekturen

  • Verschachtelung von ScalingLazyColumn auf einer horizontal scrollenden Seite zulassen (Iec3f8, b/266555016)
  • Verbesserungen bei der Bereinigung von Stepper-Kdocs und StepperTest-Tests. (IC118e)
  • Die Abhängigkeit von androidx.navigation wurde auf Version 2.5.3 aktualisiert (If58ed)

Version 1.2.0-alpha03

25. Januar 2023

androidx.wear.compose:compose-*:1.2.0-alpha03 wurde veröffentlicht. Version 1.2.0-alpha03 enthält diese Commits.

API-Änderungen

  • Wir haben ScalingLazyColumn und die zugehörigen Klassen von androidx.wear.compose.material.ScalingLazyColumn zu andrdoidx.wear.compose.foundation.lazy.ScalingLazyColumn migriert (siehe dieses Beispiel). Dieser neue Standort entspricht eher dem von compose.foundation.lazy.LazyColumn und ist natürlicher, da er keine gesonderte Material-Komponente ist. Diese Änderung erfolgt als Vorbereitung auf eine neue Material3-Bibliothek, an der wir parallel zu der bestehenden Material-Bibliothek arbeiten werden. (I060e7)

Die folgenden Änderungen sind Teil der ScalingLazyColumn-Migration von Material zu Foundation.Lazy:

  • PositionIndicator APIs, die auf Material ScalingLazyColumn ausgerichtet sind, wurden eingestellt. Bitte aktualisieren Sie auf Foundation.Lazy ScalingLazyColumn. Außerdem wurde das Feld anchorType zu ScalingLazyListLayoutInfo hinzugefügt. (I29d95)
  • ScalingLazyColumn wurde im Wear Compose Material-Paket (I16d34) als veraltet markiert
  • Wir haben den ScrollAway-Modifikator aktualisiert, sodass ScalingLazyListState aus Wear Compose Foundation.Lazy verwendet wird, und die Überlastung eingestellt, die ScalingLazyListState von Wear Compose-Material verbraucht hat. (Ifc42c)
  • Wir haben die Dialog APIs aktualisiert, um ScalingLazyListState von Foundation.Lazy zu verwenden, und die Überlastungen eingestellt, die Material ScalingLazyListState verwendet haben (Ic8960).
  • Wir haben die Picker APIs aktualisiert, um ScalingParams von Foundation.Lazy zu verwenden, und die Überlastungen eingestellt, die Material ScalingParams verwendet haben. (Idc3d8)

Fehlerkorrekturen

  • Wir haben einen Fehler behoben, der zu unnötigen Neuzusammensetzungen in ScalingLazyListState.centerItemIndex führte. Dabei wurde sichergestellt, dass Updates nur dann gesendet werden, wenn sich der Wert tatsächlich ändert (Ia9f38).
  • Wir haben die Leistung von SwipeToDismissBox (I3933b) verbessert
  • Benchmark-Tests für ScalingLazyColumn in Wear Compose Foundation (Ie00f9) hinzugefügt
  • Wir haben einige interne ScalingLazyColumn-Klassenmethoden in Material so aktualisiert, dass ihre Entsprechungen aus Foundation.Lazy (I38aab) verwendet werden.
  • Wir haben einige Probleme in Auswahltests behoben und weitere Tests zum Prüfen des Scrollens mit Offset hinzugefügt (I6ac34).
  • Wir haben die ScalingLazyColumn-Integrationsdemos migriert, sodass sie von Foundation.Lazy anstelle von Material ScalingLazyColumn abhängig sind (Ic6caa).
  • Wir haben der DatePicker-Demo (I961cd) optionale fromDate/toDate-Parameter hinzugefügt.

Version 1.2.0-alpha02

11. Januar 2023

androidx.wear.compose:compose-*:1.2.0-alpha02 wurde veröffentlicht. Version 1.2.0-alpha02 enthält diese Commits.

API-Änderungen

  • Bei Android Compose-UI-Tests werden jetzt Layoutübergänge für jeden Frame ausgeführt, wenn Frames ausgeführt werden, um inaktiv zu werden (z.B. über waitForIdle). Dies kann sich auf Tests auswirken, bei denen die Bestätigung für einzelne Frames von Layoutanimationen durchgeführt wird. (I8ea08, b/222093277)
  • Der Parameter minLines wird Wear Text für ein konsistentes Verhalten mit BasicText hinzugefügt (I24874).
  • CompactChipTapTargetPadding wurde veröffentlicht, sodass es in der Dokumentation erscheint (If1e70, b/234119038).

Fehlerkorrekturen

  • Plattformübergreifende Builds für wear.compose-Pakete deaktivieren (Iad3d7)
  • Kdocs für scrollToOption (I6f9a0) korrigieren
  • PlaceholderState.rememberPlaceholderState() wurde aktualisiert, um rememberUpdatedState so zu verwenden, dass der Status aktualisiert wird, wenn onContentReady Lambda ist. (I02635, b/260343754)
  • Wir haben ein Problem mit zitterndem Text in der Komponente „Picker“ durch die neue Compositing-Strategie behoben, die zu Modifier.graphicsLayer hinzugefügt wurde. (I99302)
  • Wir haben einen Fehler behoben, der in unserer DatePicker-Demo (I660bd) zum Flackern führte.
  • Wir haben die Zugänglichkeit der 12-Stunden-Zeit- und Datumsauswahl-Demos (I05e12) verbessert.
  • Wir haben unsere Demos für die Uhrzeit- und Datumsauswahl aktualisiert, sodass die Auswahl nicht von RSB-Änderungen betroffen ist, wenn sie nicht ausgewählt sind (I4aecb).

Version 1.2.0-alpha01

7. Dezember 2022

androidx.wear.compose:compose-*:1.2.0-alpha01 wurde veröffentlicht. Version 1.2.0-alpha01 enthält diese Commits.

Neue Funktionen

  • Wir haben die experimentelle Platzhalterfunktion so aktualisiert, dass der Effekt "Auswischen" sofort angewendet wird, wenn der Inhalt fertig ist, anstatt auf den Beginn der nächsten Animationsschleife zu warten. Wir haben auch einige Aktualisierungen am Schimmern und beim Löschen der Animationen vorgenommen. (I5a7f4)

API-Änderungen

  • Wir haben eine HierarchicalFocusCoordinatorzusammensetzbare Funktion hinzugefügt, mit der Unterstrukturen der Komposition als Fokus aktiviert oder deaktiviert werden können (I827cb).
  • Wir haben ein neues Attribut hinzugefügt, um die semantische Rolle für ToggleButton zu überschreiben (I67132)
  • Wir haben TimeTextDefaults.TimeFormat12Hours aktualisiert und den AM/PM-System für TimeText entfernt. Dadurch wird der Standardwert der timeSource-Parameter in der TimeText API geändert. (I1eb7f)
  • Wir haben die Picker API erweitert, um die Barrierefreiheit für Bildschirme mit der Mehrfachauswahl zu verbessern. Mit der neuen Eigenschaft userScrollEnabled wird gesteuert, ob die Auswahl für das Scrollen durch Nutzer aktiv ist. (I3c3aa)

Fehlerkorrekturen

  • Wir haben die Standardrahmenbreite für OutlinedButton/OutlinedCompactButton von 2 dp in 1 dp geändert, damit sie den endgültigen UX-Spezifikationen entspricht. (Icf84d)
  • Um die Wirkung des ersten Elements, das einem leeren ScalingLazyColumn hinzugefügt wird, beim Scrollen zu verringern, haben wir geschätzt autoCentering topPadding hinzugefügt, wenn der Inhalt leer ist. Diese Änderung berechnet den erforderlichen Abstand oben unter der Annahme eines anfänglichen Elements mit einer Höhe von 0.dp. Für ScalingLazyListAnchorType.ItemStart wird der korrekte Abstand oben berechnet. Für ScalingLazyListAnchorType.ItemCenter ist diese Berechnung falsch, da die Höhe der Elemente für die korrekte Größe des Inhalts erforderlich ist. Dies führt zu einem kleinen Scrolleffekt basierend auf der tatsächlichen Höhe der Elemente.(I239a4)
  • Wir haben das auf die SwipeToDismiss-Animation angewendete Hintergrundgitter aktualisiert, damit es der Wear-Plattform entspricht. (I9003e)
  • Wir haben die PositionIndicator-Verarbeitung von LazyListState und ScalingLazyListState für Listenelemente der Größe 0 korrigiert, um Fehler durch eine Division durch null zu vermeiden.(Ic28dd)

Version 1.1

Version 1.1.2

8. Februar 2023

androidx.wear.compose:compose-foundation:1.1.2, androidx.wear.compose:compose-material:1.1.2 und androidx.wear.compose:compose-navigation:1.1.2 wurden veröffentlicht. Version 1.1.2 enthält diese Commits.

Fehlerkorrekturen

  • Wir haben einen Fehler behoben, der zu unnötigen Neuzusammensetzungen in ScalingLazyListState.centerItemIndex führte. Dabei wurde sichergestellt, dass Updates nur dann gesendet werden, wenn sich der Wert tatsächlich ändert (Ia9f38).

Version 1.1.1

11. Januar 2023

androidx.wear.compose:compose-foundation:1.1.1, androidx.wear.compose:compose-material:1.1.1 und androidx.wear.compose:compose-navigation:1.1.1 wurden veröffentlicht. Version 1.1.1 enthält diese Commits.

Fehlerkorrekturen

  • PlaceholderState.rememberPlaceholderState() wurde aktualisiert, um rememberUpdatedState so zu verwenden, dass der Status aktualisiert wird, wenn onContentReady Lambda ist. (I02635, b/260343754)

Version 1.1.0

7. Dezember 2022

androidx.wear.compose:compose-foundation:1.1.0, androidx.wear.compose:compose-material:1.1.0 und androidx.wear.compose:compose-navigation:1.1.0 wurden veröffentlicht. Version 1.1.0 enthält diese Commits.

Wichtige Änderungen seit Version 1.0.0

Neue Funktionen

  • Wir haben die experimentelle Platzhalterfunktion so aktualisiert, dass der Effekt "Auswischen" sofort angewendet wird, wenn der Inhalt fertig ist, anstatt auf den Beginn der nächsten Animationsschleife zu warten. Wir haben auch einige Aktualisierungen am Schimmern und beim Löschen der Animationen vorgenommen. (I5a7f4)

Fehlerkorrekturen

  • Wir haben die Standardrahmenbreite für OutlinedButton/OutlinedCompactButton von 2 dp in 1 dp geändert, damit sie den endgültigen UX-Spezifikationen entspricht. (Icf84d)
  • Um die Wirkung des ersten Elements, das einem leeren ScalingLazyColumn hinzugefügt wird, beim Scrollen zu verringern, haben wir geschätzt autoCentering topPadding hinzugefügt, wenn der Inhalt leer ist. Diese Änderung berechnet den erforderlichen Abstand oben unter der Annahme eines anfänglichen Elements mit einer Höhe von 0.dp. Für ScalingLazyListAnchorType.ItemStart wird der korrekte Abstand oben berechnet. Für ScalingLazyListAnchorType.ItemCenter ist diese Berechnung falsch, da die Höhe der Elemente für die korrekte Größe des Inhalts erforderlich ist. Dies führt zu einem kleinen Scrolleffekt basierend auf der tatsächlichen Höhe der Elemente.(I239a4)
  • Wir haben das auf die SwipeToDismiss-Animation angewendete Hintergrundgitter aktualisiert, damit es der Wear-Plattform entspricht.(I9003e)
  • Wir haben die PositionIndicator-Verarbeitung von LazyListState und ScalingLazyListState für Listenelemente der Größe 0 korrigiert, um Fehler durch eine Division durch null zu vermeiden.(Ic28dd)

Version 1.1.0-rc01

9. November 2022

androidx.wear.compose:compose-foundation:1.1.0-rc01, androidx.wear.compose:compose-material:1.1.0-rc01 und androidx.wear.compose:compose-navigation:1.1.0-rc01 wurden veröffentlicht. Version 1.1.0-rc01 enthält diese Commits.

Fehlerkorrekturen

  • Wir haben Grundprofilregeln für Placeholders, ScrollAway, RadioButton, Switch, Checkbox, OutlinedButton, OutlinedCompactButton, OutlinedChip und OutlinedCompactChip hinzugefügt. (I8249c)
  • Wir haben einen Fehler in Modifier.scrollAway behoben. Wenn der angegebene itemIndex-Wert ungültig ist (z. B. wenn dieser Artikelindex außerhalb des zulässigen Bereichs liegt), wird jetzt TimeText weiterhin angezeigt. (I2137a)
  • Wir haben die SwipeToDismissBox-Animation aktualisiert, damit sie der Plattformimplementierung entspricht. Nach der anfänglichen Animation gleitet der Bildschirm nach rechts, sobald das Schließen ausgelöst wurde. (I41d34)
  • Zur Optimierung haben wir Modifier.scrollAway so aktualisiert, dass nur die scrollState innerhalb des Messwertblocks gelesen werden, um zu vermeiden, dass der Modifizierer nach jeder erneuten Messung neu zusammengesetzt wird. (I4c6f1)
  • Wir haben eine Dokumentation und ein Beispiel zu Platzhaltern hinzugefügt, um die korrekte Reihenfolge für Modifier.placeholder und Modifier.placeholderShimmer anzuzeigen, wenn sie auf dieselbe zusammensetzbare Funktion angewendet werden. (Ie96f4, b/256583229)
  • Wir haben die Standardrahmenbreite für OutlinedCompactChip/OutlinedChip von 2 dp in 1 dp geändert, damit sie den endgültigen UX-Spezifikationen entspricht. (Ib3d8e)
  • Wir haben einen Fehler in rememberPickerState behoben, bei dem aktualisierte Eingaben nicht gespeichert wurden, sodass zusammensetzbare Funktionen nach Änderungen an den Eingaben nicht aktualisiert wurden. (I49ff6, b/255323197)
  • Wir haben einige Aktualisierungen der Benutzeroberfläche an den Platzhaltern vorgenommen, 1) den Schimmerverlauf auf das 1,5-Fache der Bildschirmgröße geändert, 2) das Easing (kubische Bézierkurve) des Schimmerfortschritts hinzugefügt und 3) die Wisch-Animation (250 ms) beschleunigen. (Id29c1)
  • Wir haben einen Fehler in der Benutzeroberfläche im Platzhalter-WipeOff-Effekt behoben, bei dem Chip- und Kartenhintergründe etwas früher entfernt wurden, da die Position der Komponente auf dem Bildschirm nicht berücksichtigt wurde. (I2c7cb)
  • Wir haben die Platzhalter-Hintergrundzeichnung aktualisiert, um Farben zusammenzuführen und sie nach Möglichkeit nicht übereinander zu legen, um das Risiko einer Alpha-Überlagerung der verschiedenen zugeschnittenen Ebenen zu verringern, damit die zugrunde liegenden Farben an den Rändern des Platzhalter-Hintergrunds durchscheinen. (I2ea26)
  • Wir haben die Berechnung von ScalingLazyListState.centerItemIndex/centerItemOffset korrigiert. Wenn zwei Elemente auf beiden Seiten der Mittellinie des Darstellungsbereichs liegen, wird das am nächsten gelegene Element als centerItem betrachtet. (I30709, b/254257769)
  • Wir haben einen Fehler in ScalingLazyListState.layoutInfo.visibleItemsInfo behoben, der falsche Offsets während der ScalingLazyColumn-Initialisierung meldete. Nun wird eine leere Liste zurückgegeben, bis alle Listenelemente sichtbar sind und die richtigen Offsets aufweisen. Wenn du nach ScalingLazyListState.layoutInfo.visibleItemsInfo.isNotEmpty() suchst, wird bestätigt, dass die Initialisierung von ScalingLazyColumn abgeschlossen ist und Elemente sichtbar sind. (I3a3b8)

Version 1.1.0-beta01

24. Oktober 2022

androidx.wear.compose:compose-foundation:1.1.0-beta01, androidx.wear.compose:compose-material:1.1.0-beta01 und androidx.wear.compose:compose-navigation:1.1.0-beta01 wurden veröffentlicht. Version 1.1.0-beta01 enthält diese Commits.

Funktionen der Funktion „Compose“ für Wear OS 1.1

1.1.0-beta01 von Compose for Wear OS gab an, dass die Funktion in diesem Release der Bibliothek abgeschlossen und die API gesperrt ist.

  • Wear Compose 1.1 enthält die folgenden neuen Funktionen: <ph type="x-smartling-placeholder">
      </ph>
    • Auswahl – Verbesserte Barrierefreiheit der Auswahl, sodass Multi-Picker-Bildschirme mit Screenreadern navigierbar sind und die Inhaltsbeschreibung barrierefrei ist.
    • Der contentDescription-Parameter der Auswahl wird jetzt nur für die ausgewählte Auswahloption verwendet und verwendet einen String, für den Nullwerte zulässig sind. Beim vorherigen Commit musste eine Zuordnung von der Option zur Inhaltsbeschreibung übergeben werden, es wurde aber nur die ausgewählte Option verwendet.
    • Auswahlelemente sind jetzt immer zentriert ausgerichtet. Das Beheben eines Fehlers beim Festlegen von gradientRatio auf null hatte zur Folge, dass sich die Ausrichtung änderte.
    • Chip/ToggleChip: Wir haben die Standardverläufe für Chip/ToggleChip aktualisiert, damit sie den neuesten UX-Spezifikationen entsprechen. ChipDefaults.gradientBackgroundChipColors wurde aktualisiert und beginnt nun bei 50% der Primärversion statt bei 32,5%.
    • Chip/ToggleChip – Überlastungen zum Ändern von Chipformen hinzugefügt
    • Chip/Button/ToggleButton: Es wurde ein neuer umrissener Stil für Chips und Schaltflächen sowie die neuen zusammensetzbaren Funktionen OutlinedChip und OutlinedButton hinzugefügt, die ein transparentes Chip/Button mit dünnem Rahmen bieten.
    • Karte: Die Standardverläufe für Karten wurden aktualisiert, um sie an die neuesten UX-Spezifikationen anzupassen. CardDefaults.cardBackgroundPainter wurde so aktualisiert, dass es bei 30% der primären Kampagne beginnt und bei 20% von onSurfaceVariant endet (zuvor 20% bis 10% onSurfaceVariant). ToggleChip.toggleChipColors ändert sich von einem linearen Farbverlauf von 75% Oberfläche zu 32,5% primärem zu 0% primären zu 50% primären Oberfläche.
    • Button/ToggleButton – Eigenschaften zum Ändern von Schaltflächenformen wurden hinzugefügt.
    • Design: Eine Reihe der Standardfarben in MaterialTheme wurde aktualisiert, um die Barrierefreiheit zu verbessern, da die Originalfarben nicht genügend Kontrast hatten. Dies führte zu Problemen für Nutzer, Hintergründe für Chips, Karten oder Schaltflächen von der Hintergrundfarbe des Designs zu unterscheiden.
    • InlineSlider/Stepper: Schaltflächenrollen wurden hinzugefügt, damit Talkback sie als Schaltflächen erkennt.
    • Das Gerüst – „PositionIndicator“ ist jetzt so positioniert und dimensioniert, dass es nur den benötigten Platz einnimmt. Das ist zum Beispiel nützlich, wenn semantische Informationen hinzugefügt werden, sodass TalkBack jetzt die korrekten Grenzen des PositionIndicator auf dem Bildschirm erhält.
    • CurvedText/TimeText: Modifier.scrollAway wurde hinzugefügt, mit der ein Element basierend auf dem Scrollstatus vertikal ein- oder ausgeblendet wird (mit Überlastungen für Column, LazyColumn und ScalingLazyColumn). ScrollAway wird in der Regel verwendet, um TimeText aus der Ansicht zu scrollen, wenn der Nutzer beginnt, eine Liste von Artikeln nach oben zu scrollen.
    • CurvedText/TimeText – Unterstützung für fontFamily, fontStyle und fontSynthesis in CurvedTextStyle hinzugefügt, nutzbar unter curvedText und basicCurvedText
    • CurvedText/TimeTextfontWeight wurde dem Konstruktor und der Kopiermethode für CurvedTextStyle hinzugefügt
    • ToggleControls: Animierte Ein/Aus-Schaltflächen für Checkbox, Switch und RadioButton zur Verwendung mit ToggleChip und SplitToggleChip wurden hinzugefügt. Diese können anstelle der statischen Symbole von ToggleChipDefaults (switchIcon, checkboxIcon und radioIcon) verwendet werden.
    • Platzhalter – Unterstützung für experimentelle Platzhalter hinzugefügt. Es gibt drei verschiedene visuelle Effekte, die ineinandergreifen.
    • Erstens ein Platzhalter-Pinseleffekt für den Hintergrund, der in Containern wie Chips und Kacheln verwendet wird, um beim Laden von Inhalten über den normalen Hintergrund zu zeichnen.
    • Zweitens: Modifier.placeholder(), mit dem ein stadionförmiges Platzhalter-Widget über dem geladenen Inhalt gezeichnet wird.
    • Drittens ein Modifikatorverlauf/Schimmereffekt (Modifier.placeholderShimmer()), der über die anderen Effekte gezogen wird, um Nutzer darauf hinzuweisen, dass auf das Laden von Daten gewartet wird.
      • Alle diese Effekte wurden so entwickelt, dass sie koordiniert sind und orchestriert werden.
  • Core Compose-Abhängigkeiten von Version 1.2 auf 1.3 aktualisiert

API-Änderungen

  • Schriftparameter (fontFamily, fontWeight, fontStyle und fontSynthesis) können jetzt direkt als Parameter von curvedText angegeben werden (Idc422).

Fehlerkorrekturen

  • curveText und basicCurvedText funktionieren jetzt ordnungsgemäß mit TalkBack, d. h. ihnen ist ein passender Größe und korrekt platzierter (aber leerer) Compose-UI-Knoten zugeordnet, bei dem der Text als Inhaltsbeschreibung verwendet wird. (I7af7c, b/210721259)
  • Fehlerkorrektur für Picker, wenn PickerState.repeatedItems = false eine explizite Einstellung von Parametern für das automatische Zentrieren in der internen ScalingLazyColumn-Auswahl hinzugefügt hat, damit die nullte Option in die Mitte der Ansicht gescrollt werden kann. (I8a4d7)

Version 1.1.0-alpha07

5. Oktober 2022

androidx.wear.compose:compose-foundation:1.1.0-alpha07, androidx.wear.compose:compose-material:1.1.0-alpha07 und androidx.wear.compose:compose-navigation:1.1.0-alpha07 wurden veröffentlicht. Version 1.1.0-alpha07 enthält diese Commits.

Neue Funktionen

  • Es wurden experimentelle Platzhalter unterstützt. Es gibt drei verschiedene visuelle Effekte, die ineinandergreifen. Erstens ein Platzhalter-Pinseleffekt für den Hintergrund, der in Containern wie Chips und Kacheln verwendet wird, um beim Laden von Inhalten über den normalen Hintergrund zu zeichnen. Zweitens: Modifier.placeholder(), mit dem ein stadionförmiges Platzhalter-Widget über dem geladenen Inhalt gezeichnet wird. Drittens ein Modifikatorverlauf/Schimmereffekt (Modifier.placeholderShimmer()), der über die anderen Effekte gezogen wird, um Nutzer darauf hinzuweisen, dass auf das Laden von Daten gewartet wird. Alle diese Effekte wurden so entwickelt, dass sie koordiniert sind und orchestriert werden. (I3c339)

API-Änderungen

  • Unterstützung für fontWeight, fontFamily, fontStyle und fontSynthesis hinzugefügt in CurvedTextStyle, nutzbar unter curvedText und basicCurvedText. Diese Parameter können verwendet werden, um die Schriftart und den Stil für den gebogenen Text anzugeben.(Iaa1a8),(I72759)
  • Der Versatzparameter von Modifier.scrollAway wurde aus Konsistenz mit Modifier.offset auf „Dp“ aktualisiert (bisher war dies in Pixeln). Außerdem refaktoriert als LayoutModifier für mehr Effizienz. (I9f94b)
  • Im Rahmen der neuen API für die Ein/Aus-Schaltfläche haben wir RadioButton’s circleColor in ringColor umbenannt. (I28fa9)
  • Wir haben animierte Checkbox-, Switch- und RadioButton-Ein-/Aus-Schaltflächen für ToggleChip und SplitToggleChip hinzugefügt. Diese können anstelle der statischen Symbole von ToggleChipDefaults (switchIcon, checkboxIcon und radioIcon) verwendet werden. (I8a8c4)

Version 1.1.0-alpha06

21. September 2022

androidx.wear.compose:compose-foundation:1.1.0-alpha06, androidx.wear.compose:compose-material:1.1.0-alpha06 und androidx.wear.compose:compose-navigation:1.1.0-alpha06 wurden veröffentlicht. Version 1.1.0-alpha06 enthält diese Commits.

Neue Funktionen

  • Wir haben Modifier.scrollAway hinzugefügt, mit dem ein Element basierend auf dem Scrollstatus vertikal ein- oder ausgeblendet wird (mit Überlastungen für Column, LazyColumn und ScalingLazyColumn). Mit ScrollAway wird in der Regel ein TimeText aus der Ansicht gescrollt, wenn der Nutzer beginnt, eine Liste von Elementen nach oben zu scrollen. (I61766)

Fehlerkorrekturen

  • PositionIndicator ist jetzt so positioniert und groß, dass es nur den benötigten Platz einnimmt. Das ist zum Beispiel nützlich, wenn semantische Informationen hinzugefügt werden, sodass TalkBack jetzt die korrekten Grenzen des PositionIndicator auf dem Bildschirm erhält. (Ie6106, b/244409133)

Version 1.1.0-alpha05

7. September 2022

androidx.wear.compose:compose-foundation:1.1.0-alpha05, androidx.wear.compose:compose-material:1.1.0-alpha05 und androidx.wear.compose:compose-navigation:1.1.0-alpha05 wurden veröffentlicht. Version 1.1.0-alpha05 enthält diese Commits.

Fehlerkorrekturen

  • Schaltflächenrollen wurden InlineSlider und Stepper hinzugefügt, damit TalkBack als Schaltflächen erkennt. (Icb46c, b/244260275)
  • Wir haben die Z-Reihenfolge der Positions- und Seitenindikatoren im Gerüst korrigiert. Die Indikatoren befinden sich jetzt über der Vignette und werden daher nicht von der Vignette verdeckt, sofern sie vorhanden ist. (Ib988f, b/244207528)

Version 1.1.0-alpha04

24. August 2022

androidx.wear.compose:compose-foundation:1.1.0-alpha04, androidx.wear.compose:compose-material:1.1.0-alpha04 und androidx.wear.compose:compose-navigation:1.1.0-alpha04 wurden veröffentlicht. Version 1.1.0-alpha04 enthält diese Commits.

API-Änderungen

  • Wir haben eine Reihe der Standardfarben im MaterialTheme aktualisiert, um die Barrierefreiheit zu verbessern, da die Originalfarben nicht genügend Kontrast hatten, was es Nutzern schwierig machte, Hintergründe für Chips, Karten oder Schaltflächen von der Hintergrundfarbe des Designs zu unterscheiden. Die aktualisierten Farben sind „Surface“ (0xFF202124->0xFF303133), onPrimary(0xFF202124->0xFF303133), onPrimary(0xFF202124->0xFF303133), primaryVariant(0xFF669DF6->0xFF8AB4F0x2). Die relativ geringfügigen Änderungen der Farben können sich jedoch auf vorhandene Screenshot-Tests auswirken. (81ab09)

Fehlerkorrekturen

  • Beheben Sie einen Logikfehler in ScalingLazyColumn, der dazu führen konnte, dass Listen mit einer kleinen Anzahl von Listenelementen (normalerweise genau zwei) die Initialisierung nicht abschließen und daher transparent sind. (504347)

Version 1.1.0-alpha03

10. August 2022

androidx.wear.compose:compose-foundation:1.1.0-alpha03, androidx.wear.compose:compose-material:1.1.0-alpha03 und androidx.wear.compose:compose-navigation:1.1.0-alpha03 wurden veröffentlicht. Version 1.1.0-alpha03 enthält diese Commits.

Neue Funktionen

  • Wir haben einen neuen umrissenen Stil für Chips und Buttons sowie die neuen zusammensetzbaren Funktionen OutlinedChip und OutlinedButton hinzugefügt, die eine transparente Chip/Button mit dünnem Rahmen bieten. (ID5972)

API-Änderungen

  • Überladungen für das Ändern von Schaltflächenformen hinzugefügt (Icccde)

Fehlerkorrekturen

  • Wir haben die Größe des Steuerelementbereichs für die Ein/Aus-Schaltfläche von ToggleChip korrigiert, da er nicht der UX-Spezifikation entsprach. Die UX-Spezifikationen erfordern einen 4 dp-Abstand zwischen dem Label und einem 24 x 24 dp großen Steuersymbolbereich mit einer Gesamtbreite von 28 dp. Die Implementierung gibt jedoch fälschlicherweise den 36x24.dp-Steuerbereich für die Ein/Aus-Schaltfläche aus. Dies führt dazu, dass 8 dp des nutzbaren Textlabel-Bereichs wegfallen. HINWEIS: Durch diese Fehlerkorrektur erhält das Textlabel mehr Platz, was sich (positiv) auf das Textlayout für überlaufenden Text auswirken kann. Wenn du Screenshot-Tests mit ToggleChips hast, müssen diese möglicherweise aktualisiert werden. (I514c8, b/240548670)

Version 1.1.0-alpha02

27. Juli 2022

androidx.wear.compose:compose-foundation:1.1.0-alpha02, androidx.wear.compose:compose-material:1.1.0-alpha02 und androidx.wear.compose:compose-navigation:1.1.0-alpha02 wurden veröffentlicht. Version 1.1.0-alpha02 enthält diese Commits.

Neue Funktionen

  • Wir haben die Abhängigkeiten von Compose für Wear OS von 1.2.0 auf 1.3.0-alpha0X von Compose-Bibliotheken geändert

API-Änderungen

  • Überladungen für das Bearbeiten von Chipformen hinzugefügt (I02e87)

Fehlerkorrekturen

  • Wir haben die Sichtbarkeit der Vignettierung beim Ein-/Ausblenden des Dialogfelds animiert, um der vorhandenen Skalierungsanimation zu entsprechen. (Ida33e)
  • Wir haben einen Fehler behoben, bei dem eine Division durch Null bei einem Wechselverhalten beim Scrollen auftreten konnte. (I86cb6)
  • Ein Fehler in ChipDefaults.childChipColor() wurde behoben, durch den die deaktivierte Hintergrundfarbe vollständig transparent war. (I2b3c3, b/238057342)

Version 1.1.0-alpha01

29. Juni 2022

androidx.wear.compose:compose-foundation:1.1.0-alpha01, androidx.wear.compose:compose-material:1.1.0-alpha01 und androidx.wear.compose:compose-navigation:1.1.0-alpha01 wurden veröffentlicht. Version 1.1.0-alpha01 enthält diese Commits.

API-Änderungen

  • Der contentDescription-Parameter des Pickers wird jetzt nur für die ausgewählte Auswahloption verwendet. Er verwendet einen String, für den Nullwerte zulässig sind. Bisher musste eine Zuordnung von der Option zur Inhaltsbeschreibung übergeben werden, aber nur die ausgewählte Option wurde verwendet. (Ife6a7)
  • Wir haben die Barrierefreiheit der Auswahl so verbessert, dass mehrere Auswahlbildschirme mit Screenreadern navigierbar sind und die Inhaltsbeschreibung barrierefrei ist (I64edb).

Fehlerkorrekturen

  • Wir haben die Basisprofilregeln aktualisiert, die im Paket mit der Wear Compose-Bibliothek enthalten sind (I9c694).
  • Wir haben die Richtung des Farbverlaufs für Chips im Modus von rechts nach links korrigiert. War oben links->unten rechts, ist jetzt oben rechts->unten links. (Ic2e77)
  • Wir haben die Standardverläufe für Chip/ToggleChip/Card aktualisiert, damit sie den neuesten UX-Spezifikationen entsprechen. ChipDefaults.gradientBackgroundChipColors wurde aktualisiert und beginnt nun bei 50% der Primärversion statt bei 32,5%. CardDefaults.cardBackgroundPainter wurde so aktualisiert, dass es bei 30% der primären Kampagne beginnt und bei 20% von onSurfaceVariant endet (zuvor 20% bis 10% onSurfaceVariant). ToggleChip.toggleChipColors ändert sich von einem linearen Farbverlauf von 75% Oberfläche zu 32,5% primärem zu 0% primären zu 50% primären Oberfläche. (I43bbd)
  • Wir haben hinter Chip/ToggleChips eine Hintergrundfarbe (MaterialTheme.color.surface) mit Farbverlauf hinzugefügt, damit sie auch in dem unwahrscheinlichen Fall, dass eine helle Farbe verwendet wird, gut sichtbar sind. (Ibe1a4, b/235937657)
  • Auswahlelemente sind jetzt immer zentriert ausgerichtet. Das Beheben eines Fehlers beim Festlegen von gradientRatio auf null hatte zur Folge, dass sich die Ausrichtung änderte. (I712b8)

Version 1.0

Version 1.0.2

7. September 2022

androidx.wear.compose:compose-foundation:1.0.2, androidx.wear.compose:compose-material:1.0.2 und androidx.wear.compose:compose-navigation:1.0.2 wurden veröffentlicht. Version 1.0.2 enthält diese Commits.

Fehlerkorrekturen

  • Wir haben die Z-Reihenfolge der Positions- und Seitenindikatoren im Gerüst korrigiert. Die Indikatoren befinden sich jetzt über der Vignette und werden daher nicht von der Vignette verdeckt, sofern sie vorhanden ist. (Ib988f, b/244207528)

Version 1.0.1

24. August 2022

androidx.wear.compose:compose-foundation:1.0.1, androidx.wear.compose:compose-material:1.0.1 und androidx.wear.compose:compose-navigation:1.0.1 wurden veröffentlicht. Version 1.0.1 enthält diese Commits.

Fehlerkorrekturen

  • Beheben Sie einen Logikfehler in ScalingLazyColumn, der dazu führen konnte, dass Listen mit einer kleinen Anzahl von Listenelementen (normalerweise genau zwei) die Initialisierung nicht abschließen und daher transparent sind. (076c61)

Version 1.0.0

27. Juli 2022

androidx.wear.compose:compose-foundation:1.0.0, androidx.wear.compose:compose-material:1.0.0 und androidx.wear.compose:compose-navigation:1.0.0 wurden veröffentlicht. Version 1.0.0 enthält diese Commits.

Hauptfunktionen von Version 1.0.0

  • Dies ist die erste stabile Version von Compose für Wear OS (weitere Informationen).
  • Compose für Wear OS baut auf den zentralen Compose-Bibliotheken auf und bietet zusätzliche Wearable-spezifische Komponenten und gegebenenfalls alternative Implementierungen zentraler Compose-Komponenten, die auf Wearable-Geräte zugeschnitten sind.
  • Eine Liste der Hauptkomponenten von Wear Compose finden Sie in den Versionshinweisen für Compose for Wear OS Beta01.

Fehlerkorrekturen

  • Wir haben die Sichtbarkeit der Vignettierung beim Ein-/Ausblenden des Dialogfelds animiert, um der vorhandenen Skalierungsanimation zu entsprechen. (Ida33e)
  • Wir haben einen Fehler behoben, bei dem eine Division durch Null bei einem Wechselverhalten beim Scrollen auftreten konnte. (I86cb6)
  • Ein Fehler in ChipDefaults.childChipColor() wurde behoben, durch den die deaktivierte Hintergrundfarbe vollständig transparent war. (I2b3c3, b/238057342)

Version 1.0.0-rc02

22. Juni 2022

androidx.wear.compose:compose-foundation:1.0.0-rc02, androidx.wear.compose:compose-material:1.0.0-rc02 und androidx.wear.compose:compose-navigation:1.0.0-rc02 wurden veröffentlicht. Version 1.0.0-rc02 enthält diese Commits.

Fehlerkorrekturen

  • Wir haben die Richtung des Farbverlaufs für Karten im RTL-Modus (rechts nach links) korrigiert. Es war oben links->unten rechts und jetzt oben rechts->unten links. (Ic2e77)
  • Wir haben die Standardverläufe für Chip/ToggleChip/Card aktualisiert, damit sie den neuesten UX-Spezifikationen entsprechen. ChipDefaults.gradientBackgroundChipColors wurde aktualisiert und beginnt nun bei 50% der Primärversion statt bei 32,5%. CardDefaults.cardBackgroundPainter wurde aktualisiert und beginnt nun bei 30% der primären Variante und endet bei 20% von onSurfaceVariant (zuvor 20% bis 10% auf der Oberfläche). ToggleChip.toggleChipColors ändert sich von einem linearen Farbverlauf von 75% der Oberfläche zu einer 32,5% primären Oberfläche zu einer 0% primären Oberfläche zu 50% der primären Oberfläche. (I43bbd)
  • Wir haben hinter Chip/ToggleChips eine Hintergrundfarbe (MaterialTheme.color.surface) mit Farbverlauf hinzugefügt, damit sie auch in dem unwahrscheinlichen Fall, dass eine helle Farbe verwendet wird, gut sichtbar sind. (Ibe1a4, b/235937657)
  • Wir haben die Basisprofilregeln aktualisiert, die im Paket mit der Wear Compose-Bibliothek enthalten sind (I9c694).

Version 1.0.0-rc01

15. Juni 2022

androidx.wear.compose:compose-foundation:1.0.0-rc01, androidx.wear.compose:compose-material:1.0.0-rc01 und androidx.wear.compose:compose-navigation:1.0.0-rc01 wurden veröffentlicht. Version 1.0.0-rc01 enthält diese Commits.

API-Änderungen

  • Schnittstellen in Erstellungsbibliotheken werden jetzt mit jdk8-Standardschnittstellenmethoden erstellt (I5bcf1).

Fehlerkorrekturen

  • Wir haben den expliziten Aufruf von fillMaxWidth() für den Listenheader entfernt, da er nicht erforderlich ist. Dies kann zu Problemen führen, wenn eine ScalinglazyColumn aus einer Mischung aus ListHeader()- und Chip()-Komponenten besteht, da die Breite tendenziell größer oder kleiner wird, wenn ListHeader-Elemente aus der Ansicht herausgescrollt werden. (I37144, b/235074035)
  • Wir haben einen Fehler im ScalingLazyColumn behoben, der dazu führen konnte, dass die Listenelemente erst nach dem Scrollen korrekt gezeichnet werden, wenn das 0. Listenelement groß genug war (einschließlich Abstände). (Ic6159, b/234328517)
  • Wir haben das Easing „ScalingLazyColumn“ geringfügig angepasst, da Elemente den Bildschirmrand erreichen und den Aktualisierungen der UX-Spezifikation entsprechen. Alte Werte CubicBezierEasing(0.25f, 0.00f, 0.75f, 1.00f) -> neue Werte CubicBezierEasing(0.3f, 0f, 0.7f, 1f). Wenn Sie das alte Verhalten beibehalten möchten, können Sie das scalingParams von ScalingLazyColumn (Ie375c) überschreiben.
  • Wir haben für das Element „CompactChip“ einen Abstand hinzugefügt, damit die Größe des Berührungszielbereichs von mindestens 48 dp gemäß den Richtlinien für Bedienungshilfen von Material erfüllt ist. Dies kann sich auf alle Layouts auswirken, die Sie mit CompactChips verwenden, da diese zusätzlichen Speicherplatz belegen. (I3d57c)

Version 1.0.0-beta03

1. Juni 2022

androidx.wear.compose:compose-foundation:1.0.0-beta03, androidx.wear.compose:compose-material:1.0.0-beta03 und androidx.wear.compose:compose-navigation:1.0.0-beta03 wurden veröffentlicht. Version 1.0.0-beta03 enthält diese Commits.

Neue Funktionen

  • ScalingLazyColumn funktioniert jetzt im Modus @Preview zum Schreiben. (I3b3b6, b/232947354)

API-Änderungen

  • Wir haben den Standardwert für die Eigenschaft ScalingLazyColumn.horizontalAlignment von „Start“ in „CenterHorizontally“ geändert. Damit wird sichergestellt, dass Listenelemente, die nicht die gesamte Breite der Spalte ausfüllen, im Sinne einer bestmöglichen Sichtbarkeit aufeinander ausgerichtet werden. Wenn Sie zum vorherigen Verhalten zurückkehren möchten, legen Sie horizontalAlignment = Alignment.Start fest.(I9ed4b)

Bekannte Probleme

  • Die Tipp-/Berührungshöhe von CompactChip ist kleiner als die Vorgaben für Bedienungshilfen (Material). Dieses Problem wird in der nächsten Version (15. Juni) korrigiert. Wenn du CompactChip verwendest, wirkt sich dies auf deine Layouts aus, da CompactChips jetzt einen zusätzlichen Abstand darüber und darunter haben. Passen Sie Ihre Layouts an und testen Sie sie oder sehen Sie sich die Fehlerkommentare an, um eine Behelfslösung zur Verwendung des vorhandenen Verhaltens zu erhalten. (b/234332135)

Fehlerkorrekturen

  • Neue Demo zum Animieren des Hinzufügens oder Entfernens eines Starttexts auf einem TimeText. (I16d75)
  • Tests für HorizontalPageIndicator.PagesState (I64ed0) hinzufügen
  • TimeText wird näher an die UX-Spezifikationen angepasst (Ib7ea1)

Version 1.0.0-beta02

18. Mai 2022

androidx.wear.compose:compose-foundation:1.0.0-beta02, androidx.wear.compose:compose-material:1.0.0-beta02 und androidx.wear.compose:compose-navigation:1.0.0-beta02 wurden veröffentlicht. Version 1.0.0-beta02 enthält diese Commits.

Neue Funktionen

  • Die Auswahl reagiert jetzt immer auf Scroll-Ereignisse, auch im Lesemodus. So müssen Nutzer nicht erst eine Auswahl durch Tippen auswählen, bevor sie scrollen können. Im Lesemodus werden andere Optionen als die aktuell ausgewählten durch einen Shim in gradientColor verdeckt. (I72925)
  • Wir haben das UX-Verhalten von Chip/ToggleChip/CompactChip/SplitToggleChip geändert, damit sie nicht mehr standardmäßig fillMaxWidth ausführen. Stattdessen passen sie sich an ihre Inhalte an. Um das vorherige Verhalten beizubehalten, fügen Sie einfach modifier = Modifier.fillMaxWidth()(I60a2c, b/232206371) hinzu.

Fehlerkorrekturen

  • Der CurvedTextStyle-Konstruktor, der einen TextStyle verwendet, berücksichtigt jetzt auch das fontWeight. Dies kann in zukünftigen Versionen der API dem Konstruktor und den Kopiermethoden hinzugefügt werden (Ieebb9).
  • Verbesserungen beim Wischen am Rand. Wenn Modifier.edgeSwipeToDismiss verwendet wird und ein Wischen vom Randbereich nach links ausgelöst wird, wird kein Wischen zum Schließen mehr ausgelöst, wenn sich die Wischrichtung nach rechts ändert. Bisher war es möglich, die Funktion zum Schließen durch Wischen nach links und dann nach rechts auszulösen.(I916ea)
  • In HorizontalPageIndicator werden jetzt bis zu 6 Seiten auf dem Bildschirm angezeigt. Wenn es insgesamt mehr als sechs Seiten gibt, wird links oder rechts ein Indikator in halber Größe mit einem sanften Übergang zwischen den Seiten angezeigt.(I2ac29)
  • Das standardmäßige Andockverhalten bei ScalingLazyColumn und Picker wurde verbessert (I49539).
  • Verbesserungen beim Wischen am Rand. Wenn Modifier.edgeSwipeToDismiss verwendet wird, wird die Wischgeste zum Schließen nur ausgelöst, wenn die erste Berührung am Rand landet und nach rechts gewischt wird. Bisher war es möglich, durch Wischen von einem beliebigen Teil des Bildschirms zum Schließen zu wischen, wenn ein Scrollen den Anfang erreicht hat.(I8ca2a)

Version 1.0.0-beta01

11. Mai 2022

androidx.wear.compose:compose-foundation:1.0.0-beta01, androidx.wear.compose:compose-material:1.0.0-beta01 und androidx.wear.compose:compose-navigation:1.0.0-beta01 wurden veröffentlicht. Version 1.0.0-beta01 enthält diese Commits.

Funktionen der Funktion „Compose“ für Wear OS 1.0

Die 1.0.0-beta01 von Compose für Wear OS markiert einen wichtigen Meilenstein, da die Funktionen der Mediathek vollständig sind und die API gesperrt ist.

Zu den Wear Compose Material-Komponenten in Version 1.0 gehören:

  • Material Design: Es wird als Ersatz für „Compose for Mobile“ MaterialTheme verwendet und bietet Farben, Formen und Typografie für Bauteile auf Wearables, die die UX-Richtlinien für Wear Material Design implementieren.
  • Button, CompactButton und ToggleButton – für die Schaltfläche steht nur ein Platz für ein Symbol, ein Bild oder einen kurzen Text (maximal 3 Zeichen) zur Verfügung. Kreisförmig mit den empfohlenen Größen für Standard-, große oder kleine Schaltflächen. CompactButton bietet einen einzelnen Slot für beliebige Inhalte (Symbol, Bild oder Text) und ist kreisförmig mit einer sehr kleinen Hintergrundgröße. CompactButton hat einen optionalen transparenten Rahmen um den Hintergrund, der den anklickbaren Bereich vergrößert. ToggleButton ist eine Schaltfläche, über die in einem einzelnen Bereich beliebige Inhalte (kurzer Text, Symbol oder Bild) ausgewählt werden können. Der Status „Ein/Aus“ (aktiviert/deaktiviert) ist farbig und mit unterschiedlichen Symbolen, ob aktiviert oder deaktiviert ist.
  • Karten - zur Anzeige von Informationen zu Anwendungen, wie z. B. Benachrichtigungen. Flexibles Design für verschiedene Anwendungsfälle mit AppCard und TitleCard, das unterschiedliche Layouts und Unterstützung für Bilder als Karteninhalte oder Hintergründe bietet.
  • Chips - stadionförmige Komponenten ähnlich wie Schaltflächen, aber mit einem größeren Bereich und mehreren Schlitzen für Beschriftungen, sekundäre Beschriftungen und Symbole. In verschiedenen Größen und mit Unterstützung von Bildern als Hintergründe
  • SwitchChips und SplitToggleChips – ein Chip mit einem aktivierten/nicht aktivierten Status und einem zusätzlichen ToggleControl-Slot, um ein Symbol wie einen Schalter oder ein Optionsfeld anzuzeigen, um den Status der Komponente anzuzeigen. Außerdem hat der SplitToggleChip zwei antippbare Bereiche: einen anklickbaren und einen ein-/ausschaltbaren Bereich.
  • CircularProgressIndicator – Fortschrittsanzeige für Wear-Material mit zwei Varianten. Die erste drückt den Anteil des Abschlusses einer laufenden Aufgabe aus und unterstützt eine Lücke in der kreisförmigen Spur zwischen Start- und Endwinkel. Die zweite gibt einen unbestimmten Fortschritt für eine nicht angegebene Wartezeit an.
  • CurdText: ist Teil der DSL zur Beschreibung von CurvedLayouts, zusammen mit curvedRow und curvedColumn, um Komponenten um kreisförmige Geräte herum anzuordnen. Weitere Informationen zu CurvedLayout und CurvedModifier finden Sie unten im Abschnitt „Wear Component Foundation“. Diese Funktion hat eine ähnliche Rolle wie Modifikatoren in der nicht gekrümmten Welt und ermöglicht die Konfiguration verschiedener Aspekte von Layout, Padding, Farbverläufen usw.
  • Dialogfeld, Benachrichtigung und Bestätigung: Ein Dialogfeld im Vollbildmodus wird über andere Inhalte gelegt und unterstützt das Schließen durch Wischen. Sie belegt einen einzelnen Slot, bei dem es sich voraussichtlich um spezielle Wear-Material-Dialoginhalte wie „Warnung“ oder „Bestätigung“ handelt. Die Benachrichtigung ist ein vorgegebener Dialoginhalt mit Platz für Symbol, Titel und Nachricht. Es weist entweder eine Überlastung von zwei Plus- und Negativschaltflächen auf, die nebeneinander angezeigt werden, oder einem Schlitz für einen oder mehrere vertikal übereinander gestapelte Chips. Bei der Bestätigung handelt es sich um vorgegebene Dialoginhalte, die eine Nachricht für einen bestimmten Zeitraum anzeigen. Sie hat eine Fläche für ein Symbol oder Bild (das könnte animiert sein).
  • HorizontalPageIndicator: Zeigt die horizontale Seitenposition in einer Form, die dem Wearable-Formfaktor entspricht. Die Smartwatch nimmt den Vollbildmodus ein und zeigt auf runden Geräten eine gebogene Anzeige. Kann mit der Anzeige der Seite „Begleitenden“ verwendet werden.
  • Symbol: Eine Wear-Implementierung von Symbol, die Farbe und Alpha aus dem Wear Material-Design übernimmt. Ein anklickbares Symbol findest du unter Schaltfläche oder Chip.
  • Auswahl: zeigt eine scrollbare Liste von Elementen an, aus der eine Auswahl getroffen werden kann. Standardmäßig werden Elemente unbegrenzt in beide Richtungen wiederholt. Kann im Lesemodus angezeigt werden, um nicht ausgewählte Optionen auszublenden.
  • PositionIndicator - zeigt die Scroll-Position oder andere Positionshinweise in einer Form, die dem Wearable-Formfaktor entspricht. Die Smartwatch nimmt den ganzen Bildschirm ein. Auf runden Geräten wird eine gekrümmte Anzeige angezeigt.
  • Gerüst: Implementiert die grundlegende visuelle Layoutstruktur von Wear Material Design. Diese Komponente bietet eine API, mit der mehrere Wear Material-Komponenten (z. B. TimeText, PositionIndicator und Vignette) für die Bildschirmkonstruktion zusammengestellt werden. Dabei wird eine geeignete Layoutstrategie gewährleistet und die erforderlichen Daten erfasst, damit diese Komponenten einwandfrei zusammenwirken.
  • ScalingLazyColumn – eine scrollbare Skalierungs-/Fischaugenlistenkomponente, die ein wichtiger Bestandteil der Wear Material Design-Sprache ist. Bietet Skalierungs- und Transparenzeffekte für die Inhaltselemente. ScalingLazyColumn ist darauf ausgelegt, eine potenziell große Anzahl von Inhaltselementen zu verarbeiten, die nur bei Bedarf materialisiert und zusammengestellt werden.
  • Schieberegler - ermöglicht Nutzern, eine Auswahl aus einem Wertebereich zu treffen. Der Auswahlbereich wird als Balken dargestellt, der optional mit Trennzeichen angezeigt werden kann.
  • Stepper: Eine Vollbildkomponente, mit der Nutzer über die Schaltflächen zum Erhöhen und Verringern oben und unten auf dem Bildschirm eine Auswahl aus einem Bereich von Werten treffen können, wobei in der Mitte ein Platz für Text oder einen Chip vorhanden ist.
  • SwipeToDismissBox - steuert die Wischgeste zum Schließen. Für den Hintergrund, der nur während der Wischgeste angezeigt wird, und für den Inhalt im Vordergrund wird ein einziger Bereich benötigt. Kann optional mit der Androidx-Navigationsbibliothek mithilfe von SwipeDismissableNavHost kombiniert werden (siehe Wear Compose-Navigationsbibliothek unten).
  • Text: Eine Wear-Implementierung der Komponente zum Schreiben von Material Text, bei der Farbe und Alpha aus dem Wear-Material-Design übernommen werden.
  • TimeText - eine Komponente zur Anzeige der Uhrzeit und des Anwendungsstatus oben auf dem Bildschirm. Passt sich durch Verwendung von gebogenem Text auf runden Displays an die Bildschirmform an.
  • Vignettierung – eine Bildschirmbearbeitung für das Gerüst, bei der der obere und untere Bereich des Bildschirms unkenntlich gemacht wird, wenn scrollbarer Content verwendet wird.

  • Die Wear Compose Foundation enthält außerdem die folgenden Komponenten:

  • CurvedLayout – Wear Foundation CurvedLayout ist eine zusammensetzbare Layoutoption, bei der die untergeordneten Elemente in einem Bogen platziert und nach Bedarf gedreht werden. Dies ähnelt einem Zeilenlayout, das zu einem Kreisringsegment gebogen ist. Beachte, dass der Inhalt einer CurvedLayout keine zusammensetzbare Lambda-Funktion ist, sondern eine DSL (domainspezifische Sprache). Alle Elemente in der DSL von CurvedLayout unterstützen einen optionalen Modifikatorparameter, der aus CurvedModifier erstellt wurde.

  • „basicCurvedText“ – ein Element in der CurvedLayout-DSL, basicCurvedText ermöglicht es Entwicklern, auf einfache Weise gebogenen Text zu schreiben, der der Krümmung eines Kreises folgt (normalerweise am Rand eines runden Bildschirms). basicCurvedText kann nur innerhalb von CurvedLayout erstellt werden, um eine optimale Leistung zu gewährleisten, wie etwa die Möglichkeit, die Positionierung anzugeben, und die Verwendung von CurvedModifiers. In den meisten Fällen sollte stattdessen „kurventext“ verwendet werden, da hier Material-Design verwendet wird.

  • CurdComposable: umschließt normalen zusammensetzbaren Inhalt, sodass er mit CurvedLayout verwendet werden kann. Wenn curvedComposable mehrere Elemente enthält, werden diese übereinander gezeichnet (wie ein Kasten). Wenn Sie mehrere zusammensetzbare Funktionen entlang einer Kurve platzieren möchten, umschließen Sie diese jeweils mit curvedComposable.

  • CurdRow und CurdColumn – ähnlich wie Zeile und Spalte können curvedRow und curvedColumn in einem CurvedLayout verschachtelt werden, um Elemente nach Bedarf anzuordnen. Für ein curvedRow können die Winkellayoutrichtung und radiale Ausrichtung angegeben werden. Für ein curvedColumn können die Winkelausrichtung und die Radialrichtung angegeben werden.

  • CurvedModifier: Alle gebogenen Komponenten akzeptieren einen Modifikatorparameter, der mit CurvedModifier erstellt werden kann: Hintergrund, Größe, Gewichtung und Abstände werden unterstützt.

  • Die folgende Komponente ist auch in der Wear Compose-Navigation enthalten:

  • SwipeDismissableNavHost - stellt einen Platz in der Compose-Hierarchie zur Verfügung, an dem eine eigenständige Navigation erfolgen kann. Eine Rückwärtsnavigation wird durch eine Wischgeste ermöglicht. Inhalte werden in einem SwipeToDismissBox mit der aktuellen Navigationsebene angezeigt. Wenn Sie zum Schließen wischen, wird gegebenenfalls die vorherige Navigationsebene im Hintergrund angezeigt.

  • In den vorherigen Versionshinweisen für die verschiedenen Alphaversionen finden Sie weitere Informationen dazu.

API-Änderungen

  • CurvedModifier.padding*-Funktionen wurden hinzugefügt. Sie werden verwendet, um zusätzlichen Abstand um eine gebogene Komponente herum anzugeben. (I4dbb4)
  • CompositionLocal interne Klasse wurde entfernt (I42490)
  • Zur Orientierung haben wir konstante Werte für die Symbolgrößen Button, CompactButton und ToggleButton hinzugefügt. (I57cab)
  • Aktivierten Parameter zu AppCard und TitleCard hinzufügen. Jetzt haben sie eine ähnliche API wie androidx.compose.material-Karten. Ist der Parameter auf „false“ gesetzt, kann die Karte nicht angeklickt werden. (Idc48d, b/228869805)

Fehlerkorrekturen

  • Der Stepper deaktiviert jetzt die Schaltflächen zum Verringern und Erhöhen, wenn die Unter-/Obergrenze erreicht ist, und wendet ContentAlpha.disable auf iconColor an (I4be9f).
  • Wir haben einen Abstand von 1 dp um Picker-Inhalte hinzugefügt, wenn sie mit einem Farbverlauf gezeichnet werden, um Bildsprünge beim Wischen zu vermeiden. (I0b7b9)
  • Screenshottests für PositionIndicator hinzufügen (I5e8bc)
  • Weitere Tests für AppCard und TitleCard hinzufügen (I85391, b/228869805)

Version 1.0.0-alpha21

20. April 2022

androidx.wear.compose:compose-foundation:1.0.0-alpha21, androidx.wear.compose:compose-material:1.0.0-alpha21 und androidx.wear.compose:compose-navigation:1.0.0-alpha21 wurden veröffentlicht. Version 1.0.0-alpha21 enthält diese Commits.

Neue Funktionen

  • Neue Modifikatoren für gebogene Elemente hinzugefügt, um den Hintergrund eines gebogenen Elements anzugeben: CurvedModifier.background, .radialGradientBackground und .angularGradientBackground (I8f392)
  • Angabe des Überlaufmodus für gebogenen Text (Clip/Ellipsen/sichtbar) zulassen. (I8e7aa)
  • Es wurde ein CurvedModifier.weight-Modifikator hinzugefügt, der dem in „Schreiben“ ähnelt. Dies kann für die untergeordneten Elemente von CurvedLayout (für die Breite) und für untergeordnete Elemente von CurvedColumn (für die Höhe) verwendet werden. (I8abbd)
  • Die Modifikatoren CurvedModifier.size, .angularSize und .radialSize wurden hinzugefügt, um die Größe eines gebogenen Elements anzugeben. (I623c7)

API-Änderungen

  • Ordnen Sie die Parameter in der Wear Compose API neu an, damit der Hintergrund und die Farbe einheitlich sind (I43208).
  • Im Uhrzeigersinn entfernt und insideOut-Parameter und in neuen Klassen durch ausdrucksstärkere Konstanten ersetzt. Die Ausrichtungsrichtung für das gebogene Layout kann jetzt LayoutDirection erkannt und übernommen werden, wenn keine Angabe erfolgt (If0e6a).
  • Wir haben autoCenter: Boolean durch autoCenter: AutoCentringParams ersetzt, um ein API-Problem mit ScalingLazyColumn zu beheben. (Ia9c90)
  • Wir haben iconTintColor und toggleControlTintColor in der gesamten API (Chip/ToggleChip/Dialog/Slider/Stepper/...) in iconColor und toggleControlColor umbenannt, da die Farbe auf den Slot „icon/toggleControl“ angewendet wird. (ID 238)
  • PageIndicatorStyle-Enum in Wertklasse (I2dc72) umschreiben
  • Wir haben einigen Plätzen in unseren Composables RowScope/ColumnScope/BoxScope hinzugefügt, um Entwicklern zu zeigen, von welchen Annahmen das Layout ausgegangen wird. Auf diese Weise können Entwickler zusätzliche Modifikatoren für einige Slot-Inhalte verwenden und vermeiden, dass zusätzliche Layoutelemente bereitgestellt werden müssen. Außerdem haben wir einige kleinere Aktualisierungen an den Farben der AppCard bzw. der Titelkarte vorgenommen, sodass timeColor und appColor standardmäßig auf contentColor festgelegt sind. Diese Eigenschaften können bei Bedarf trotzdem alle einzeln überschrieben werden. (I26b59)
  • SwipeToDismissBoxState.Companion Objekt wurde als privat gekennzeichnet (I39e84)
  • Korrigieren Sie die Reihenfolge der Parameter für InlineSlider und Stepper. Einfache Änderung zur Einhaltung der API-Richtlinien (I11fec)
  • Wir haben das Saver-Objekt für SwipeToDismissBoxState entfernt, da es nicht verwendet wurde. (Ifb54e)
  • Wir haben CompactChip aktualisiert, um sie an die neueste UX-Spezifikation anzupassen. Der Abstand wurde auf horizontal = 12.dp und vertikal = 0.dp reduziert. Die Schriftart für das Label wurde von "Schaltfläche" zu "Untertitel1" geändert. Die empfohlenen Symbolgrößen sind 20 x 20, wenn sowohl das Symbol als auch das Label vorhanden sind, und 24 x 24 für einen kompakten Symbolchip. Für den Anwendungsfall „Nur Symbol“ wurde außerdem sichergestellt, dass das Symbol zentriert ist. (IEa2be)
  • Wir haben ScalingLazyListLayoutInfo einige neue Felder hinzugefügt, damit Entwickler sehen können, wie viel contentPadding und autoCenteringPadding bereits angewendet wurden. Diese können für Entwickler bei der Berechnung von Fling/Scrollen nützlich sein (I7577b).
  • Wir haben In-/Out-Übergänge für Dialog implementiert. Der Parameter showDialog wurde hinzugefügt und das Dialogfeld steuert jetzt seine eigene Sichtbarkeit. Dadurch kann Dialog die Intro- und Outro-Animationen ausführen, wenn das Dialogfeld angezeigt/ausgeblendet wird. Die Outro-Animation wird nicht ausgeführt, wenn der Nutzer das Dialogfeld durch Wischen zum Schließen verlässt. Wir haben auch einen Standardwert für den Status in der kürzlich hinzugefügten SwipeToDismissBox-Überlastung hinzugefügt. (I682a0)
  • Zur besseren Unterstützung von i18n und a11y haben wir ToggleChip und SplitToggleChip geändert, sodass sie keine Standardeinstellungen für den Slot toggleControl mehr haben. Außerdem haben wir ToggleChipDefaults geändert, sodass die folgenden Methoden jetzt ImageVector anstelle von Symbol zurückgeben (beachten Sie, dass sie nicht mehr @Composables zurückgeben, sondern mit Kleinbuchstaben beginnen), SwitchIcon()->switchIcon(), CheckboxIcon->checkboxIcon() und RadioIcon()->radioIcon(). Dies ermöglicht und ermutigt Entwickler, ihre eigenen Icon()-Komponierbaren mit einem geeigneten contentDescription-Satz zu erstellen. (I5bb5b)
  • Wir haben einen SwipeDismissableNavHostState-Parameter zu SwipeDismissableNavHost hinzugefügt. Dies unterstützt die Verwendung von Kantenwischen auf Bildschirmen, die als Navigationsziele verwendet werden, da SwipeToDismissBoxState jetzt hochgezogen und verwendet werden kann, um sowohl SwipeDismissableNavHostState als auch Modifier.edgeSwipeToDismiss auf Bildschirmen zu initialisieren, die ein Edge-Wischen erfordern. (I819f5, b/228336555)

Fehlerkorrekturen

  • Geschwungene Layouts sollten bei Bedarf aktualisiert werden. (Ie8bfa, b/229079150)
  • Fehlerkorrektur für https://issuetracker.google.com/issues/226648931 (Ia0a0a, b/226648931)
  • Unnötige experimentelle Anmerkungen entfernt (I88d7e)

Version 1.0.0-alpha20

6. April 2022

androidx.wear.compose:compose-foundation:1.0.0-alpha20, androidx.wear.compose:compose-material:1.0.0-alpha20 und androidx.wear.compose:compose-navigation:1.0.0-alpha20 wurden veröffentlicht. Version 1.0.0-alpha20 enthält diese Commits.

Neue Funktionen

  • Fügen Sie edgeSwipeToDismiss-Modifikator für SwipeToDismiss hinzu. swipeToDismiss darf nur am linken Rand des Darstellungsbereichs aktiv sein. Wird verwendet, wenn die Mitte des Bildschirms horizontales Paging unterstützen muss, z. B. das 2-D-Scrollen einer Karte oder horizontales Wischen zwischen Seiten.(I3fcec, b/200699800)

API-Änderungen

  • Grundlegende Implementierung von CurvedModifiers. Dies eröffnet Möglichkeiten zur Anpassung von gebogenen Inhalten. Es gibt jedoch noch keine CurvedModifiers und es ist möglich, später benutzerdefinierte Modifikatoren zu erstellen. (I9b8df)
  • EdgeSwipeAktualisierung der Dokumentation zu Modifikatoren und der Standardwerte (I6d00d) zum besseren Verständnis
  • PageIndicator Slot in Scaffold hinzufügen. Wenn Sie PageIndicator direkt zu Scaffold hinzufügen, können wir dafür sorgen, dass es auf kreisförmigen Geräten korrekt angezeigt wird. (Ia6042)
  • Entfernen Sie die Standardsymbole aus den Parametern InlineSlider und Stepper. So können Entwickler auf die Anforderungen an Lokalisierung und Barrierefreiheit achten. In Demos und Beispielen wurde die Verwendung von Standardsymbolen gezeigt. (I7e6fd)
  • Nachgestellte und führende Parameternamen durch Start und Ende in TimeText ersetzen (Iaac32)
  • Wir haben eine SwipeToDismissBox-Überlastung mit einem onDismissed-Parameter hinzugefügt, um zu unterstützen, dass häufig ein Navigationsereignis ausgelöst wird, wenn die Wischgeste abgeschlossen ist. (I50353, b/226565726)
  • ExperimentalWearMaterialApi-Anmerkungen aus der TimeText-Nutzung entfernt (Ide520)
  • Wir haben ScalingLazyList/Column Bereichs- und Informationsschnittstellen als versiegelt gekennzeichnet, da sie nicht für externe Entwickler gedacht sind. So können wir in Zukunft neue Mitglieder hinzufügen, ohne Änderungen an Binärprogrammen vornehmen zu müssen. (I7d99f)
  • Wir haben der Auswahl eine neue flingBehaviour-Eigenschaft und eine PickerDefaults.flingBehaviour()-Methode hinzugefügt, um die Konfiguration des Suchverhaltens zu ermöglichen, z. B. die RSB-Unterstützung. Mit PickerState wird jetzt die ScrollableState-Schnittstelle implementiert. (Ib89c7)

Fehlerkorrekturen

  • Aktualisieren Sie die ART-Basisprofilregeln (Android Runtime) für Wear Compose-Bibliotheken. ART kann Profilregeln auf Geräten nutzen, um im Voraus eine bestimmte Teilmenge der Anwendung zu kompilieren und so die Leistung der Anwendung zu verbessern. Dies hat keine Auswirkungen auf Debug-fähige Anwendungen. (Iaa8ef)
  • Dokumentation verbessern (I2c051)

Version 1.0.0-alpha19

23. März 2022

androidx.wear.compose:compose-foundation:1.0.0-alpha19, androidx.wear.compose:compose-material:1.0.0-alpha19 und androidx.wear.compose:compose-navigation:1.0.0-alpha19 wurden veröffentlicht. Version 1.0.0-alpha19 enthält diese Commits.

API-Änderungen

  • CurvedRow wurde in CurvedLayout umbenannt und in einen Bereich mit DSL umgestaltet. Mithilfe dieser DSL können komplexere, gebogene Layouts mithilfe einer Reihe von verschachtelten curvedRow- und curvedColumn-Elementen angegeben werden. Diese entsprechen den Äquivalenten für das gebogene Layout für Zeile und Spalte. Innerhalb dieser Layout-Elemente können drei Elemente verwendet werden: curvedComposable (zum Hinzufügen von @Composable), basicCurvedText (gekrümmter Text der Stiftung) und curvedText (Kleidungsmaterial mit gebogenem Text tragen). (Ib776a)
  • Machen Sie die Seite für das PositionIndicator konfigurierbar. Die Basisposition von PositionIndicator kann nun als End (auf die Layout-Richtung wahrnehmbar), Gegenüber-Rsb (berücksichtigt die Bildschirmdrehung, gegenüber dem physischen RSB) oder als absolute Werte (Links &) konfiguriert werden Richtig. (I2f1f3)
  • Für SwipeToDismissBox haben wir SwipeDismissTarget.Original in SwipeToDismissValue.Default und SwipeDismissTarget.Dismissal in SwipeToDismissValue.Dismissed umbenannt. Außerdem haben wir SwipeToDismissBoxDefaults.BackgroundKey und SwipeToDismissBoxDefaults.ContentKey nach SwipeToDismissKeys.Background bzw. SwipeToDismissKeys.Content verschoben. (I47a36)
  • Wir haben der Auswahl einen schreibgeschützten Modus für Bildschirme mit mehreren Auswahlfeldern hinzugefügt, in denen jeweils nur eine Auswahl bearbeitet werden kann. Wenn die Auswahl schreibgeschützt ist, werden die aktuell ausgewählte Option und gegebenenfalls ein Label angezeigt. (I879de)
  • SwipeToDismissBoxState wurde refaktoriert, um den Bereich von ExperimentalWearMaterialApi auf Modifier.swipeable und SwipeableState zu beschränken, die jetzt intern verwendet werden. SwipeToDismissBoxState hat jetzt currentValue-, targetValue-, isAnimationRunning- und snapTo-Mitglieder, um häufige Anwendungsfälle zu unterstützen. Bitte teile uns mit, wenn du weitere Properties zur Verfügung stellen möchtest. Außerdem wurde das Verhalten von SwipeableState für den Fall behoben, dass der Versatz beim Wischen innerhalb eines Rundungsfehlers eines Ankers lag. (I58302)

Fehlerkorrekturen

  • Vereinfachter und korrigierter Code zur Erkennung, ob der Inhalt einer ScalingLazyColumn gescrollt werden kann. Damit wird entschieden, ob ein Bildlaufleiste oder nicht) (I7bce0)
  • Ein Fehler in der Positionsanzeige wurde behoben, der bei Verwendung mit mehr als einem Status und beim Wechseln zwischen diesen Statusangaben bestand (I320b5).
  • Wir haben die Typografie/Schriftarten des Standarddesigns zum Schreiben von Text für Wear OS so aktualisiert, dass er unseren neuesten UX-Richtlinien entspricht. Dabei sind die Werte display1 (40.sp) und display2 (34.sp) jetzt kleiner als die vorherigen Werte. Außerdem wurden verschiedene kleinere Aktualisierungen der Zeilenhöhe und des Zeilenabstands vorgenommen. (Beispiel 3077)
  • Wir haben SwipeToDismissBox einen neuen Widerstand hinzugefügt. So wird eine Bewegung nur dann ausgelöst, wenn zum Schließen gewischt wird und nicht in die entgegengesetzte Richtung. (Ifdfb9)
  • Wir haben einige der Standardparameterwerte für die CircularProgressIndicator-Funktionen geändert, um sie an die UX-Richtlinien für Wear Material Design anzupassen. Für die Spinner-/Indeterminant-Version wurden Größe (40->24.dp), AnzeigeColor (primär->onBackground), transparente TrackColor (30%->10%) und Strichbreite (4->3dp) aktualisiert. Für die Progress/Determinate-Version wurde die trackColor-Transparenz (30%->10%) aktualisiert. (I659cc)
  • Wir haben die Standard-Skalierungsparameter von ScalingLazyColumn entsprechend den neuesten UX-Spezifikationen von Wear Material Design aktualisiert. Dies führt dazu, dass Listenelemente beginnend näher an der Listenmitte skaliert werden, aber am Listenrand weniger skaliert werden als zuvor. (Ica8f3)
  • Einige Anpassungen an ScalingLazyColumnDefaults.snapFlingBehavior, um das Ende der Animation zu verbessern (If3260)

Version 1.0.0-alpha18

9. März 2022

androidx.wear.compose:compose-foundation:1.0.0-alpha18, androidx.wear.compose:compose-material:1.0.0-alpha18 und androidx.wear.compose:compose-navigation:1.0.0-alpha18 wurden veröffentlicht. Version 1.0.0-alpha18 enthält diese Commits.

API-Änderungen

  • Mehrere Verbesserungen an PositionIndicator: ShowResult in PositionIndicatorVisibility umbenannt. Einige Leistungsverbesserungen, um Neuberechnungen zu vermeiden, wenn sie nicht benötigt werden (Iaed9d)
  • Die empfohlene Farbe für SplitToggleChip wurde aktualisiert. SplitToggleChips haben jetzt einen einfarbigen Hintergrund, wenn sie aktiviert oder deaktiviert sind. Die Einfärbung des Umschaltsteuerelements gibt an, ob die Komponente aktiviert ist oder nicht. Wir haben eine neue ToggleDefaults.splitToggleChipColors() hinzugefügt, um das neue Farbschema zu unterstützen. Außerdem haben wir die toggleChipColors()-Methoden beim Entfernen von „splitBackgroundOverlayColor“ (I7e66e) vereinfacht.
  • Wir haben dem ScalingLazyListItemInfo „unAdjustedSize“ hinzugefügt, da es aufgrund der Genauigkeit der Gleitkommazahl nicht sicher ist, die ursprüngliche Elementgröße mit der skalierten Größe und dem Skalierungsfaktor zu berechnen. (I54657, b/221079441)
  • HorizontalPageIndicator hinzufügen. Dieser Wert steht für die Gesamtzahl der Seiten und eine ausgewählte Seite. Kann je nach Form des Geräts linear oder gekrümmt sein. Es unterstützt auch eine benutzerdefinierte Indikatorform, die definiert, wie jeder Indikator visuell dargestellt wird. (Iac898)
  • Wir haben PickerState aktualisiert, sodass „numberOfOptions“ aktualisiert werden kann. Dies unterstützt Anwendungsfälle wie DatePicker, bei denen sich die Anzahl der Tage im Monat je nach ausgewähltem Monat ändert. Der Konstruktorparameter für PickerState wurde entsprechend in initialNumberOfOptions geändert. (Iad066)
  • PositionIndicator ausblenden, wenn eine Bildlaufleiste angezeigt wird und nicht Scrollen. (Id0a7f)
  • Aus Gründen der Einheitlichkeit mit dem Gerüst zeigt unsere Vollbild-Dialogkomponente jetzt ein PositionIndicator und ein Vignette an. Außerdem verwenden wir jetzt ScalingLazyColumn anstelle von Column. Das bedeutet, dass sich der Inhalt des Dialogfelds jetzt in ScalingLazyListScope befindet und normalerweise von Element { /* content */ } eingeschlossen sein muss. Das Dialogfeld unterstützt den Parameter „ verticalArrangement“ entsprechend. (Idee 13)
  • Wir haben den Namen ToggleChip und SplitToggleChip der Eigenschaft „switchIcon“ in „switchControl“ geändert, um sie besser an Material Design anzupassen und Designern und Entwicklern bei der Navigation in der API zu helfen. (If5921, b/220129803)
  • Wir haben der Funktion „Wear-Material“-Designtypologie einen neuen Eintrag „caption3“ hinzugefügt.Caption3 ist eine kleine Schriftart, die für das Schreiben von zusätzlichem Text im Langformat wie z. B. rechtliche Texte verwendet wird. (I74b13, b/220128356)

Fehlerkorrekturen

  • Beenden Sie das Andocken der Animation, wenn wir dort sind. (Idb69d)
  • Animieren Sie Änderungen in PositionIndicator. (I94cb9)
  • Aufgrund von UI/UX-Feedback haben wir die automatische Zentrierung von ScalingLazyColumn so geändert, dass nur genügend Platz vorhanden ist, um sicherzustellen, dass die Elemente mit dem Index ScalingLazyListState.initialCenterItemIndex oder höher vollständig bis zur Mitte des Darstellungsbereichs gescrollt werden können. So können Entwickler ein oder zwei Elemente zu einem Element anfänglich in der Mitte platzieren, die nicht in die Mitte gescrollt werden können. Das bedeutet, dass das automatische Zentrieren von ScalingLazyColumn nicht über initialCenterItemIndex/initialCenterItemScrollOffset hinausgescrollt werden kann (I22ee2).
  • Wir haben eine Demo für die Datumsauswahl hinzugefügt und einen Fehler in PickerState behoben, bei dem die initialSelectedOption angewendet wurde, bis die Auswahl angezeigt wurde. (Id0d7e)
  • Um das Beschneiden breiterer ScalingLazyColumn-Elemente auf runden Bildschirmen zu reduzieren, wurde der standardmäßige horizontale Abstand von Inhalten von 8 auf 10 dp erhöht. (I0d609)
  • Achte darauf, dass beim Scrollen PositionIndicator angezeigt wird. (Ied9a2)

Version 1.0.0-alpha17

23. Februar 2022

androidx.wear.compose:compose-foundation:1.0.0-alpha17, androidx.wear.compose:compose-material:1.0.0-alpha17 und androidx.wear.compose:compose-navigation:1.0.0-alpha17 wurden veröffentlicht. Version 1.0.0-alpha17 enthält diese Commits.

Neue Funktionen

  • Wir haben Snap-Unterstützung hinzugefügt, die mit ScalingLazyColumn verwendet werden kann. Legen Sie flingBehavior = ScalingLazyColumnDefaults.flingWithSnapBehavior(state) fest, um die Snap-Unterstützung zu aktivieren. (I068d3, b/217377069)
  • Wir haben einige Demos für Picker hinzugefügt, wählen Sie entweder das 24- oder das 12-Stunden-Format aus. (IE5552)

API-Änderungen

  • Problem mit TimeText benutzerdefinierten Schriftarten und Stile auf quadratischem Gerät (Iea76e)
  • ScalingLazyListLayoutInfo hat jetzt reverseLayout, viewportSize und Ausrichtungseigenschaften, die mit denen von LazyListLayoutInfo übereinstimmen (I4f258, b/217917020)
  • ScalingLazyColumn hat jetzt eine userScrollEnabled-Property, die der Property LazyList entspricht (I164d0, b/217912513).
  • Die Auswahl hat jetzt standardmäßig oben und unten einen Farbverlauf (Iab92a).

Fehlerkorrekturen

  • Wir haben ScalingLazyColumn geändert, sodass die Datei nicht mehr gierig den gesamten Bereich des übergeordneten Elements ausfüllt. Stattdessen wird seine Größe von der Größe seines Inhalts genommen. Das stimmt damit mit dem Verhalten von LazyColumn überein. Wenn Sie das alte Verhalten wiederherstellen möchten, übergeben Sie Modifier.fillMaxWidth()/width()/widthIn() an ScalingLazyColumn (I51bf8).
  • Wir haben die Ausnahmemeldung in SwipeDismissableNavHost.kt verbessert, die ausgelöst wurde, wenn der Navigations-Backstack leer war. (I1b1dc)

Version 1.0.0-alpha16

9. Februar 2022

androidx.wear.compose:compose-foundation:1.0.0-alpha16, androidx.wear.compose:compose-material:1.0.0-alpha16 und androidx.wear.compose:compose-navigation:1.0.0-alpha16 wurden veröffentlicht. Version 1.0.0-alpha16 enthält diese Commits.

Neue Funktionen

  • CircularProgressIndicator hinzufügen. Fortschrittsanzeigen zeigen die Länge eines Prozesses oder eine nicht angegebene Wartezeit an. Unterstützt im Vollbildmodus eine Lücke (Cutout) für TimeText oder andere Komponenten. (Iab8da)

API-Änderungen

  • Die Auswahl verfügt jetzt über den Parameter flingBehavior. Durch den Standardwert wird beim Scrollen/Fingen an die nächstgelegene Option angedockt. (I09000)
  • Zusätzliche Integer API für InlineSlider und Stepper (I1b5d6)

Fehlerkorrekturen

  • Wir haben den standardmäßigen initialCenterItemIndex für ScalingLazyListState von 0 nach 1 geändert. Das bedeutet, dass das zweite Listenelement (Index == 1) bei der Initialisierung in der Mitte des Darstellungsbereichs und das erste Element (index == 0) davor platziert wird, wenn es nicht bei der Zustandskonstruktion mit ScalingLazyListState.rememberScalingLazyListState(initialCenterItemIndex =) überschrieben wird. Dies ermöglicht einen besseren standardmäßigen visuellen Effekt, da der Großteil des Darstellungsbereichs mit Listenelementen gefüllt wird. (I0c623, b/217344252)
  • Wir haben den standardmäßigen extraPadding für ScalingLazyColumn von 10% auf 5 % reduziert, damit genügend Listenelemente gezeichnet werden können (auch wenn wir die Größe einiger Elemente verkleinern). Dadurch wird vermieden, dass zusätzliche Listenelemente zusammengestellt werden, die möglicherweise nicht im Darstellungsbereich angezeigt werden. Wenn nicht standardmäßige Skalierungsparameter verwendet werden, beispielsweise eine extremere Skalierung, kann der Entwickler das zusätzliche Padding mit viewportVerticalOffsetResolver anpassen. (I76be4)
  • Problem mit TimeText in mehreren Zeilen auf einem quadratischen Gerät beheben (Ibd3fb)
  • Wir haben ScalingLazyColumn geändert, sodass die Datei nicht mehr gierig den gesamten Bereich des übergeordneten Elements ausfüllt. Stattdessen wird seine Größe von der Größe seines Inhalts genommen. Dies entspricht dem Verhalten von LazyColumn. Wenn du das alte Verhalten wiederherstellen möchtest, übergib Modifier.fillMaxSize() an ScalingLazyColumn. HINWEIS: Diese Änderung ist unvollständig und wird im nächsten Alpharelease berücksichtigt. (I3cbfa)

Version 1.0.0-alpha15

26. Januar 2022

androidx.wear.compose:compose-foundation:1.0.0-alpha15, androidx.wear.compose:compose-material:1.0.0-alpha15 und androidx.wear.compose:compose-navigation:1.0.0-alpha15 wurden veröffentlicht. Version 1.0.0-alpha15 enthält diese Commits.

API-Änderungen

  • Wir haben die neue Property autoCentering zu ScalingLazyColumn hinzugefügt. Ist dieser Wert auf „true“ gesetzt (Standardeinstellung), können alle Elemente, einschließlich des ersten und letzten Elements, gescrollt werden, sodass sie in der Mitte des Darstellungsbereichs der Liste sichtbar sind. Wenn Sie die automatische Zentrierung verwenden, sollten Sie den vertikalen Inhaltsabstand wahrscheinlich auf 0.dp festlegen. Wenn sowohl das automatische Zentrieren als auch der vertikale Inhaltsabstand zur Verfügung steht, ist vor dem ersten und nach dem letzten Listenelement zusätzlicher Platz verfügbar, sodass noch weiter gescrollt werden kann. (I2a282, b/214922490)
  • Wir haben eine Dialog-Komponente hinzugefügt, die es jeder zusammensetzbaren Funktion ermöglicht, ein Vollbild-Dialogfeld auszulösen, das über anderen Inhalten platziert wird. Wenn das Dialogfeld angezeigt wird, lässt es sich durch Wischen schließen. Während der Wischgeste werden die Inhalte des übergeordneten Elements im Hintergrund angezeigt. Der Dialoginhalt muss Alert oder Confirmation sein (aus den früheren Komponenten AlertDialog und ConfirmationDialog umbenannt) – Alert, Confirmation und Dialog sind alle im androidx.wear.compose.material.dialog-Paket. „Warnmeldung“ und „Bestätigung“ können als Navigationsziele verwendet werden. Außerdem wurde bei Bedarf ColumnScope zu den Parametern für Benachrichtigungen und Bestätigung hinzugefügt. (Ia9014)
  • Wir haben „onSurfaceVariant2“ aus „Compose for Wear OS Material Design Colors“ entfernt und „Verwendungen in der Mediathek“ durch „onSurfaceVariant“ ersetzt. (ICD592)
  • Es wurde eine Methode hinzugefügt, mit der eine Option im PickerState programmatisch ausgewählt werden kann. Die ursprünglich ausgewählte Option kann jetzt auch beim Erstellen einer PickerState angegeben werden. (I92bdf)
  • Wir haben Unterstützung für die Anpassung des Interaktionsverhaltens von ScalingLazyColumn hinzugefügt. (I1ad2e, b/208842968)
  • NavController.currentBackStackEntryAsState() wurde der Wear.Compose.Navigation-Bibliothek hinzugefügt. (If9028, b/212739653)
  • Modifier.onRotaryScrollEvent() und Modifier.onPreRotaryScrollEvent() für Wear-Geräte mit drehbarer Seitentaste wurden hinzugefügt.(I18bf5, b/210748686)

Version 1.0.0-alpha14

12. Januar 2022

androidx.wear.compose:compose-foundation:1.0.0-alpha14, androidx.wear.compose:compose-material:1.0.0-alpha14 und androidx.wear.compose:compose-navigation:1.0.0-alpha14 wurden veröffentlicht. Version 1.0.0-alpha14 enthält diese Commits.

Neue Funktionen

  • Wir haben ScalingLazyListState eine Reihe von Methoden hinzugefügt, mit denen Entwickler das Scrollen zu bestimmten Listenelementen steuern und auch den anfänglichen Listeneintrag und den Versatz festlegen können.

    Im Rahmen dieser Änderung haben wir auch die ScalingLazyList so geändert, dass sie um den Mittelpunkt des Darstellungsbereichs der ScalingLazyList und nicht um den Anfang des Darstellungsbereichs herum ausgerichtet ist.

    Dem ScalingLazyList wurde die neue Eigenschaft anchorType: ScalingLazyListAnchorType = ScalingLazyListAnchorType.ItemCenter hinzugefügt, mit der gesteuert werden kann, ob die Mitte (ScalingLazyListAnchorType.ItemCenter) oder Edge (ScalingLazyListAnchorType.ItemStart) an der Mittellinie des Darstellungsbereichs ausgerichtet werden soll.

    Aus diesem Grund haben sich ScalingLazyListItemInfo.offset und ScalingLazyListItemInfo.adjustedOffset geändert. Sie spiegeln jetzt den Versatz des Elements in Bezug auf die Position des Listenelements und den anchorType der Liste wider. Beispiel: Für eine ScalingLazyColumn mit dem anchorType-Wert ItemCenter und ein Listenelement, das mit seiner Mitte in der Mitte des Darstellungsbereichs positioniert ist, wäre der Versatz 0.

    Die neuen Methoden sind scrollTo, animatedScrollTo, centerItemIndex und centerItemOffset. (I61b61)

  • Wir haben einen Handler für die Schaltfläche „Zurück“ zu SwipeDismissableNavHost hinzugefügt, sodass durch Drücken von „Zurück“ zur vorherigen Ebene in der Navigationshierarchie gewechselt wird. (I5b086, b/210205624)

Version 1.0.0-alpha13

15. Dezember 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha13, androidx.wear.compose:compose-material:1.0.0-alpha13 und androidx.wear.compose:compose-navigation:1.0.0-alpha13 wurden veröffentlicht. Version 1.0.0-alpha13 enthält diese Commits.

API-Änderungen

  • Wir haben RangeIcons intern gemacht (intern referenziert von InlineSlider und Stepper). (I927ec)

Fehlerkorrekturen

  • Es wurde ein Problem behoben, bei dem SwipeDismissableNavHost der Hierarchie „Compose“ ein Ziel hinzugefügt hat, bevor es den Lebenszyklusstatus „CREATED“ erreicht hat, was zu einer IllegalStateException führte. Diese Korrektur war eine Voraussetzung, um die Abhängigkeit von navigation-compose auf 2.4.0-beta02 und darüber hinaus zu aktualisieren. (I40a2b, b/207328687)

  • Es wurde eine Drawables-Enum-Klasse hinzugefügt, um Drawable-Ressourcen in der Wear Compose-Bibliothek abzurufen, sodass eine Reflexion nicht mehr erforderlich ist. Dadurch wird ein Fehler behoben, bei dem Mediathek-Drawables bei minifyEnabled=true oder shrinkResources=true entfernt wurden. (Ib2a98)

  • Tests für Stepper in Wear Compose hinzugefügt (I2d03a)

  • Beispiele für SwipeDismissableNavHost in der Wear Compose-Navigation wurden hinzugefügt. (I85f06)

Version 1.0.0-alpha12

1. Dezember 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha12, androidx.wear.compose:compose-material:1.0.0-alpha12 und androidx.wear.compose:compose-navigation:1.0.0-alpha12 wurden veröffentlicht. Version 1.0.0-alpha12 enthält diese Commits.

Neue Funktionen

  • Wir haben eine Stepper-Komponente hinzugefügt, mit der Nutzende eine Auswahl aus einem Wertebereich treffen können. Stepper ist ein Vollbild-Steuerelement mit Schaltflächen zum Erhöhen und Verringern oben und unten sowie einem Slot in der Mitte (erwartet, dass entweder ein Chip oder ein Text verwendet wird). Die Symbole der Schaltflächen können bei Bedarf angepasst werden. (I625fe)

  • Wir haben zwei neue zusammensetzbare Funktionen für die Anzeige von Dialogfeldern hinzugefügt: AlertDialog wartet auf eine Antwort des Nutzers und zeigt einen Titel, ein Symbol, eine Nachricht und entweder a) zwei Schaltflächen für einfache positive/negative Entscheidungen oder b) vertikal gestapelte Chips oder Ein-/Aus-Chips für flexiblere Optionen an. ConfirmationDialog zeigt eine Bestätigung mit einem Zeitlimit an. Dieses einfache Dialogfeld hat Plätze für einen Titel und ein (animiertes) Symbol. (Ic2cf8)

API-Änderungen

  • Fügen Sie den vorgeschlagenen Werten für die Dialogdauer Einheiten (Millisekunden) hinzu. (I09b48)

Version 1.0.0-alpha11

17. November 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha11, androidx.wear.compose:compose-material:1.0.0-alpha11 und androidx.wear.compose:compose-navigation:1.0.0-alpha11 wurden veröffentlicht. Version 1.0.0-alpha11 enthält diese Commits.

Neue Funktionen

  • Wir haben eine Auswahlkomponente hinzugefügt, mit der Nutzer ein Element aus einer scrollbaren Liste auswählen können. Standardmäßig wird die Liste der auswählbaren Elemente "unendlich" wiederholt in beide Richtungen, um den Eindruck eines rotierenden Zylinders von der Seite zu vermitteln. In späteren Versionen werden zwei Funktionen hinzugefügt: das Andocken an einen Wert nach einem Wischen oder Ziehen; Hinzufügen einer Funktion zu PickerState, um zum aktuellen Wert zu gelangen/zum aktuellen Wert zu scrollen (I6461b)

API-Änderungen

  • Ein ScalingLazyItemScope und einige neue Modifikatoren fillParentMaxSize/fillParentMaxWidth/fillParentMaxHeight wurden hinzugefügt, um zu ermöglichen, dass die Größe von Listenelementen an die Größe des übergeordneten Containers angepasst wird. Für Elemente kann festgelegt werden, dass sie die gesamte Größe oder einen Teil der Größe des übergeordneten Elements ausfüllen. Dadurch werden Funktionen angezeigt, die bereits in der LazyRow/Column (I4612f) verfügbar sind.
  • ScalingLazyColumn wird jetzt unterstützt, damit Elemente einen Schlüssel haben können. Außerdem wurden Convenience-Methoden hinzugefügt, mit denen Elemente aus Arrays und Listen hinzugefügt werden können. (IC1f89)

Fehlerkorrekturen

  • Weitere Beispiele für TimeText (I8cb64)

Version 1.0.0-alpha10

3. November 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha10, androidx.wear.compose:compose-material:1.0.0-alpha10 und androidx.wear.compose:compose-navigation:1.0.0-alpha10 wurden veröffentlicht. Version 1.0.0-alpha10 enthält diese Commits.

Neue Funktionen

  • Es wurde ein InlineSlider für Wear Compose hinzugefügt. Mit InlineSlider können Nutzer aus einem Wertebereich eine Auswahl treffen. Der Auswahlbereich wird als Balken zwischen den Mindest- und Höchstwerten des Bereichs angezeigt, aus dem Nutzer einen einzelnen Wert auswählen können. (If0148)

  • Sehen Sie sich das neue Schreiben für WearOS Codelab an.

API-Änderungen

  • Der Macro-Benchmark hat jetzt einen minSdkVersion von 23. (If2655)

Fehlerkorrekturen

  • Umgang mit Umstellungen aktualisieren in SwipeDismissableNavHost in a SideEffect (I04994, b/202863359)
  • Umgang mit Umstellungen aktualisieren in SwipeDismissableNavHost (I1cbe0, b/202863359)

Version 1.0.0-alpha09

27. Oktober 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha09, androidx.wear.compose:compose-material:1.0.0-alpha09 und androidx.wear.compose:compose-navigation:1.0.0-alpha09 wurden veröffentlicht. Version 1.0.0-alpha09 enthält diese Commits.

Neue Funktionen

  • Wir haben die Entwicklervorschau der Funktion „Compose“ für Wear OS eingeführt. In unserem Blogpost werden die wichtigsten zusammensetzbaren Funktionen vorgestellt und Links zu weiteren Ressourcen für den Einstieg veröffentlicht.

API-Änderungen

  • Entwickler können jetzt alle Farben des Farbdesigns von Wear Material Design anpassen. (I4759b, b/199754668)

Fehlerkorrekturen

  • SwipeToDismissBox-Beispiele hinzugefügt, die den Status beibehalten (Ibaffe)
  • Es wurden Links zu developer.android.com-Leitfäden von KDocs für CurvedText, TimeText und SwipeToSchließenBox aus. (I399d4)
  • SwipeDismissableNavHost löst jetzt aus, wenn kein aktuelles Ziel vorhanden ist (zeigt an, dass NavGraph wurde nicht mit der Funktion wear.compose.navigation.composable entwickelt. Dienstprogramm) (I91403)
  • Zusätzliche Dokumentation und Beispiele für die Verwendung der Zeitquelle in TimeText (I4f6f0) wurden hinzugefügt.

Version 1.0.0-alpha08

13. Oktober 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha08, androidx.wear.compose:compose-material:1.0.0-alpha08 und androidx.wear.compose:compose-navigation:1.0.0-alpha08 wurden veröffentlicht. Version 1.0.0-alpha08 enthält diese Commits.

API-Änderungen

  • Wir haben die Properties „AppCard“ und „TitleCard“ body in „content“ umbenannt und an das Ende der Property-Liste verschoben, damit sie als nachgestelltes Lambda angegeben werden können. Außerdem wurde bodyColor in contentColor umbenannt, um die Konsistenz mit den neuen Namen der Anzeigenflächen zu gewährleisten. (I57e78)

Fehlerkorrekturen

  • Links zu developer.android.com hinzugefügt Anleitungen von KDocs zu Schaltflächen, Karten, Chips, Designs für die Positionsangabe und die Skalierung von Lazy Column-Komponenten. (I22428)
  • Das Problem mit Wear OS SwipeToDismissBox wurde behoben, wenn das Wischen manchmal nicht funktionierte. (I9387e)
  • Beispiele für Button, CompactButton, Chip, CompactChip, AppCard, TitleCard, SwitchButton, SwitchChip, SplitToggleChip (Iddc15)
  • MicroBenchmark-Leistungstests wurden hinzugefügt für Card, Chip, SwitchChip, TimeText und ScalingLazyColumn. (If2fe9)

Version 1.0.0-alpha07

29. September 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha07, androidx.wear.compose:compose-material:1.0.0-alpha07 und androidx.wear.compose:compose-navigation:1.0.0-alpha07 wurden veröffentlicht. Version 1.0.0-alpha07 enthält diese Commits.

Neue Funktionen

  • Es wurde eine CurvedText-Komponente in Material hinzugefügt. Diese Komponente ermöglicht es Entwicklern, auf einfache Weise gekrümmten Text zu schreiben, der der Krümmung eines Kreises folgt (normalerweise am Rand eines runden Bildschirms). (I19593)

API-Änderungen

  • Es wurden Tests für TimeText hinzugefügt (Idfead).
  • Wandelt ArcPaddingValues in eine Schnittstelle um. (Iecd4c)
  • Animation zu „SwipeToDismissBox“ hinzugefügt (I9ad1b)
  • Der Parameter hasBackground wurde zu SwipeToDismissBox hinzugefügt damit die Wischgeste deaktiviert werden kann, keine Hintergrundinhalte vorhanden sind. (I313d8)
  • rememberNavController() nimmt jetzt eine optionale Gruppe von Navigator Instanzen, die dem NavController zurückgegeben, um eine bessere Unterstützung zu ermöglichen (optional) Navigatoren wie die von Navigation für Begleitpersonen. (I4619e)
  • Verweis auf NamedNavArgument von Navigation-common und entfernen Text aus wear.compose.navigation aufrufen. (I43af6)

Fehlerkorrekturen

  • Fehler beim CurvedRow-Test-Test auf kleineren Geräten behoben. (If7941)
  • Das mögliche Flackern auf CurvedRow bei Aktualisierung des Inhalts wurde behoben. und sorgt dafür, dass die gebogene Zeile neu gemessen wird (Ie4e06).
  • ChipDefaults.degreeBackgroundChipColors() wurde entsprechend den Änderungen an den UX-Spezifikationen aktualisiert. Der Farbverlauf beginnt jetzt mit MaterialTheme.colors.primary mit alpha 32,5% und endet mit MaterialTheme.colors.surface mit Alpha bei 0% auf einem Hintergrund von MaterialTheme.colors.surface mit 75% Alpha. (ID1548)
  • Wir haben die Farben für SwitchChips im ausgewählten Zustand aktualisiert, damit sie den neuesten UX-Spezifikationen für Wear Material Design entsprechen. Bei ausgewählten Umschaltchips haben sie jetzt einen Farbverlaufshintergrund: MaterialTheme.color.surface @ 0% Alpha, oben links, MaterialTheme.color.primary @ 32% Alpha, unten rechts, auf einem Hintergrund von MaterialTheme.color.surface @ 75% Alpha. Dies führt zu einem feineren Unterschied zwischen aktiviert und deaktiviert für den Chip umschalten. (Idd40b)

Version 1.0.0-alpha06

15. September 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha06, androidx.wear.compose:compose-material:1.0.0-alpha06 und androidx.wear.compose:compose-navigation:1.0.0-alpha06 wurden veröffentlicht. Version 1.0.0-alpha06 enthält diese Commits.

Neue Funktionen

  • Wir haben Scaffold eine zusammensetzbare Anwendung auf oberster Ebene hinzugefügt, die eine Struktur zur Handhabung von PositionIndicators (wie Scroll oder Volume) bietet, einen Bereich oben auf dem Bildschirm zur Anzeige der Uhrzeit und des Anwendungsstatus sowie eine Vignette, mit der der obere und untere Rand des Bildschirms für scrollbare Inhalte unkenntlich gemacht werden kann. Der Hauptbereich des Scaffold ist der Bereich, in dem die Anwendungsinhalte platziert werden. (I5e0bf)
  • TimeText-Implementierung für Wear Compose wurde hinzugefügt (I5654c).

Navigationsbibliothek für Wear Compose

  • Wir haben die erste Version der Wear Compose-Navigationsbibliothek hinzugefügt, die eine Integration zwischen den Wear Compose- und der Androidx-Navigationsbibliothek ermöglicht. Sie bietet eine einfache Möglichkeit, zwischen @Composable-Funktionen als Ziele in Ihrer Anwendung zu wechseln.

  • Diese erste Version bietet folgende Vorteile:

    • Eine zusammensetzbare Funktion für SwipeDismissableNavHost, die ein Navigationsdiagramm hostet und mit Wischgesten eine Rückwärtsnavigation ermöglicht
    • Erweiterung „NavGraphBuilder.composable“ zur Unterstützung beim Erstellen von Navigationsdiagrammen
    • rememberSwipeDismissableNavController(), um den Windenstatus zuzulassen
  • Beispielanwendung, bei der wir zwei Bildschirme erstellen und zwischen ihnen wechseln:

    val navController = rememberSwipeDismissableNavController()
    SwipeDismissableNavHost(
        navController = navController,
        startDestination = "start"
    ) {
        composable("start") {
            Column(
                horizontalAlignment = Alignment.CenterHorizontally,
                verticalArrangement = Arrangement.Center,
                modifier = Modifier.fillMaxSize(),
            ) {
                Button(onClick = { navController.navigate("next") }) {
                    Text("Go")
                }
            }
        }
        composable("next") {
            Column(
                horizontalAlignment = Alignment.CenterHorizontally,
                verticalArrangement = Arrangement.Center,
                modifier = Modifier.fillMaxSize(),
            ) {
                Text("Swipe to go back")
            }
        }
    }
    
  • Wear Compose Navigation ist als separate Bibliothek gepackt, sodass einfache WearCompose-Anwendungen, die eine eigene handgerollte Navigation implementieren, nicht auf die Androidx-Navigationsbibliothek angewiesen sind.

API-Änderungen

  • SwipeDismissableNavHost wurde zur Unterstützung aktualisiert rememberSaveable, indem Sie die Schlüsselidentität für Hintergrund und Inhalt festlegen (I746fd)
  • Wir haben einen PositionIndicator-Adapter hinzugefügt, der LazyListState verarbeiten kann (I21b88).
  • „SwipeToDismissBox“ wurde aktualisiert, um „merkSaveable“ zu unterstützen (Ie728b)
  • Wir haben die Unterstützung umgekehrterLayout für die ScalingLazyColumn hinzugefügt. So können Sie die Scrollrichtung und das Layout umkehren (I9e2fc).
  • performGesture und GestureScope wurden eingestellt, die Folgendes enthalten: wurde durch performTouchInput und TouchInjectionScope ersetzt. (Ia5f3f, b/190493367)
  • Wir haben VignetteValue in VignettePosition umbenannt und VignetteValue.Beide in VignettePosition.TopAndBottom umbenannt. (I57ad7)
  • Wir haben ScalingLazyColumnState in ScalingLazyListState, „ScalingLazyColumnItemInfo“ in ScalingLazyListItemInfo, „ScalingLazyColumnLayoutInfo“ in ScalingLazyListLayoutInfo und „ScalingLazyColumnScope“ in ScalingLazyListScope umbenannt, für den Fall, dass wir künftig eine ScalingLazyRow-Implementierung hinzufügen möchten. (I22734)

Fehlerkorrekturen

  • Die CompactChip-Dokumentation wurde aktualisiert, um zu beschreiben, was passiert, wenn weder ein Symbol noch ein Label angegeben wurde. (I4ba88)
  • Wir haben einige Anpassungen an den Komponenten der Wear-Karte vorgenommen. (I6b3d0) <ph type="x-smartling-placeholder">
      </ph>
    1. Der Abstand zwischen Titel und Text wurde von 8 dp auf 2 dp reduziert.
    2. Die Schriftart der Kopfzeile der Titelkarte wurde von "body" in "title3" geändert.
    3. Der Hintergrundverlauf der Karte wurde geändert, um den Hintergrund dunkler zu machen.

Version 1.0.0-alpha05

1. September 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha05 und androidx.wear.compose:compose-material:1.0.0-alpha05 wurden veröffentlicht. Version 1.0.0-alpha05 enthält diese Commits.

API-Änderungen

  • ArcPaddingValues als @Stable (I57deb) markieren
  • ScalingLazyColumnState implementiert jetzt die ScrollableState-Schnittstelle, die Entwicklern programmatischen Zugriff zum Scrollen der Komponente bietet. (I47dbc)

Fehlerkorrekturen

  • Wir haben den Abstand zwischen Symbol und Text im Chip und mit umgeschaltetem Chip verkleinert, um sie an die Aktualisierungen der UX-Spezifikationen anzupassen. (I83802)

Version 1.0.0-alpha04

18. August 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha04 und androidx.wear.compose:compose-material:1.0.0-alpha04 wurden veröffentlicht. Version 1.0.0-alpha04 enthält diese Commits.

Neue Funktionen

  • Es wurden eine SwipeToDismissBox und ein Swipe-Modifikator hinzugefügt, mit dem unterstützen eine Wischgeste zum Schließen von links nach rechts. Obwohl unabhängig von Navigationskomponenten wird erwartet, dass dies zum Verlassen eines Bildschirms und Navigieren zu einem anderen verwendet wird. Hinzugefügt Integrationstests zur Demonstration der Wischgeste zum Schließen. (I7bbaa)
  • Wir haben die Schnittstellen ScalingLazyColumnItemInfo und ScalingLazyColumnLayoutInfo zur Klasse „ScalingLazyColumnState“ hinzugefügt, damit Entwickler die tatsächlichen Positionen und Größen von Elementen in der ScalingLazyColumn sehen können, nachdem die Skalierung angewendet wurde. Wir haben auch einen Fehler bei der Berechnung der Skalierung bei der Einstellung „Oben“ behoben. wird auf die ScalingLazyColumn angewendet. (I27c07)

API-Änderungen

  • Klasse „CurvedTextStyle“ hinzufügen, um den Stil des geschwungenen Textes festzulegen Optionen. Ähnlich wie TextStyle, unterstützt jetzt aber nur Farbe, fontSize und Hintergrund. Weitere Stiloptionen werden in Zukunft hinzugefügt. (I96ac3)
  • Wir haben die Schnittstellen ScalingLazyColumnItemInfo und ScalingLazyColumnLayoutInfo zur Klasse „ScalingLazyColumnState“ hinzugefügt, damit Entwickler die tatsächlichen Positionen und Größen von Elementen in der ScalingLazyColumn sehen können, nachdem die Skalierung angewendet wurde. Wir haben auch einen Fehler bei der Berechnung der Skalierung bei der Einstellung „Oben“ behoben. wird auf die ScalingLazyColumn angewendet. (I27c07)
  • @ExperimentalWearMaterialApi wurde zu SwipeDismissTarget-Enum hinzugefügt, das Teil der SwipeToDismissBox API ist. (I48b5e)

Fehlerkorrekturen

  • Testmaterial für SwipeToDismissBox hinzugefügt (I9febc)

Version 1.0.0-alpha03

4. August 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha03 und androidx.wear.compose:compose-material:1.0.0-alpha03 wurden veröffentlicht. Version 1.0.0-alpha03 enthält diese Commits.

API-Änderungen

  • CurvedText-Komponente hinzugefügt, mit der Entwickler auf einfache Weise Text schreiben können, Die Krümmung als Kreis (normalerweise am Rand eines runden Bildschirms) (Id1267)
  • Wir haben CardDefaults.imageBackgroundPainter() in CardDefaults.imageWithScrimBackgroundPainter() umbenannt, um deutlich zu machen, dass das Hintergrundbild mit einem Gitter darüber gezeichnet ist. (I53206)
  • Hinzufügen der ScalingLazyColumn-Komponente, die eine Listenkomponente für Wear-Material bereitstellt, die eine Fischaugenansicht ermöglicht, bei der der Listeninhalt verkleinert wird und transparent wird, wenn er zum Rand der Komponente hin skaliert wird. (I7070c)

Fehlerkorrekturen

  • Wir haben die Standardfarbe der appName-Inhalte auf der AppCard als Reaktion auf ein Update der UX-Spezifikationen geändert. Die Standardfarbe für „appName“ ist jetzt MaterialTheme.colors.onSurfaceVariant. Außerdem wurde eine fehlende Parameterdokumentbeschreibung für die Titelfläche hinzugefügt. (Ic4ad1)

Version 1.0.0-alpha02

21. Juli 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha02 und androidx.wear.compose:compose-material:1.0.0-alpha02 wurden veröffentlicht. Version 1.0.0-alpha02 enthält diese Commits.

Neue Funktionen

  • Die neue Klasse CurvedRow wurde hinzugefügt, um zusammensetzbare Funktionen in einem Bogen darzustellen (I29941).
  • Es wurde ein neuer Kartentyp für die Verwendung in Apps hinzugefügt (TitleCard). Außerdem können Karten als Hintergrund verwendet werden, um den Inhalt von Karten hervorzuheben (I53b0f).

API-Änderungen

  • Unterstützung für die radiale Ausrichtung auf CurvedRow (ähnlich wie die vertikale Ausrichtung in einer Zeile) (Id9de5)
  • Neue Klasse CurvedRow zu angeordneten zusammensetzbaren Funktionen in einem Bogen hinzufügen (I29941)
  • Es wurde ein neuer Kartentyp für die Verwendung in Apps hinzugefügt (TitleCard). Außerdem können Karten als Hintergrund verwendet werden, um den Inhalt von Karten hervorzuheben (I53b0f).
  • Wir haben Ein/Aus-Symbole (Kästchen, Schalter und Optionsfelder) zu „SwitchChipDefaults“ hinzugefügt, um Entwicklern die Konfiguration von „UmschaltChip“ und „SplitToggleChips“ zu erleichtern (I7b639).
  • Der Abstand für Start- und Endinhalt für Chips wurde aktualisiert. Er beträgt nun konstant 14 dp, unabhängig davon, ob auf dem Chip ein Symbol vorhanden ist oder nicht (zuvor war er 12 dp, wenn ein Symbol vorhanden war, und 14 dp, wenn nicht). (I34c86)

Fehlerkorrekturen

  • Tests für CurvedRow (I93cdb) hinzufügen
  • Wear Compose-Abhängigkeiten mit Compose 1.0.0-rc01 verknüpfen. (Ie6bc9)
  • Die Übergabe von Hintergrundbildern in „Karten und Chips“ wurde so geändert, dass das Bild zugeschnitten und nicht gestreckt wird, um die Proportionen des Bildes beizubehalten. (I29b41)
  • Es wurden weitere Demos und Integrationstests für die Schaltfläche und die Ein/Aus-Schaltfläche hinzugefügt. (5e27ed2)
  • Es wurden weitere Chiptests hinzugefügt, um die Inhaltsfarben für „imageBackgroundChips“ abzudecken (Ia9183).

Version 1.0.0-alpha01

1. Juli 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha01 und androidx.wear.compose:compose-material:1.0.0-alpha01 wurden veröffentlicht. Version 1.0.0-alpha01 enthält diese Commits.

Neue Funktionen

Wear Compose ist eine auf Kotlin basierende Bibliothek, die Wear Material Design unterstützt, eine Erweiterung von Material Design für Wear OS-Wearables. Diese erste Alphaversion enthält frühe, funktionale Implementierungen des folgenden Elements:

  • Materialdesign: Konfiguriert die Farben, Typografie und Formen in den Komponenten dieser Bibliothek einheitlich.
  • Chip, CompactChip – Chips haben die Form eines Stadions und es gibt verschiedene Varianten für Symbol-, Label- und sekundäre Labelinhalte.
  • – SwitchChip, SplitToggleChip – eine spezielle Art von Chip mit einem Slot für ein zweistufiges Ein/Aus-Symbol, z. B. ein Optionsfeld oder Kästchen. Darüber hinaus hat der SplitToggleChip zwei antippbare Bereiche, einen anklickbaren und einen ein-/ausschaltbaren Bereich.
  • Schaltfläche, CompactButton – runde Schaltfläche mit einer einzelnen Inhaltsfläche für ein Symbol oder minimalen Text (maximal 3 Zeichen).
  • Ein/Aus-Schaltfläche: Eine Schaltfläche zum Ein- oder Ausschalten einer Aktion mit nur einem Platz für ein Symbol oder minimalen Text (maximal 3 Zeichen).
  • Karte, AppCard – rechteckige Form mit abgerundeten Ecken. Platz für Inhalte wie App-Symbol, Zeit, Titel und Textkörper.

In zukünftigen Versionen wird das Widget-Set um Unterstützung für Auswahlelemente, Schieberegler, Listen, Seitenindikatoren, Dialogfelder, Scroll-RSB-Indikatoren, Toasts und mehr in Wear Material Design erweitert.

Darüber hinaus werden andere Wearable-spezifische Funktionen wie gebogene Layouts und Texte sowie ein Gerüst unterstützt, um Entwicklern die Erstellung von Wearable-Apps/-Overlays zu erleichtern.

Wear Compose Material wurde nach den gleichen Prinzipien entwickelt wie das Compose-Material, ist jedoch auf Wearables ausgerichtet. Beim Erstellen eines Wearable-Geräts sollte die Wear Compose Material-Bibliothek anstelle der Compose Material-Bibliothek verwendet werden.

Die beiden „Material“-Bibliotheken sollten als sich gegenseitig ausschließen und nicht in derselben App kombiniert werden. Wenn Entwickler die Compose Material-Bibliothek in ihre Abhängigkeiten einbinden, würde Folgendes vorschlagen: a) fehlende Komponenten in der Wear Compose Material-Bibliothek, teilen Sie uns bitte mit, was Sie benötigen, oder b) verwenden Sie eine Komponente, die wir nicht für die Verwendung auf einem Wearable-Gerät empfehlen.