Wear Compose

  
Erstellen Sie Jetpack Compose-Anwendungen für Wearables, indem Sie Funktionen zur Unterstützung von Wearables-spezifischen Geräten, Größen, Formen und Navigationsgesten bereitstellen.
Letzte Aktualisierung Stabile Version Release Candidate Beta-Ausgabe Alphaversion
11. Dezember 2024 1.4.0 - - 1.5.0-alpha07

Abhängigkeiten deklarieren

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

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

Cool

dependencies {
    implementation "androidx.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

Ihr Feedback hilft uns, Jetpack zu verbessern. Bitte teilen Sie uns mit, wenn Sie neue Probleme feststellen oder Ideen zur Verbesserung dieser Bibliothek haben. Sehen Sie sich die vorhandenen Probleme in dieser Bibliothek an, bevor Sie ein neues erstellen. Sie können einem vorhandenen Problem Ihre Stimme geben, indem Sie auf die Schaltfläche mit dem Stern klicken.

Neues Problem erstellen

Weitere Informationen finden Sie in der Dokumentation zum Issue Tracker.

Wear Compose Material3 Version 1.0

Version 1.0.0-alpha30

11. Dezember 2024

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

API-Änderungen

  • Der scrollTransform-Modifikator für TransformingLazyColumn wurde neu strukturiert, was eine API-Änderung auslöste. (I0c6dc)
  • Wir haben IconToggleButtonShapes und TextToggleButtonShapes um zwei verschiedene Formparameter uncheckedPressed und checkedPressed (I85dbd) ergänzt.
  • Ungültige Monats-/Tagesoptionen werden jetzt in der DatePicker mit einer neuen invalidPickerContentColor angezeigt, wenn minDate oder maxDate verwendet wird. (If4541)
  • Wir haben die Stepper API um increaseIcon- und decreaseIcon-Slots erweitert. Die Inhalte dafür können wie gewohnt über das Symbol-Element erstellt werden. (Id35da)
  • Wir haben dynamicColorScheme aktualisiert, indem wir den optionalen Parameter defaultColorScheme entfernt und jetzt ColorScheme als nullable zurückgegeben haben. Das bedeutet, dass der Aufrufer den Fallback-Fall explizit behandeln muss, wenn kein dynamisches Farbschema angegeben ist. (I6d62e)
  • Wir haben die Symbolgrößen in ButtonDefaults für die Verwendung mit CompactButton aktualisiert. Für ein CompactButton, das nur ein Symbol enthält, sollte ButtonDefaults.SmallIconSize = 24.dp verwendet werden. Für ein CompactButton, das sowohl ein Symbol als auch Text enthält, sollte ButtonDefaults.ExtraSmallIconSize = 20.dp verwendet werden. Wir empfehlen, dass CompactButton den Inhalt umbricht, anstatt die maximale Breite auszufüllen. Die Beispiele wurden entsprechend aktualisiert. (I0582c)
  • Wir haben EdgeButtonDefaults mit empfohlenen Symbolgrößen für die vier verschiedenen EdgeButtonSizes hinzugefügt. Außerdem wurde das Layout von EdgeButton so aktualisiert, dass es unten etwas mehr Abstand als oben hat. Dadurch wird die Darstellung sowohl von Symbol- als auch von Textinhalten verbessert. (Id772a)
  • Wir haben LinearProgressIndicator Bewegung hinzugefügt und LinearProgressIndicatorContent sichtbar gemacht, wodurch die visuellen Inhalte ohne Animationen angezeigt werden. (Idee99)
  • Wir haben ein neues CircularProgressIndicatorContent-Kompositelement hinzugefügt, mit dem die visuellen Inhalte von CircularProgressIndicator ohne Animationen dargestellt werden können. (Ie33d4)
  • TransformingLazyColumn bietet jetzt die Komposition „local LocalTransformingLazyColumnItemScope“, mit der sich Card, Button und ListHeader automatisch verformen, wenn sie in einem TransformingLazyColumn platziert werden. Anrufer können das automatische Morphing mit dem neuen TransformExclusion-Wrapper deaktivieren. (I1652f)
  • Wir haben den Typ von ButtonDefaults.shape in RoundedCornerShape (Iccdf2) geändert.

Fehlerkorrekturen

  • Wir haben einen Fehler behoben, durch den vorhandene Alphawerte im Hintergrund für TimeText (I1eb60) nicht berücksichtigt wurden.
  • Wir haben in unserer Typografie standardmäßig TextMotion auf Animated festgelegt, um Textvibrationen zu vermeiden, die durch das Anpinnen von Buchstabenglyphen an Pixelgrenzen bei Skalierungsvorgängen entstehen. (I626fa)
  • Wir haben das Aussehen des ScrollIndicator aktualisiert, indem wir die Breite und die Lücke vergrößert haben, um die Sichtbarkeit zu verbessern. (Ied7cb)
  • Wir haben einen Fehler bei Modifier.scrollTransform beim Hinzufügen, Entfernen oder Verschieben von Elementen behoben. (I6830f)
  • Wir haben ein Problem mit der Animation runder Schaltflächen bei kurzen Tippaktionen behoben. Bisher wurde die Mindestdauer der Animation nicht immer eingehalten. (I757a7)
  • Wir haben den Schwenkwinkel für LevelIndicator auf 20% (d.h. 72 Grad) aktualisiert. (Idde5c)
  • Die Positionierung von ScrollIndicator wurde korrigiert, wenn ScalingLazyColumn mit AutoCenteringParams verwendet wurde. (I387dd)
  • Wir haben die Farben und die Typografie für ListHeader und ListSubHeader aktualisiert. Auch die Farben der Ein-/Aus-Schaltflächen auf CheckboxButton und SwitchButton. (I39817)
  • Wir haben die Positionierung von ScrollIndicator in LazyColumn und ScalingLazyColumn mit ContentPadding korrigiert. (I2bc51)
  • Wir haben einen Fehler in der Fortschrittsanimation von OpenOnPhoneDialog behoben, indem wir die neue CircularProgressIndicatorContent verwendet haben. (I3e443)
  • Wir haben HorizontalPagerScaffold und VerticalPagerScaffold aktualisiert, damit Animationen deaktiviert werden, wenn die Option „Bewegung reduzieren“ aktiviert ist (Iaaf68)
  • Wir haben eine separate Animation für kreisförmige Fortschrittsanzeigen implementiert, wenn der Fortschritt über 100 % liegt. (I47135)
  • Ein Fehler wurde behoben, durch den EdgeButton in Paginierungskomponenten mit einer falschen Form gezeichnet werden konnte (I91db9)

Version 1.0.0-alpha29

13. November 2024

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

API-Änderungen

  • Wir haben TimeText aktualisiert und standardmäßige Inhalte hinzugefügt, die die Uhrzeit anzeigen. (Id23b3)
  • Wir haben ScrollInfoProvider für PagerState vereinfacht, indem wir den Parameter orientation entfernt haben, der nicht mehr benötigt wird. Künftig bleibt TimeText sowohl bei horizontaler als auch bei vertikaler Seitennavigation an Ort und Stelle. (I71767)
  • LocalHapticFeedback bietet jetzt eine standardmäßige HapticFeedback-Implementierung, wenn die Vibrations-API angibt, dass Haptik unterstützt wird. Folgende Werte wurden zu HapticFeedbackType hinzugefügt: Confirm, ContextClick, GestureEnd, GestureThresholdActivate, Reject, SegmentFrequentTick, SegmentTick, ToggleOn, ToggleOff und VirtualKey. Bei Wear Compose-Komponenten, die lang angeklickt werden können, wie Button, IconButton, TextButton und Card, wird jetzt die haptische Rückmeldung LONG_PRESS ausgeführt, wenn ein Handler für langes Drücken angegeben wurde. (I5083d)

Fehlerkorrekturen

  • Wir haben den Antrag auf Bestätigungen aktualisiert. (I04bff)
  • Die Mindest-API-Abhängigkeit für Compose-Bibliotheken wurde auf 1.7.4 aktualisiert. (I88b46)
  • Für das Dialogfeld OpenOnPhone wurde eine neue Bewegung hinzugefügt. (I1e10a)
  • Wir haben einen Fehler im LevelIndicator behoben, sodass es jetzt korrekt angezeigt wird, wenn der Pegel null ist. (Ie95a4)
  • Wir haben die HorizontalPageIndicator- und VerticalPageIndicator-Animationen aktualisiert. (I5c8f3)
  • Der unbestimmte Wert ArcProgressIndicator wurde um eine Animation ergänzt, bei der er sich zu einem Punkt zusammenzieht. (I9fd51)

Version 1.0.0-alpha28

30. Oktober 2024

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

API-Änderungen

  • Wir haben der unbestimmten kreisförmigen Fortschrittsanzeige (I2efc1) eine Bogenvariante hinzugefügt.
  • Wir haben die AlertDialogContent- und Dialog-Kompositen, aus denen die AlertDialog API besteht, veröffentlicht, damit sie bei Bedarf angepasst werden können. So lässt sich beispielsweise die AlertDialog-Animation anpassen, während das empfohlene Inhaltslayout beibehalten wird. Außerdem haben wir den Mitgliedern EdgeButton, ConfirmButton und DismissButton von AlertDialogDefaults die Parameter Modifier und Color hinzugefügt. (I4eb71)
  • Wir haben die Placeholder API wie folgt aktualisiert: PlaceholderState.startPlaceholderAnimation in PlaceholderState.animatePlaceholder, PlaceholderState.isShowContent in PlaceholderState.isHidden und PlaceholderDefaults.shape in PlaceholderDefaults.Shape umbenannt; den Parameter painter in painterWithPlaceholderOverlayBackgroundBrush in originalPainter umbenannt; die Sichtbarkeit von PlaceholderState.placeholderProgression von „öffentlich“ zu „intern“ geändert und in placeholderShimmerProgression umbenannt; PlaceholderDefaults um Konstanten für die Dauer der Platzhalteranimation ergänzt. (Ie5a59)
  • Wir haben die EdgeButton API so aktualisiert: Der Parameter auf ScreenScaffold wurde von bottomButton in edgeButton umbenannt und EdgeButtonSize wurde zu einer Werteklasse. (Ieef15)
  • Wir haben die Sichtbarkeit von copy() in den Wear OS-Material 3-Farbklassen (I0287f) in „öffentlich“ geändert.

Fehlerkorrekturen

  • Mindestdauer für die Animation von IconToggleButton und TextToggleButton beim Klicken hinzugefügt (Ieb333)
  • Mindestdauer für die IconButton- und TextButton-Formanimation hinzugefügt (Iebcee)
  • Der Status der Wiederholungsoption von DatePicker wurde korrigiert. (I3587c)
  • Für Benachrichtigungs- und Bestätigungsdialogfelder wurde eine Animation hinzugefügt. (I173b1)

Version 1.0.0-alpha27

16. Oktober 2024

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

API-Änderungen

  • Wir haben die ScreenScaffold und ScrollIndicator aktualisiert, nachdem die Wear Compose Foundation LazyColumn in TransformingLazyColumn umbenannt wurde. (I0608b)
  • Der Parameter preferredHeight von EdgeButton wurde in buttonSize umbenannt und sein Wert kann nur aus vier Konstanten in der neu eingeführten Wertklasse EdgeButtonSize ausgewählt werden. (Icdd70)
  • Wir haben die Benennung von ListSubheader in ListSubHeader geändert und öffentlich zugängliche Standardwerte für ListHeader und ListSubHeader hinzugefügt. (I96730)
  • Wir haben neue HorizontalPagerScaffold- und VerticalPagerScaffold-Komponenten für Wear hinzugefügt, die neue Animationen und eine bessere Abstimmung zwischen dem Zeittext und den Seitenindikatoren bieten. (Iff7d0)
  • Wir haben HorizontalPagerScaffold und VerticalPagerScaffold die Unterstützung für Drehknöpfe hinzugefügt, damit Nutzer mit Drehknöpfen durch Pager navigieren können. (I9770d)
  • Wir haben MotionScheme API-Änderungen vorgenommen, um die Nutzung zu vereinfachen und die Konsistenz zu verbessern. Eingebettete „remember“-Funktionen wurden entfernt und die integrierten Bewegungsabläufe in ein spezielles MotionScheme-Objekt verschoben. standardMotionScheme und expressiveMotionScheme wurden in „Standard“ und „Ausdrucksstark“ umbenannt. (I5fd45)
  • Wir haben die Unterstützung für ein dynamisches Farbschema hinzugefügt, das auf Systemfarben basiert. (I073e9)
  • Wir haben den Schieberegler an die neuesten UX-Spezifikationen angepasst. (I622bb)

Fehlerkorrekturen

  • Wir haben die Typografie und Abstände für Kartenkomponenten aktualisiert. (I3ae48)
  • Wir haben den Abstand in AlertDialog zwischen den Schaltflächen „Bestätigen“/„Schließen“ und dem Rest des Inhalts gemäß den UX-Spezifikationen (Ie55f0) von 8 dp auf 12 dp geändert.
  • Wir haben die Farbdeckkraft für die Komponente „Schieberegler“ aktualisiert. (Idb383)

Version 1.0.0-alpha26

2. Oktober 2024

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

API-Änderungen

  • Wir haben die API und das Erscheinungsbild von HorizontalPageIndicator aktualisiert und VerticalPageIndicator für die Verwendung mit VerticalPager hinzugefügt (Ic9309).
  • Bei benutzerdefinierten Layouts, in denen EdgeButton nicht erforderlich ist, kann die standardmäßige untere Schaltfläche jetzt aus der Variante des Schaltflächen-Stacks weggelassen werden.AlertDialog (I34fa9)
  • Wir haben eine SwipeToReveal-Komponente für Wear Material 3 (Ic38b2) hinzugefügt.
  • Wir haben die Unterstützung für das bidirektionale Wischen in SwipeToReveal hinzugefügt, für den seltenen Fall, dass das aktuelle Display das Wischen zum Schließen nicht unterstützt. Standardmäßig wird die Funktion „Wischen, um zu enthüllen“ weiterhin nur bei Wischen von rechts nach links aktiviert. Wir empfehlen dringend, das Standardverhalten beizubehalten, um Konflikte mit der Funktion „Wischen, um zu schließen“ zu vermeiden. (Ifac04)
  • Der Parameter buttonHeight von EdgeButton wurde in preferredHeight umbenannt. (I4fab3)
  • Die Kotlin-Version wurde auf 1.9 (I1a14c) aktualisiert.
  • Wir haben OpenOnPhoneDialogDefaults.Icon in OpenOnPhoneDialogDefaults.OpenOnPhoneIcon umbenannt, um Verwechslungen mit Icon(I0f391) zu vermeiden.
  • In LazyColumn wird jetzt ScrollIndicator unterstützt. (Ia546a)
  • Wir haben die Standardwerte für TextToggleButton und IconToggleButton aktualisiert. (I7aaa9)
  • Wir haben die Picker- und PickerGroup-API vereinfacht. (Id0653)
  • Wir haben CardDefaults.Shape und CardDefaults.Height hinzugefügt, die als Tokens ansonsten nur für Entwickler verfügbar waren, die die Bibliothek verwenden. (I1594a, b/347649765)
  • Der Fortschrittsparameter für die binär segmentierte kreisförmige Fortschrittsanzeige wurde in segmentValue umbenannt. (Ib72d9)
  • Wir haben die Farben und das Layout für den Schieberegler aktualisiert. (Ic3eec)

Fehlerkorrekturen

  • Wir haben die openOnPhone-Symbolanimation aktualisiert (I66f85).
  • In Slider, TimePicker und DatePicker werden jetzt Google Symbols-Symbole verwendet. (I46c7c)
  • Wir haben die Abstände in Confirmation und OpenOnPhoneDialog aktualisiert. (Iaa82e)

Version 1.0.0-alpha25

18. September 2024

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

API-Änderungen

  • Wir haben eine unbestimmte kreisförmige Fortschrittsanzeige hinzugefügt. (I427a7)
  • Wir haben die Unterstützung für einen Fortschrittsüberlauf (> 100% Fortschritt) sowohl für die CircularProgressIndicator als auch die SegmentedCircularProgressIndicator hinzugefügt. Wenn der Fortschritt 1,0 überschreitet, wird dies durch die neue Farbe overflowTrack angezeigt. (Iaaa3d)
  • Die runden Schaltflächen IconToggleButton und TextToggleButton unterstützen jetzt eine neue Formanimation, bei der verschiedene Formen den angeklickten, nicht angeklickten und gedrückten Zustand darstellen. Die vorherige animierte Formvariante für den Zustand „Gerade gedrückt“ wird weiterhin unterstützt. (I29f03)
  • Die Unterstützung für die Verwendung von EdgeButton mit Column wurde entfernt, da die EdgeButton-Höhe in ScreenScaffold explizit angegeben werden muss. (Ie353d)
  • Wir haben die Unterstützung für die Wear OS-Funktion „Compose“ LazyColumn mit unserer ScreenScaffold hinzugefügt und eine Implementierung von ScrollInfoProvider für LazyColumnState hinzugefügt. (Ib8d29)
  • Wir haben LocalTextMaxLines, LocalTextAlign und LocalTextOverflow zu einer einzigen lokalen LocalTextConfiguration-Komposition kombiniert, um in Zukunft eine skalierbarere Lösung zu bieten. (I5edbc)
  • Wir haben „arc-large“ als zusätzliche Schriftgröße hinzugefügt, die für kurze Textzeilen in der Kopfzeile ganz oben oder unten auf dem Bildschirm reserviert ist, z. B. in Bestätigungs-Overlays. (I60e3e)
  • Wir haben der Schaltfläche Standardwerte für die empfohlenen großen und extragroßen Symbolgrößen und den Inhaltsabstand hinzugefügt. (I84675)

Fehlerkorrekturen

  • Wir haben die Farben für IconButton und TextButton aktualisiert. (I48324)
  • Wir haben die Basisüberladungen der Schaltfläche vertikal zentriert, um für Einheitlichkeit mit anderen Überladungen zu sorgen. Wenn Sie das vorherige Verhalten wiederherstellen möchten, verwenden Sie Modifier.align aus dem RowScope. (I66e57)

Version 1.0.0-alpha24

4. September 2024

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

API-Änderungen

  • Dem Material3-Design wurde ein Bewegungsschema hinzugefügt. Dieser wird von Komponenten in der gesamten 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 zum Koordinieren von Ebenen und Übergängen von TimeText und ScrollIndicator umfassen. AppScaffold bietet eine oberste Ebene von Scaffold-Komponenten, die über allen Bildschirmen liegen. Wenn Sie also TimeText zu AppScaffold hinzufügen, bleibt es an seinem Platz, während Sie zwischen den Bildschirmen wischen. Bildschirme können den Zeittext überschreiben oder ausblenden. ScreenScaffold bietet einen Slot für das ScrollIndicator und animiert den Scrollindikator beim Scrollen automatisch. Außerdem gibt es eine Zeitüberschreitung, nach der der Scrollindikator bei Inaktivität ausgeblendet wird. (I047d6)
  • Wir haben ScrollIndicator mit dem neuen Material3-Design hinzugefügt. Die Größe des Vorschaubilds ist festgelegt und basiert auf dem Inhalt der ursprünglichen Liste, um Größenabweichungen zu vermeiden, wenn Lazy-Inhalte in die Liste geladen werden. (Ic228d)
  • Wir haben die ScrollAway API so geändert, dass ScreenStage eine Werteklasse anstelle einer Enum-Klasse ist, damit nach Bedarf weitere Phasen hinzugefügt werden können. (I48c93)
  • Wir haben EdgeButton hinzugefügt, eine charakteristische Wear-spezifische Schaltfläche, deren Form der Krümmung des unteren Displayrandes folgt (I16369).
  • Wir haben der ScreenScaffold einen neuen Slot für eine untere Schaltfläche (z. B. EdgeButton) hinzugefügt, die je nach scrollbaren Inhalten angezeigt und deren Größe angepasst wird (I032eb).
  • Wir haben Modifier.scrollTransform und Modifier.targetMorphingHeight hinzugefügt, um Elementen in LazyColumn Material3-Bewegungseffekte hinzuzufügen. (Ie229a)
  • Wir haben SegmentedCircularProgressIndicator als Variante von CircularProgressIndicator hinzugefügt. Bei der segmentierten Variante wird entweder ein einzelner Fortschrittswert für alle Segmente oder für jedes Segment „An“ oder „Aus“ angezeigt. (I6e059)
  • Wir haben LinearProgressIndicator als Alternative zu CircularProgressIndicator hinzugefügt. (I89182)
  • Wir haben AlertDialog hinzugefügt, mit dem sich Layouts für die Präsentation wichtiger Prompts für den Nutzer erstellen lassen. Es gibt Varianten für entweder zwei Bestätigungs-/Schließen-Schaltflächen oder eine einzelne Schaltfläche unten (in der Regel eine EdgeButton) unter einem Stapel von Optionen. Beide Varianten haben Slots für Symbol, Titel und zusätzlichen Text, um weitere Details anzugeben. (Ieb873)
  • Wir haben OpenOnPhoneDialog hinzugefügt, das für eine Aktion verwendet werden sollte, die auf dem Smartphone des Nutzers fortgesetzt wird. OpenOnPhoneDialog wird nach einem bestimmten Zeitlimit geschlossen. (I978fd)
  • Wir haben Confirmation hinzugefügt, eine Dialogfeldkomponente mit Slots für ein Symbol und entweder gebogenen oder geraden Text. Für Erfolgs- und Fehlermeldungen gibt es bestimmte Varianten. Bestätigungen werden nach einer bestimmten Zeit automatisch geschlossen. (Ib43e8)
  • Wir haben TimeText einen Hintergrund hinzugefügt, um Probleme zu vermeiden, bei denen sich die zugrunde liegenden Inhalte und TimeText überschneiden und die Uhrzeit verdecken. (Ia11fd)
  • Wir haben LevelIndicator hinzugefügt, das den Wert einer Einstellung wie der Lautstärke anzeigt. Es kann mit der vorhandenen Komponente Stepper kombiniert 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 mit Layouts für das 24-Stunden-Format (mit oder ohne Sekunden) oder das 12-Stunden-Format mit Auswahl von „Vormittags“ und „Nachmittags“ hinzugefügt. (Ia5124)
  • Wir haben DatePicker hinzugefügt, mit einer Konfiguration für die Spaltensortierung (z.B. Tag-Monat-Jahr, Monat-Tag-Jahr oder Jahr-Monat-Tag) und optionalen Mindest-/Maximaldatumsangaben. (Ibf13b)
  • Wir haben der Funktion text von TimeText einen Gewichtsparameter hinzugefügt. Wenn „ZeitText“ aus mehreren Textelementen besteht, kannst du so festlegen, wie das Leerzeichen verteilt wird. (I36700)
  • Wir haben RadioButton und SplitRadioButton hinzugefügt. Diese Komponenten vereinfachen die vorherige API, da sie sowohl (Split)SelectableButton als auch die untergeordnete Optionsschaltfläche (If7ae8) kombinieren.
  • Wir haben CheckboxButton und SplitCheckboxButton hinzugefügt. Diese Komponenten vereinfachen die vorherige API, da sie sowohl das (Split)ToggleButton-Element als auch das untergeordnete Kästchen-Steuerelement (Ia8f70) kombinieren.
  • Wir haben SwitchButton und SplitSwitchButton hinzugefügt. Diese Komponenten vereinfachen die vorherige API, da sie sowohl die (Split)ToggleButton als auch die untergeordnete Schaltersteuerung kombinieren (I0d349).
  • Wir haben die Dokumentation zu AnimatedText aktualisiert, um das Überschwingen zu erläutern. (Iff30a)
  • Wir haben ButtonGroup hinzugefügt, um zwei oder drei Schaltflächen zu kombinieren, sodass die Betätigung der Schaltflächen eine koordinierte Animation auslöst. (Ie27db)
  • Wir haben eine optionale Formanimation für IconButton und TextButton hinzugefügt, die beim Drücken ausgeführt wird. (Iffca5)
  • Wir haben Button, IconButton, TextButton, CompactButton und EdgeButton (I65fc3) eine zusätzliche Farbvariante hinzugefügt: FilledVariant.
  • Wir haben ImageWithScrimPainter den Parameter forcedSize hinzugefügt, damit die Bildhintergründe von Schaltflächen jetzt standardmäßig ihre Komponentengröße beibehalten. Wenn Sie forcedSize = null festlegen, wird stattdessen Painter.instrinsicSize übernommen. (Ic57af)
  • Wir haben die Funktion „Langes Drücken“ für Schaltflächen hinzugefügt (Ib613d).
  • Außerdem wurde die Unterstützung für langes Drücken auf IconButton und TextButton hinzugefügt. (I38891)
  • Für Google Pixel Tablet wurde die Unterstützung für langes Drücken auf Karten hinzugefügt. (I305d5)
  • Wir haben LocalTextMaxLines, LocalTextAlign und LocalTextOverflow als CompositionLocals hinzugefügt und 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 den Inhalt von Komponenten wie Schaltflächen und Karten zu maskieren, 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 und CompactButton aktualisiert, um die neuen CompositionLocals-Parameter LocalTextMaxLines, LocalTextAlign und LocalTextOverflow zur Implementierung von UX-Richtlinien zu verwenden. Diese Parameter können von Entwicklern bei Bedarf direkt in Text überschrieben werden (Ie51f7)
  • Die Standard-Strichstärke des LevelIndicator wurde in 6dp geändert, um es von dem ScrollIndicator mit einer Strichstärke von 4dp zu unterscheiden. (If6f63)
  • Wir haben ein Problem in TimeText behoben, sodass größere Schwenkwinkel unterstützt werden. (Ie489f)
  • Ein Problem bei der Neuzusammensetzung von EdgeButton wurde behoben. (I4cdca)
  • Das Layout von geteilten Ein-/Aus-Schaltflächen wurde korrigiert, wenn benutzerdefinierte Abstände für den Inhalt angegeben sind. (Ia33d3)
  • Kleine Fortschrittswerte werden 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 wird veröffentlicht. Version 1.0.0-alpha23 enthält diese Commits.

API-Änderungen

  • Wir haben die ToggleButton- und RadioButton-APIs 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 für auswählbare Schaltflächen die Option „Doppeltippen, um zu wechseln“ angezeigt wurde, obwohl sie bereits ausgewählt war. (I7ed88)

Version 1.0.0-alpha22

1. Mai 2024

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

API-Änderungen

  • Wir haben das Material3-ColorScheme aktualisiert. (I7b2b8)
  • Wir haben den Material3-Schalter aktualisiert. Neben einigen Farbänderungen entspricht das Häkchen jetzt dem, das für das Kästchen verwendet wird. (Icac7b)

Fehlerkorrekturen

  • Alle Integrationsdemos auf den neuen Modifikator rotaryScrollable aktualisieren (I25090)

Version 1.0.0-alpha21

17. April 2024

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

  • Dieser Release wurde aufgrund eines technischen Problems in der vorherigen Version ausgelöst, das zu fehlenden Quell-JAR-Dateien führte. In diesem Release gibt es keine neuen Commits.

Version 1.0.0-alpha20

3. April 2024

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

Fehlerkorrekturen

  • Wir haben die Alphas für den gedrückten und fokussierten Zustand von „Ripple“ für den Kontrast angepasst. (I59f0a)
  • Wir haben in Button, ToggleButton und RadioButton einen Abstand zwischen primären und sekundären Labels hinzugefügt, um den neuesten Änderungen an Typografiestilen und Zeilenhöhen zu entsprechen. (I2c0ba)

Version 1.0.0-alpha19

6. März 2024

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

API-Änderungen

  • Wir haben TimeText zur Wear Compose Material3-Bibliothek hinzugefügt. Diese Komponente zeigt oben auf dem Bildschirm die aktuelle Uhrzeit (und einen zusätzlichen Status) an. Die neue, kompakte Material3 API verhindert Duplikate zwischen linearen und gebogenen Inhalten. (I4d7c3)
  • Die Parameternamen für RadioButton wurden von onSelected zu onSelect geändert. (I1a971)
  • Tokenisieren Sie RadioButton und SplitRadioButton und überarbeiten Sie die vorhandenen Methoden, um die Anzahl der CompositionLocal-Suchanfragen zu reduzieren. Dazu fügen Sie zwischengespeicherte Instanzen von Farben hinzu und machen die Methoden von RadioButtonColors und SplitRadioButtonColors intern. (I02b33)

Version 1.0.0-alpha18

21. Februar 2024

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

API-Änderungen

  • Wir haben das Standardmuster für CardColors, ToggleButtonColors und SplitToggleButtonColors neu strukturiert, indem wir intern zwischengespeicherte Instanzen erstellt und die Nutzung von CompositionLocal reduziert haben. (If3fec)

Version 1.0.0-alpha17

7. Februar 2024

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

API-Änderungen

  • Wir haben die Button API aktualisiert, sodass standardmäßig buttonColors verwendet wird. Die doppelte Definition von filledButtonColors wurde entfernt. (I4fe3b)
  • Wir haben die Standardmuster für ButtonColors, IconButtonColors und TextButtonColors neu strukturiert, indem wir intern eine zwischengespeicherte Instanz erstellt und die Nutzung von CompositionLocal reduziert haben. (I5f51c)
  • Wir haben den Overhead von rememberUpdatedState in komponentenspezifischen Farbklassen entfernt und Zugriffsmethoden in Farbklassen als intern gekennzeichnet. (If6571)

Fehlerkorrekturen

  • Wir haben Modifier.minimumInteractiveComponentSize auf Modifier.node umgestellt. (Iba6b7)

Version 1.0.0-alpha16

24. Januar 2024

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

Neue Funktionen

  • Wir haben CompactButton hinzugefügt, für das dieselben Farben wie für „Schaltfläche“ verwendet werden können (I05df0).

API-Änderungen

  • Wir haben RadioButton/SplitRadioButton als Container für Auswahlsteuerelemente wie das Optionsfeld hinzugefügt. Das unterscheidet sich von der vorhandenen ToggleButton, da RadioButton ausgewählt werden kann (und innerhalb einer Auswahlgruppe funktioniert), während ToggleButton umgeschaltet werden kann (und unabhängig ist). (I61275)
  • Wir entfernen LocalContentAlpha aus der Wear Compose Material3-Bibliothek, um für Einheitlichkeit mit der Compose Material3-Bibliothek zu sorgen. (I49a0a)
  • Wear Material- und Wear Material3-Komponenten, die eine MutableInteractionSource in ihrer API bereitstellen, wurden aktualisiert. Sie geben jetzt eine nullable MutableInteractionSource zurück, die standardmäßig null ist. Hier gibt es keine semantischen Änderungen: Wenn Sie „null“ übergeben, möchten Sie die MutableInteractionSource nicht hochladen. Sie wird bei Bedarf innerhalb der Komponente erstellt. Wenn Sie zu „null“ wechseln, wird für einige Komponenten nie eine MutableInteractionSource zugewiesen. Bei anderen Komponenten wird eine Instanz nur bei Bedarf erstellt, was die Leistung dieser Komponenten insgesamt verbessert. Wenn du den MutableInteractionSource, den du an diese Komponenten weitergibst, nicht verwendest, solltest du stattdessen „null“ übergeben. Wir empfehlen Ihnen außerdem, ähnliche Änderungen an Ihren eigenen Komponenten vorzunehmen. (Ib90fc, b/298048146)
  • Es wird eine neue Ripple API in den wear:compose-material- und wear:compose-material3-Bibliotheken hinzugefügt, die die eingestellte rememberRipple ersetzt. Außerdem wird ein temporärer CompositionLocal, LocalUseFallbackRippleImplementation hinzugefügt, um Materialkomponenten wieder auf die veralteten rememberRipple/RippleTheme APIs umzustellen. Diese Funktion wird in der nächsten stabilen Version entfernt. Sie dient nur als vorübergehende Migrationshilfe für Fälle, in denen Sie eine benutzerdefinierte RippleTheme bereitstellen. Informationen zur Migration und weitere Hintergrundinformationen zu dieser Änderung finden Sie unter developer.android.com. (af92b21)
  • Wir haben die HorizontalPageIndicator API und die zugehörige Dokumentation geringfügig verbessert. (I60efc)
  • Wir haben ColorScheme so aktualisiert, dass sie unveränderlich ist. Dadurch sind einzelne Farbänderungen weniger effizient, aber die gängige Verwendung von Farben ist effizienter. Der Grund für diese Änderung ist, dass das Aktualisieren einzelner Farben in der Mehrzahl der Apps nicht der Hauptanwendungsfall ist. Das ist zwar weiterhin möglich, aber es wird häufiger neu zusammengesetzt als zuvor. Dadurch reduzieren wir die Anzahl der Statusabos im gesamten Materialcode erheblich und wirken sich auf die Initialisierungs- und Laufzeitkosten bei 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)
  • Die Hintergrundfarben von Schaltflächenbildern wurden aktualisiert, um Material Design-Tokens zu verwenden. (Iba215)
  • Wir haben die Komponenten Checkbox, Switch und RadioButton so geändert, dass sie nur noch angezeigt werden. Die Klickbehandlung wurde entfernt. Diese Komponenten werden in (Split)ToggleButton verwendet, das den Klick verarbeitet. Daher sind sie jetzt deutlicher als nur für die Anzeige gekennzeichnet und nicht für die eigenständige Verwendung auf Wear-Geräten vorgesehen. (I2322e)

Fehlerkorrekturen

  • Wir haben in Wear Compose Material 3 Tokens für Bewegungswerte von Dauern und Übergängen hinzugefügt. (I437cd)
  • Wir haben einen Fehler in den ToggleButton-, SplitToggleButton-, Checkbox-, Switch- und RadioButton-Ansagen behoben, sodass Ansagen zur Barrierefreiheit nicht wiederholt werden. Zuvor 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 wird veröffentlicht. Version 1.0.0-alpha15 enthält diese Commits.

API-Änderungen

  • Wir haben die Basisstufe SwipeToDismissBox in BasicSwipeToDismissBox umbenannt. So wird die Unterscheidung zwischen der Komponente auf Foundation-Ebene und der Material3-Ebene SwipeToDismissBox klarer. Letztere ruft Farben aus der MaterialTheme ab, die in Scrims verwendet werden sollen, und delegiert die restliche Implementierung an die BasicSwipeToDismissBox. (Ibecfc)

Fehlerkorrekturen

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

Version 1.0.0-alpha14

18. Oktober 2023

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

API-Änderungen

  • Wir haben den Parameter indicatorStyle aus Material3 HorizontalPageIndicator entfernt. Stattdessen folgt er der Form des Gerätedisplays (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 wird veröffentlicht. Version 1.0.0-alpha13 enthält diese Commits.

API-Änderungen

  • Wir haben TitleCard ein optionales Untertitel-Feld 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 wird veröffentlicht. Version 1.0.0-alpha12 enthält diese Commits.

API-Änderungen

  • Wir haben IconButton aktualisiert, damit Material Design-Tokens verwendet werden. (I3f137)
  • Wir haben IconToggleButton aktualisiert, damit 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 wird 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 wird veröffentlicht. Version 1.0.0-alpha10 enthält diese Commits.

Neue Funktionen

  • Fügen Sie HorizontalPageIndicator in der Wear Material3-Bibliothek hinzu. (Ifee99)

API-Änderungen

  • Aktualisieren Sie den Code für Schaltflächen, damit Material 3-Design-Tokens verwendet werden. (I92fe4)
  • Die APIs für Wear 3-Stufenschalter und -Schieberegler werden als experimentell deklariert, da die Details der Benutzeroberfläche noch finalisiert werden. (I84d54)
  • Die ExtraSmall-Größen wurden aus den runden TextButton und TextToggleButton entfernt, da diese Größe nur für die IconButton gilt. (Ibc7d5)

Fehlerkorrekturen

  • Wir haben die Typografierichtlinien für TextToggleButton aktualisiert, um LabelLarge für LargeButtonSize zu verwenden (Ib10fa).
  • Wir haben die Typografierichtlinien für TextButton aktualisiert, um LabelLarge für LargeButtonSize zu verwenden (I8f3a7).
  • Wir haben den Mindestberührungszielbereich der Karte aus Gründen der Barrierefreiheit auf 48 dp festgelegt. (Ieb9b1)
  • Demo für App-Karte mit Bild hinzufügen, Demo für App-Karte mit Hintergrund entfernen (Id735f)
  • Ein Fehler wurde behoben, bei dem bei runden Schaltflächen die Modifikatoren nicht richtig verkettet wurden. (I5e162)

Version 1.0.0-alpha09

9. August 2023

androidx.wear.compose:compose-material3:1.0.0-alpha09 wird 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 FloatRange-Anmerkung als API-Einschränkungen aktiviert , die zuvor in Kommentaren angegeben wurden. (Icb401)
  • Wir haben die Typografie für Wear Material3 aktualisiert, damit sie den neuesten Material3-Richtlinien entspricht. (I1bad6)

Fehlerkorrekturen

  • Wir haben die Farben für Button, IconButton und TextButton gemäß dem Material3-Design aktualisiert. (Ib2495)
  • Die Sichtbarkeit des Häkchens in deaktivierten Status wurde korrigiert. (Ib25bf)

Version 1.0.0-alpha08

26. Juli 2023

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

Neue Funktionen

  • Wir haben die folgenden Auswahlsteuerelemente für Material 3 hinzugefügt: Switch, Checkbox und RadioButton. (Ib918c)
  • Wir haben Material 3 die kreisförmigen Ein-/Aus-Schaltflächen IconToggleButton und TextToggleButton hinzugefügt, die jeweils einen einzelnen Steckplatz für Symbol und Text haben. Für unterschiedliche Größen von ToggleButton empfehlen wir, Modifier.touchTargetAwareSize mit den Größen zu verwenden, die in den jeweiligen Ein-/Aus-Schaltflächen angegeben sind. (I9f015)
  • Wir haben unseren Material3-Komponenten ListHeader und ListSubheader hinzugefügt. (Ibaefe)
  • Wir haben Material3 SwipeToDismissBox hinzugefügt, das die neue Foundation SwipeToDismissBox aufruft und Standardfarbwerte aus dem jeweiligen Design liefert. (I275fb)
  • Wir haben der Wear Compose-Funktion die Material 3-InlineSlider hinzugefügt. Nutzer können aus einem Wertebereich auswählen. Der Auswahlbereich wird als Balken zwischen dem Mindest- und Höchstwert des Bereichs dargestellt, aus dem Nutzer einen einzelnen Wert auswählen können. InlineSlider eignet sich ideal zum Anpassen von Einstellungen wie Lautstärke oder Helligkeit. (I7085f)

API-Änderungen

  • Wir haben die Formen im Wear Material 3-Design aktualisiert, sodass jetzt RoundedCornerShape statt „Form“ verwendet wird. (Idb133)
  • Die Konstanten für die Höhe von Schaltflächen sind jetzt öffentlich (Idbfde).
  • API-Dateien wurden aktualisiert, um die Unterdrückung der Kompatibilität zu vermerken (I8e87a, b/287516207)
  • Wir haben InlineSliderColors in Wear Compose Material 3 aktualisiert, damit es einen öffentlichen Konstruktor und öffentliche Eigenschaften hat. (I6b632)
  • Wir haben alle Farbklassen in Wear Compose Material 3 aktualisiert, sodass sie öffentliche Konstruktoren und öffentliche Eigenschaften haben. (I17702)
  • Wir haben die Konstanten für horizontale und vertikale Ränder von Schaltflächen veröffentlicht. (Ieeaf7)

Fehlerkorrekturen

  • Die Höhe der Schaltfläche wird jetzt bei Bedarf an den Inhalt angepasst, der aufgrund von großen Schriftarten für Barrierefreiheit größer geworden ist (Iaf302)
  • Wir haben einige Schaltflächen-Demos aktualisiert, um Probleme mit der Barrierefreiheit zu beheben. (I61ce9)
  • Bei Stepper und InlineSlider können Sie jetzt wiederholt auf die Tasten gedrückt halten, um den Wert schnell zu erhöhen oder zu verringern. Halten Sie dazu die Plus- oder Minustaste gedrückt. (I27359)StepperInlineSlider

Version 1.0.0-alpha07

21. Juni 2023

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

Neue Funktionen

  • Wir haben die Komponente Stepper in unsere Compose for Wear OS Material 3-Bibliothek aufgenommen. Diese Version ähnelt der vorherigen Material Design-Version, aber die Bereichssemantik wird standardmäßig gemäß dem Feedback von Entwicklern weggelassen. Modifier.rangeSemantics enthält die Fälle, in denen Bereichssemantik erforderlich ist. (Ic39fd)
  • Wir haben curvedText der Compose for Wear OS Material 3-Mediathek hinzugefügt. (Ia8ae3)

Fehlerkorrekturen

  • Wir haben wear.compose.foundation zu einer API-Abhängigkeit von wear.compose.material3 gemacht (I72004, b/285404743)

Version 1.0.0-alpha06

7. Juni 2023

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

Fehlerkorrekturen

  • Wir haben TextButton aktualisiert, damit die Erweiterungsfunktion toDisabledColor für korrekte deaktivierte Alphawerte verwendet wird. (I814c8)

Version 1.0.0-alpha05

24. Mai 2023

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

Neue Funktionen

  • Wir haben Material3 die Schaltfläche TextButton hinzugefügt, eine kreisförmige Schaltfläche mit einem einzigen Steckplatz 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. Das Standardsymbol TextButton hat keinen Rahmen und einen transparenten Hintergrund für Aktionen mit geringer Betonung. Verwenden Sie filledTextButtonColors für Aktionen, die besonders hervorgehoben werden sollen. Für eine mittlere Betonung verwenden Sie das umrandete Symbol TextButton und legen Sie den Rahmen auf ButtonDefaults.outlinedButtonBorder fest. Für einen Mittelweg zwischen umrandet und gefüllt verwenden Sie filledTonalTextButtonColors. (I667e4)
  • Wir haben Card, OutlinedCard, AppCard und TitleCard in die Wear Compose Material3-Bibliothek aufgenommen. AppCard und TitleCard können auch mit CardDefaults.outlinedCardColors und CardDefaults.outlinedCardBorder(I80e72) umrandet werden.

API-Änderungen

  • Wir haben den Parameter „Label der Schaltfläche“ ans Ende verschoben, um die abschließende Lambda-Syntax zu unterstützen. Der Parameter „Rolle“ wurde entfernt, da er 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 wird veröffentlicht. Version 1.0.0-alpha04 enthält diese Commits.

Neue Funktionen

  • Wir haben Material 3 die kreisförmige Schaltfläche IconButton mit einem einzelnen Steckplatz für ein Symbol oder Bild hinzugefügt. 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. Mit IconButtonDefaults.iconSizeFor können Sie die empfohlene Symbolgröße für eine bestimmte Schaltflächengröße ermitteln. (I721d4)

Version 1.0.0-alpha03

19. April 2023

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

API-Änderungen

  • Wir haben die Material 3-Schaltfläche hinzugefügt. Das ist unsere stadionförmige Schaltfläche, die in der Wear Compose Material-Bibliothek früher den Namen „Chip“ hatte. Sie wurde umbenannt, um sie mit der Compose Material 3-Bibliothek in Einklang zu bringen. Die Standardschaltfläche hat einen gefüllten Hintergrund. Es gibt auch Varianten für FilledTonal (gedeckter Hintergrund), „Outlined“ (transparent mit dünnem Rahmen) und „Child“ (transparenter Hintergrund und kein Rahmen, für zusätzliche Aktionen mit der geringsten Betonung). Runde Schaltflächen für einfache Symbol- und Textinhalte folgen in einer zukünftigen Version.(Ia6942)

Version 1.0.0-alpha02

5. April 2023

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

Fehlerkorrekturen

  • Wir haben Wear Compose Material 3 eine DefaultTextStyle hinzugefügt, die standardmäßig PlatformTextStyle.includeFontPadding auf „wahr“ (die aktuelle Einstellung) setzt. So können wir das Deaktivieren des Schriftabstands standardmäßig mit den Compose-Bibliotheken synchronisieren (siehe Schriftabstand in Compose für Hintergrund beheben). (I7e461)

Version 1.0.0-alpha01

22. März 2023

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

Neue Funktionen

  • Material 3 ist die nächste Weiterentwicklung von Material Design und umfasst aktualisierte Themen und neu gestaltete Komponenten. Material 3 in Wear Compose ist so konzipiert, dass es mit der Material 3 Compose-Bibliothek auf Android harmoniert. Diese erste Alphaversion enthält erste funktionale Implementierungen der folgenden Funktionen:

    • Material-Design-Designvorlage: Hiermit werden das Farbschema, die Typografie und die Formen für alle Komponenten in der Bibliothek einheitlich konfiguriert. Das Material3-Design hat überarbeitete Farben, 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 weiterentwickeln. In zukünftigen Material 3-Releases wird der Widget-Katalog um weitere bekannte Komponenten aus Compose für Wear OS erweitert, z. B. Schaltflächen, Auswahlfelder und Schieberegler.

  • Die Wear Material- und Wear Material 3-Bibliotheken schließen sich gegenseitig aus und sollten nicht in derselben App verwendet werden. Das liegt vor allem daran, dass sie auf unterschiedliche Themen verweisen, was zu unerwarteten Inkonsistenzen führen würde.

Wear Compose Version 1.5

Version 1.5.0-alpha07

11. Dezember 2024

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

API-Änderungen

  • Mit TransformingLazyColumnState können Sie jetzt den aktuellen Scrollvorgang anhand von Indexen für Ankerelemente beobachten. (I72b01)
  • Wir haben TransformingLazyColumn Animationen hinzugefügt, wenn Elemente hinzugefügt, entfernt oder verschoben werden, sofern die neue Modifier.animateItem verwendet wird. (Iecb9c)
  • TransformingLazyColumn gibt jetzt Werte für beforeContentPadding und afterContentPadding an. (Iccd5f)
  • TransformingLazyColumn bietet jetzt die lokale LocalTransformingLazyColumnItemScope der Komposition, mit der Komponenten (z. B. Cards und Buttons in Material3) automatisch morphen können, wenn sie in eine TransformingLazyColumn eingefügt werden. Anrufer können das automatische Morphing mit dem neuen TransformExclusion-Wrapper deaktivieren. (I1652f)

Fehlerkorrekturen

  • Wir haben die Mindest- und Höchstgeschwindigkeiten für Drehungen auf Geräten mit Android U und höher aktualisiert. (I33559)
  • Wir haben einen Absturz behoben, der auftrat, wenn ein Element in TransformingLazyColumn keine Composeables enthielt (Idb99d).
  • Wir haben die Unterstützung für haptisches Drehen unter Android Vanilla Ice Cream auf ScrollFeedbackProvider erweitert. (Ibc553)
  • Wir haben die Touch-Stolperschwelle bei der Verwendung von SwipeToReveal erhöht, um die Wahrscheinlichkeit zu verringern, dass beim vertikalen Scrollen versehentlich ein Wisch ausgelöst wird. (Ic0672)
  • Wir haben SwipeDismissableNavHost so aktualisiert, dass ab API 35 PredictiveBackHandler verwendet wird, sofern verfügbar. In diesem Fall werden neue Animationen angewendet. (I08c11)

Version 1.5.0-alpha06

13. November 2024

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

API-Änderungen

  • Wir haben ScrollInfoProvider für PagerState vereinfacht, indem wir den Parameter orientation entfernt haben, der nicht mehr benötigt wird. Künftig bleibt TimeText sowohl bei horizontaler als auch bei vertikaler Seitennavigation an Ort und Stelle. (I71767)
  • TransformingLazyColumn wurde in früheren Releases eingeführt. Wir entfernen jetzt die LazyColumn-Aliasse von Wear, die an TransformingLazyColumn weitergeleitet wurden, und verwenden stattdessen den neuen Namen TransformingLazyColumn. Außerdem wurde die Property height von TransformingLazyColumnVisibleItemInfo entfernt. Verwenden Sie stattdessen measuredHeight. (I0ea1e)
  • Wir haben die PagerDefaults.snapFlingBehavior snapAnimationSpec von einer Tween- zu einer Spring-Spezifikation geändert.(I10d02, b/349781047, b/303807950)
  • Die LocalReduceMotion CompositionLocal wurde zur stabilen Version (Ia6f32) hochgestuft.

Fehlerkorrekturen

  • Wir haben Modifier.rotaryScrollable aktualisiert, damit focusTargetWithSemantics verwendet wird. So wird die semantische Unterstützung in Rotary verbessert. (Ief0a0)
  • Die Mindest-API-Abhängigkeit für Compose-Bibliotheken wurde auf 1.7.4 aktualisiert. (I88b46)
  • Wir haben die Breitenumwandlung in TransformingLazyColumn deaktiviert, um einen Fehler beim Zuschneiden zu beheben. (I3dfb8)
  • Wir haben einen Fehler behoben, durch den Elemente nach dem Überscrollen mit TransformingLazyColumn ausgeblendet wurden (Id7668).
  • Wir haben LazyLayoutSemantics für TransformingLazyColumn hinzugefügt. (Ia8f56)

Version 1.5.0-alpha05

30. Oktober 2024

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

API-Änderungen

  • Wir haben die Unterstützung für animateScrollTo auf TransformingLazyColumnState hinzugefügt, damit das Scrollen zu einem Element animiert werden kann. (I4097d)
  • Wir haben requestScrollTo auf TransformingLazyColumnState hinzugefügt, um das Scrollen bis zur nächsten Messung zu verzögern. (I20a5e)
  • In TransformingLazyColumn wird jetzt contentPadding unterstützt. (I3a69c)

Fehlerkorrekturen

  • Wir haben einen Fehler beim Rendern des TransformingLazyColumn behoben, wenn die Inhaltshöhe kürzer als die Bildschirmhöhe ist. (I6c3e1)
  • Die ScrollInfoProvder für TransformingLazyColumn wird jetzt richtig für den ersten Artikel verwendet. (I1e4a3)
  • TransformingLazyColumnState speichert jetzt seinen Status (anchorItemIndex und anchorItemScrollOffset). (I3d265)

Version 1.5.0-alpha04

16. Oktober 2024

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

API-Änderungen

  • Wir haben die Wear Compose Foundation LazyColumn in TransformingLazyColumn umbenannt, damit sie sich leichter von der Compose Foundation LazyColumn unterscheiden lässt. (I0608b)
  • Unterstützung für Drehknöpfe für horizontale/vertikale Pager hinzugefügt, damit Nutzer Pager mit Drehknöpfen bedienen können. (I9770d)
  • Wir haben das neue Symbol PagerDefaults aktualisiert, um deutlich zu machen, dass der Bildlauf automatisch an die Seite springt. (Iff7d0)
  • TransformingLazyColumnItemScrollProgress ist jetzt eine Wertklasse, was die Leistung verbessern sollte. (Ic399e)
  • TransformingLazyColumn unterstützt jetzt standardmäßig Drehknöpfe. (I05206)
  • TransformingLazyColumnState unterstützt jetzt scrollToItem. (I507b3)
  • @ExperimentalWearFoundationApi aus der SwipeToReveal API entfernt (I34a66)

Version 1.5.0-alpha03

2. Oktober 2024

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

API-Änderungen

  • Wir haben die Unterstützung für das bidirektionale Wischen in SwipeToReveal hinzugefügt, für den seltenen Fall, dass das aktuelle Display das Wischen zum Schließen nicht unterstützt. . Standardmäßig wird die Funktion „Wischen, um zu enthüllen“ weiterhin nur bei Wischen von rechts nach links aktiviert. Wir empfehlen dringend, das Standardverhalten beizubehalten, um Konflikte mit der Funktion „Wischen, um zu schließen“ zu vermeiden. (Ifac04)
  • Wir haben LazyColumnState aktualisiert, um canScrollForward und canScrollBackward zu überschreiben. Das Scrollen wird jetzt beendet, wenn sich das erste oder letzte Element genau in der Mitte des Bildschirms befindet. (Ia77d7)
  • Wir haben neue HorizontalPager- und VerticalPager-Komponenten hinzugefügt, die häufige Probleme beheben, z. B. die Fokusverwaltung und die Interaktion mit dem System-Wisch-zum-Schließen, die auf Wear auftreten können. (I2902b)
  • Wir haben die Unterstützung für LazyColumn hinzugefügt, um die key und contentType des Clients über layoutItems freizugeben. (I1bd9c)

Fehlerkorrekturen

  • Wir haben die Animationen für gebogenen Text mithilfe von Paint Flags optimiert, damit sie flüssiger ablaufen. (I73a15)
  • Wir haben die Dokumentation zu Material Dialog aktualisiert, um darauf hinzuweisen, dass onDismissRequest nicht aufgerufen wird, nachdem das Flag „show“ auf „false“ gesetzt wurde. (Ifd8d6)
  • Wir haben einen Fehler mit der Vignettenanimation im Material Dialog (I126bf) behoben.

Version 1.5.0-alpha02

18. September 2024

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

API-Änderungen

  • Wir haben die Unterstützung für die Wear OS-Funktion „Compose“ LazyColumn mit unserer ScreenScaffold hinzugefügt und eine Implementierung von ScrollInfoProvider für LazyColumnState hinzugefügt. (Ib8d29)
  • viewportSize wurde zu LazyColumnLayoutInfo hinzugefügt. (I4187f)

Fehlerkorrekturen

  • Ein Fehler wurde behoben, durch den das Drehen des Drehknopfs in ScalingLazyColumn deaktiviert wurde, wenn das userScrollEnabled-Flag auf false gesetzt war. (I490ab, b/360295825)
  • Wir haben einen Fehler behoben, der zu unerwartetem vertikalen Abstand bei gekrümmtem Text führte. Die Höhe des gekrümmten Texts entspricht jetzt besser dem tatsächlichen Platz, den der Text einnimmt. Hinweis: Dadurch werden wahrscheinlich Screenshot-Tests unterbrochen, die gekrümmten Text enthalten (Iaa6ef).
  • Wir haben eine Fehlerkorrektur für Dialog rückgängig gemacht, bei der der Rückruf onDismissRequest aufgerufen wurde, wenn showDialog auf „falsch“ gesetzt war. In einigen Fällen wurde onDismissRequest dadurch mehrmals aufgerufen. (I64656)

Version 1.5.0-alpha01

4. September 2024

androidx.wear.compose:compose-*:1.5.0-alpha01 wird 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 bildet die Grundlage für die Erstellung anpassbarer Skalierungs- und Morphing-Effekte mit Wear Compose. (Ib3b22)
  • Wir haben im Rahmen der neuen LazyColumn API eine indexierte Version von itemsIndexed zu LazyColumnScope hinzugefügt. (Ib4a57)
  • Wir haben LazyColumn-Modifizierer hinzugefügt, um Skalierungs- und Morphing-Verhalten zu unterstützen. (Ie229a)
  • HierarchicalFocusCoordinator wurde zur stabilen Version hochgestuft. (I31035)
  • Für gebogenen Text wird jetzt der Zeichenabstand unterstützt. (I3c740)
  • CurvedLayout.curvedComposable wurde der Parameter rotationLocked hinzugefügt, um die Drehung von Komponenten zu verhindern. (I66898)
  • Die temporäre LocalUseFallbackRippleImplementation API aus „wear material“ und „wear material3“ wurde entfernt (I62282)
  • WearDevices.SQUARE aus der Multiview-Vorschau von @WearPreviewDevices entfernt (I11c02)

Fehlerkorrekturen

  • SwipeToReveal platziert die angezeigten Elemente jetzt im sichtbaren Bereich des Bildschirms. Das ist hilfreich, wenn SwipeToReveal in einer Liste verwendet wird, da die Elemente immer interaktiv sind und nie außerhalb des Bildschirms erscheinen. (I38929)
  • SwipeToReveal setzt lastActionType jetzt auf „None“, wenn animatedTo abgeschlossen ist. (I59b03)
  • Die Dokumentation für den neuen Parameter rotationLocked auf curvedComposable wurde verbessert. (Ifbd57)
  • Ein Absturz beim Übergeben von NaN an die performFling von ScalingLazyColumnSnapFlingBehavior wurde behoben. (Ic13da)
  • Fehler beim Modifikator für die Größe des gebogenen Layouts behoben (I0fedf)
  • Wir haben die Unterstützung für den Buchstabenabstand hinzugefügt, der mit „sp“ angegeben wird. (I9f6e3)
  • Wir haben einen Fehler im Material 2-Dialog behoben, durch den der onDismissRequest-Callback nicht aufgerufen wurde, wenn das Dialogfeld unsichtbar wurde (I64656).
  • LayoutCoordinates.introducesFrameOfReference in LayoutCoordinates.introducesMotionFrameOfReference umbenannt, um den Zweck besser zu verdeutlichen. Die zugehörige Funktion wurde umbenannt, um Koordinaten anhand dieses Flags zu berechnen. (I3a330)

Version 1.4

Version 1.4.0

4. September 2024

androidx.wear.compose:compose-*:1.4.0 wird 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 die Eingabe über einen Drehknopf. Es wird empfohlen, die explizite Drehknopf-Behandlung zu entfernen und das Standardsystemverhalten zu verwenden. Verwenden Sie bei Bedarf den Parameter rotaryScrollableBehavior, um entweder das Scroll- oder das Snap-Verhalten zu konfigurieren. Für das Snap-Verhalten wird empfohlen, das Snap-Verhalten und die Touch-Scrollfunktionen mit dem Parameter flingBehavior anzugeben.
  • Modifier.rotaryScrollable ist ein neuer Modifikator, der Drehknopf-Ereignisse mit scrollbaren Containern verbindet. So können Nutzer auf ihrem Wear OS-Gerät mit einer Krone oder einem drehbaren Zifferblatt scrollen.
  • SwipeDismissableNavHost bietet jetzt eine Eintrittsanimation für In-App-Übergänge.
  • PositionIndicator wird jetzt standardmäßig angezeigt, wenn ein Bildschirm zum ersten Mal angezeigt wird.

Weitere Änderungen

Version 1.4.0-rc01

21. August 2024

androidx.wear.compose:compose-*:1.4.0-rc01 wird 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 wird veröffentlicht. Version 1.4.0-beta03 enthält diese Commits.

Fehlerkorrekturen

  • Wir haben Modifier.rotaryScrollable aktualisiert und „focusable“ durch „focusTarget“ ersetzt, um die Leistung zu verbessern. (Id294b)
  • Wir haben ein Problem behoben, durch das die ProgressIndicator ihre Ansage unter TalkBack wiederholt hat. (I94563)
  • Die Baseline-Profile der Wear Compose-Bibliothek wurden aktualisiert. (I3cbc3)

Version 1.4.0-beta02

29. Mai 2024

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

Fehlerkorrekturen

  • Wir haben die Breite der Begrenzung für gebogenen Text erhöht, der an Screenreader übergeben wird, um Probleme mit Kürzungen zu beheben (Id865f).
  • Wir haben die Begrenzung des HorizontalPageIndicator, das an Screenreader übergeben wurde, eingeschränkt. Bisher nahm der Indikator den gesamten Bildschirm ein (Id8d7a).

Version 1.4.0-beta01

14. Mai 2024

androidx.wear.compose:compose-*:1.4.0-beta01 wird 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 diese Version der Bibliothek funktionsfähig ist und die API gesperrt ist (außer bei Funktionen, die als experimentell gekennzeichnet sind). Wear Compose 1.4 enthält die folgenden neuen Funktionen:

  • Wir haben Modifier.rotaryScrollable hinzugefügt, einen neuen Modifikator, der Drehereignisse mit scrollbaren Containern verbindet. So können Nutzer auf ihrem Wear OS-Gerät über eine Krone oder eine drehbare Lünette scrollen. Außerdem wird die Drehrad-Eingabe jetzt standardmäßig von ScalingLazyColumn und Picker unterstützt. Verwenden Sie den Parameter rotaryScrollableBehavior, um das Scroll- oder Snap-Verhalten zu konfigurieren. Für das Anpassen des Inhalts wird empfohlen, das Anpassen über den Parameter flingBehavior auch für das Scrollen per Touchbedienung anzugeben.
  • SwipeDismissableNavHost bietet jetzt eine Eintrittsanimation für In-App-Übergänge.
  • PositionIndicator wird jetzt standardmäßig angezeigt, wenn ein Bildschirm zum ersten Mal angezeigt wird.
  • SelectableChip und SplitSelectableChip wurden als Variante von ToggleChip hinzugefügt. Verwenden Sie sie mit RadioButton, um auswählbare statt ausblendbare Semantik für die Barrierefreiheit bereitzustellen.
  • ListHeader unterstützt jetzt Höhenanpassungen, wenn Inhalte mehr Höhe benötigen, um große Schriftgrößen zu berücksichtigen.

Fehlerkorrekturen

  • Wir haben einen Fehler behoben, durch den bei auswählbaren Chips die Aufforderung zum Doppeltippen zum Umschalten angezeigt wurde, wenn sie bereits ausgewählt waren. (I7ed88)

Version 1.4.0-alpha08

1. Mai 2024

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

API-Änderungen

  • Wir haben die folgenden Änderungen an der neuen Drehknopf-API vorgenommen: Modifier.rotary in Modifier.rotaryScrollable umbenannt, die RotaryBehavior-Benutzeroberfläche in RotaryScrollableBehavior und die Funktion handleScrollEvent in performScroll, RotaryScrollableAdapter in RotaryScrollableLayoutInfoProvider umbenannt und das Attribut scrollableState entfernt. (I0c8a6)
  • Wir haben weitere Änderungen an der Drehknopf-API vorgenommen: RotaryScrollableLayoutInfoProvider in RotarySnapLayoutInfoProvider umbenannt (da dieser Anbieter nur für Drehknöpfe mit Snap benötigt wird) und den Typ des snapOffset-Parameters in RotaryScrollableDefaults.snapBehavior snapOffset von „Int“ zu „Dp“ geändert. (Iddebe)
  • Der Parameter clickInteractionSource auf SplitSelectableChip wurde in containerInteractionSource umbenannt. (Ia8f84)
  • Die Namen der Klick-Callback-Parameter für SplitSelectableChip wurden von onClick auf onSelectionClick und von onBodyClick auf 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 die PositionIndicator (Bildlaufleiste) über scrollbare Inhalte hinwegragte. Aufgrund der Änderung des Abstands funktionieren vorhandene Screenshots, die die PositionIndicator enthalten, voraussichtlich nicht mehr. (I57472)
  • Wir haben die Dokumentation für die neue Drehknopf-API verbessert, indem wir die Unterschiede zwischen Low-Res- und Hi-Res-Drehknopfgeräten beschrieben haben. (I63abe)
  • Wir haben eine Ausnahme bei SwipeDismissableNavHost behoben, die ausgelöst werden konnte, 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 wird veröffentlicht. Version 1.4.0-alpha07 enthält diese Commits.

API-Änderungen

  • Wir haben Modifier.rotary hinzugefügt, einen neuen Modifikator, der Drehereignisse mit scrollbaren Containern verbindet. So können Nutzer auf ihrem Wear OS-Gerät über eine Krone oder eine drehbare Lünette scrollen. Außerdem unterstützen ScalingLazyColumn und Picker jetzt standardmäßig die Eingabe per Drehknopf. Es gibt neue Überladungen mit dem Parameter rotaryBehavior, mit dem die Konfiguration entweder als Scrollen oder als Snap festgelegt werden kann. Wenn der Parameter rotaryBehavior auf „Snap“ gesetzt ist, wird empfohlen, für das Scrollen per Touch auch „Snap“ über den Parameter flingBehavior anzugeben. (I2ef6f)
  • Die NestedScroll-Quellen „Ziehen“ und „Wischen“ werden durch UserInput und SideEffect ersetzt, um der erweiterten Definition dieser Quellen Rechnung zu tragen. Dazu gehören jetzt auch Animationen (Nebeneffekt) sowie Mausrad und Tastatur (Nutzereingaben). (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 klarer zu machen. Dadurch werden die zuvor hinzugefügten Überladungen von ToggleChip/SplitToggleChip durch selectionControl-Parameter ersetzt. (Ia0217)
  • Der Sichtbarkeitsmodifikator von IndeterminateStrokeWidth in ProgressIndicatorDefaults wurde auf „Öffentlich“ aktualisiert. (I5b5a4)

Version 1.4.0-alpha06

3. April 2024

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

Fehlerkorrekturen

  • Wir haben einen internen Entwurf für die Unterstützung von Drehknöpfen hinzugefügt, im Rahmen der größeren Migration des Drehknopfverhaltens von Horologist zu AndroidX. (I617d1)
  • Wir haben einen internen Entwurf für die Unterstützung von Haptik hinzugefügt, als Teil der größeren Bemühungen, das Verhalten von Drehknöpfen von Horologist zu AndroidX zu migrieren. (I5568a)

Version 1.4.0-alpha05

20. März 2024

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

API-Änderungen

  • Wir haben die Properties initialCenterItemIndex und initialCenterItemScrollOffset von ScalingLazyListState öffentlich gemacht. (I0c616)
  • Wir haben die FullScreenStrokeWidth von ProgressIndicatorDefaults öffentlich gemacht. (Ibea23)

Fehlerkorrekturen

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

Version 1.4.0-alpha04

6. März 2024

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

API-Änderungen

  • Wir haben eine neue Überladung für ToggleChip und SplitToggleChip hinzugefügt, die anstelle des Parameters toggleControl den Parameter selectionControl verwendet. Dieser sollte mit dem Steuerelement RadioButton verwendet werden, um auswählbare statt umschaltbare Semantik für die Barrierefreiheit bereitzustellen (I1d6d9).
  • Die Parameternamen für die neue selectionControl-Überladung wurden von onSelected zu onSelect für ToggleChip und SplitToggleChip geändert (I1a971)

Version 1.4.0-alpha03

21. Februar 2024

androidx.wear.compose:compose-*:1.4.0-alpha03 wird 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 Ungültigstellungen des Modifiers als nötig. Daher wird ihre Verwendung nicht mehr empfohlen. Entwickler sollten die inspectableProperties()-Methode für ModifierNodeElement implementieren, wenn sie Modifikatoreigenschaften für Tools freigeben möchten. (Ib3236)

Fehlerkorrekturen

  • Ein Fehler in der Dokumentation für WearPreview*-Anmerkungen wurde behoben. (Id526d)

Version 1.4.0-alpha02

7. Februar 2024

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

Fehlerkorrekturen

  • Wir haben einen Fehler bei der Funktion „Wischen, um zu enthüllen“ behoben, bei dem es möglich war, mit einer ausgeführten Aktion auf einem Element zu interagieren und sie abzubrechen, indem man mit dem Wischen auf ein anderes Element begann.(Ide059)
  • Wir haben die ListHeader aktualisiert, damit die Höhe angepasst werden kann, wenn für Inhalte eine größere Höhe erforderlich ist, um große Schriftgrößen zu berücksichtigen. (I7290c, b/251166127)

Version 1.4.0-alpha01

24. Januar 2024

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

Neue Funktionen

  • Wir haben SwipeDismissableNavHost eine Eintrittsanimation für In-App-Übergänge hinzugefügt.(cfeb79a)
  • PositionIndicator wird jetzt standardmäßig angezeigt, wenn ein Bildschirm zum ersten Mal angezeigt wird. Diese Änderung wurde eingeführt, um die Qualitätsrichtlinien für Wear-Apps einzuhalten. Das bedeutet leider, dass Screenshottests auf Bildschirmen mit PositionIndicator aktualisiert werden müssen, da PositionIndicator zuvor nicht angezeigt wurde. (419cef7)

API-Änderungen

  • Wir haben in den wear:compose-material- und wear:compose-material3-Bibliotheken eine neue Ripple API hinzugefügt, die die eingestellte rememberRipple ersetzt. Außerdem wird ein temporärer CompositionLocal, LocalUseFallbackRippleImplementation hinzugefügt, um Materialkomponenten wieder auf die veralteten rememberRipple/RippleTheme APIs umzustellen. Diese Funktion wird in der nächsten stabilen Version entfernt. Sie dient nur als vorübergehende Migrationshilfe für Fälle, in denen Sie eine benutzerdefinierte RippleTheme bereitstellen. Informationen zur Migration und weitere Hintergrundinformationen zu dieser Änderung finden Sie unter developer.android.com. (af92b21)
  • Wir haben ColorScheme so aktualisiert, dass sie unveränderlich ist. Dadurch sind einzelne Farbänderungen weniger effizient, aber die gängige Verwendung von Farben ist effizienter. Der Grund für diese Änderung ist, dass das Aktualisieren einzelner Farben in der Mehrzahl der Apps nicht der Hauptanwendungsfall ist. Das ist zwar weiterhin möglich, aber es wird mehr als zuvor neu zusammengesetzt. Dadurch reduzieren wir die Anzahl der Statusabos im gesamten Materialcode erheblich und wirken sich auf die Initialisierungs- und Laufzeitkosten bei Standardanwendungsfällen aus. (f5c48b7)
  • Wear OS-Material- und Wear OS-Material3-Komponenten, die eine MutableInteractionSource in ihrer API bereitstellen, wurden aktualisiert. Sie geben jetzt eine nullable MutableInteractionSource zurück, die standardmäßig null ist. Hier gibt es keine semantischen Änderungen: Wenn Sie „null“ übergeben, möchten Sie die MutableInteractionSource nicht hochladen. Sie wird bei Bedarf innerhalb der Komponente erstellt. Wenn Sie zu „null“ wechseln, wird für einige Komponenten nie eine MutableInteractionSource zugewiesen. Bei anderen Komponenten wird eine Instanz nur bei Bedarf erstellt, was die Leistung dieser Komponenten insgesamt verbessert. Wenn du den MutableInteractionSource, den du an diese Komponenten weitergibst, nicht verwendest, solltest du stattdessen „null“ übergeben. Wir empfehlen Ihnen außerdem, ähnliche Änderungen an Ihren eigenen Komponenten vorzunehmen. (f8fa920)
  • Wir haben rememberExpandableState aktualisiert, um den maximierten Zustand zu speichern. So werden Daten gespeichert, wenn Sie zu einem anderen Bildschirm wechseln, und wiederhergestellt, wenn Sie zum ursprünglichen Bildschirm zurückkehren. (5c80095)

Fehlerkorrekturen

  • Wir haben die ReduceMotion-Einstellung aktualisiert, um einen lebenszyklusbewussten Listener zu verwenden. (7c6b122)
  • Wir haben den Listener von TouchExplorationStateProvider so aktualisiert, dass er laufzeitabhängig ist (be28b01).
  • Wir haben die Materialcore-Ebene für CompactButton entfernt, um die Leistung zu verbessern (25db8e9)
  • BasicSwipeToDismissBox ist jetzt robuster gegen NaN-Abweichungen, um Ausnahmen zu vermeiden (b983739)
  • Wir haben BasicSwipeToDismissBox aktualisiert, damit die Alphawerte im Bereich 0,1 liegen.
  • Wir haben einen Fehler in den Rollen ToggleButton, SplitToggleButton, Checkbox, Switch und RadioButton behoben, sodass Ansagen zur Barrierefreiheit nicht wiederholt werden. Zuvor wurden semantische Rollen dupliziert. (d11eeb7)

Version 1.3

Version 1.3.1

3. April 2024

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

Fehlerkorrekturen

  • Wir haben einen Fehler bei der Funktion „Wischen, um zu enthüllen“ behoben, bei dem es möglich war, mit einer ausgeführten Aktion auf einem Element zu interagieren und sie abzubrechen, indem man mit dem Wischen auf ein anderes Element begann. (Ide059)

Version 1.3.0

24. Januar 2024

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

Wichtige Änderungen seit Version 1.2.0

  • Die Klasse SwipeToDismissBoxState, die Aufzählung SwipeToDismissValue und die Erweiterungsfunktion Modifier.edgeSwipeToDismiss sind jetzt Teil des androidx.wear.compose.foundation-Pakets und nicht mehr des androidx.wear.compose.material-Pakets. Mit dieser aktualisierten Architektur können Sie die Gestenbedienung unabhängig von anderen Designüberlegungen implementieren. Material Design-Workflows wie das Anwenden von Farben aus einem konfigurierten Design werden separat verarbeitet.
  • Die Klassen SwipeToRevealCard und SwipeToRevealChip helfen Ihnen bei der Implementierung von recommended swipe-to-reveal guidance. Die Klasse SwipeToRevealSample zeigt, wie diese Komponenten verwendet werden.
  • Mit der Version 1.3.0-alpha02 wurde eine Änderung eingeführt, durch die die Objekte Chip und ToggleChip in der Höhe wachsen, um die vom Nutzer ausgewählte Schriftskalierung besser zu unterstützen. Das kann zu Ausschnitten führen. Um dieses Problem zu beheben, hat die large-Form für MaterialTheme jetzt einen größeren Eckradius (26 dp statt 24 dp). Bei Chip- und ToggleChip-Objekten wird dieser neue Eckenradius verwendet, um das Zuschneiden von Inhalten an den Ecken von Chip und ToggleChip zu vermeiden.

    • Die meisten Chips und ToggleChips bleiben unverändert, da sie standardmäßig eine Höhe von 52 dp haben. Chip- und ToggleChip-Objekte, die mehrere Zeilen primären oder sekundären Labeltexts enthalten oder deren Höhe überschrieben wurde, können jedoch dazu führen, dass Screenshottests fehlschlagen.

Weitere Änderungen

Eine vollständige Liste der Änderungen in Version 1.3.0 finden Sie in den Versionshinweisen zur Betaversion 01.

Empfehlungen für die Implementierung

  • Wenn Nutzer in Ihrer App den Inhalt des Bildschirms schwenken können, z. B. in einer kartenbasierten App, deaktivieren Sie die Wischfunktion, indem Sie im SwipeDismissableNavHost-Komposit userSwipeEnabled auf false festlegen. Fügen Sie außerdem eine Schaltfläche hinzu, mit der Nutzer zum vorherigen Bildschirm wechseln können.
  • Wenn Sie Animationen für eine Positionsanzeige während der Einblend- und Positionsänderungsanimationen in einer scrollbaren Liste deaktivieren möchten, verwenden Sie ein SnapSpec-Objekt.
  • Während eine Medien-App Inhalte für die Wiedergabe lädt, wird ein leeres Placeholder-Komposit angezeigt.
  • Wenn Sie eine Sammlung von aufklappbaren Elementen auf Abruf 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 wird veröffentlicht. Version 1.3.0-rc01 enthält diese Commits.

Fehlerkorrekturen

  • Wir haben die große MaterialTheme-Form aktualisiert, sodass sie jetzt einen Radius von 26 dp hat. Dieser wird jetzt für Chip und ToggleChip verwendet. Diese Änderung ist erforderlich, um Höhenanpassungen zu unterstützen, wenn Inhalte eine zusätzliche Höhe benötigen, um große Schriftgrößen zu berücksichtigen. Andernfalls wird durch die vorhandene Stadionform ein Teil des Textinhalts abgeschnitten.

    Text an den Ecken abgeschnitten
    Abbildung 1: Text an den Ecken abgeschnitten
    Text nicht abgeschnitten
    Abbildung 2: Text wird nicht abgeschnitten.

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

Version 1.3.0-beta02

13. Dezember 2023

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

Fehlerkorrekturen

  • Wir haben die ursprüngliche Wischbewegung in BasicSwipeToDismissBox wiederhergestellt. In einer früheren Version wurde dies geändert, sodass der Schiebeteil des Übergangs stattfand, 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 wird veröffentlicht. Version 1.3.0-beta01 enthält diese Commits.

Die Version 1.3-beta01 von Compose für Wear OS gibt an, dass diese Version der Bibliothek funktionsfähig ist und die API gesperrt ist (außer bei Funktionen, die als experimentell gekennzeichnet sind). Wear Compose 1.3 bietet die folgenden neuen Funktionen:

  • SwipeToDismissBoxState, SwipeToDismissValue und Modifier.edgeSwipeToDismiss wurden zusammen mit der zugrunde liegenden Implementierung von „Wischen zum Schließen“ in BasicSwipeToDismissBox von androidx.wear.compose.material zu androidx.wear.compose.foundation migriert. So kann die Touch-Geste 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 Material Design empfohlen, da es Farben aus der MaterialTheme abruft und die restliche Implementierung an die BasicSwipeToDismissBox delegiert.
  • SwipeDismissableNavHost unterstützt jetzt einen neuen Parameter userSwipeEnabled, mit dem die Wischbedienung für Bildschirme deaktiviert werden kann, auf denen sie nicht erforderlich ist.
  • BasicSwipeToDismissBox hat die Fokusverwaltung mit HierarchicalFocusCoordinator verbessert.
  • SwipeToReveal hat neue SwipeToRevealCard- und SwipeToRevealChip-Kompositen in Material, die den empfohlenen UX-Richtlinien für Card und Chip entsprechen. Außerdem wird die Undo-Funktion für die sekundäre Aktion unterstützt.
  • DefaultTextStyle deaktiviert jetzt das Schriftabstand, um für Einheitlichkeit auf der Android-Plattform zu sorgen.
  • Die Höhe von Chip und ToggleChip wird jetzt an Inhalte angepasst, die aufgrund von großen Schriftarten für die Barrierefreiheit größer geworden sind.
  • PositionIndicator hat jetzt individuelle Animationsspezifikationen für die Einblend-, Ausblend- und Positionsänderungsanimationen. Aus Leistungsgründen empfehlen wir, das Einblenden und die Positionsänderung zu deaktivieren, wenn sie mit scrollbaren Listen verwendet werden.
  • ExpandableStateMapping bietet eine neue Möglichkeit, ExpandableStates zu generieren, wenn sie bei Bedarf und nicht unbedingt mit einem @Composable-Bereich erstellt werden müssen.
  • Mit Placeholder können Sie jetzt die Inhalte zurücksetzen, wenn sie nicht mehr bereit sind. Außerdem gilt die Einstellung „Bewegung reduzieren“ jetzt auch für den Schimmereffekt und das Wisch-Weg-Effekt bei Placeholder.

Bekannte Probleme

  • PositionIndicator wird nicht angezeigt, wenn ein Bildschirm zum ersten Mal angezeigt wird. Wir planen eine Änderung in einer frühen Alphaversion von 1.4, sodass das Symbol zwar angezeigt wird, aber ohne Animation.

API-Änderungen

  • Wir haben die Basisstufe SwipeToDismissBox in BasicSwipeToDismissBox umbenannt. So wird die Unterscheidung zwischen der Komponente auf Ebene der Grundlagen und der Materialebene SwipeToDismissBox klarer. Letztere ruft Farben aus der MaterialTheme ab, die in Scrims verwendet werden sollen, und delegiert die restliche Implementierung an die BasicSwipeToDismissBox. (Ibecfc)
  • Wir haben rememberExpandableStateMapping als experimentell gekennzeichnet und die Leistung von expandableItem verbessert. (I5f6bc)
  • Wir haben die SwipeToRevealAction-Klasse in den Material SwipeToReveal Card- und Chip-APIs durch eine slottingbasierte API mit SwipeToRevealPrimaryAction-, SwipeToRevealSecondaryAction- und SwipeToRevealUndoAction-Kompositen ersetzt. Im Beispielcode finden Sie Beispiele für die Verwendung der neuen API. (Ia8943)
  • Die PositionIndicator-Animation-Flags wurden durch AnimationSpec-Parameter ersetzt. Die einzelnen Animationen können deaktiviert werden, indem snap als AnimationSpec übergeben wird. (I6c523)

Fehlerkorrekturen

  • Ein Fehler wurde behoben, der durch begrenzten gekrümmten Text bei begrenzter Größe ausgelöst wurde (I50efe)
  • Wir haben einen potenziellen Absturz mit NaN im Zusammenhang mit curvedComposable (I970eb) behoben.
  • Wir haben die Entfernung der Animation für die Hervorhebung von Positionierungsänderungen bei PositionIndicator rückgängig gemacht. (Ieb424)
  • Wir haben die Material-Core-Ebene für Material-Chip entfernt, um die Leistung zu verbessern. (If2dcb)

Version 1.3.0-alpha08

18. Oktober 2023

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

API-Änderungen

  • Wir haben den PositionIndicator-Überladungen einzelne Flags hinzugefügt, um verschiedene Animationen zu steuern: showFadeInAnimation, showFadeOutAnimation und showPositionAnimation. Die vorherige API wird nicht mehr unterstützt und leitet Aufrufe an die neue API weiter. Aus Leistungsgründen und für eine einheitliche UX empfehlen wir, die Flags showFadeInAnimation und showPositionAnimation zu deaktivieren, wenn die PositionIndicator mit einer scrollbaren Liste verwendet wird. Wenn PositionIndicator als eigenständiger Indikator verwendet wird, z. B. für die Lautstärkeänderung, empfehlen wir, alle drei Animationen zu aktivieren. (I44294)
  • Wir haben die Material-SwipeToDismissBoxState-, SwipeToDismissValue- und edgeSwipeToDismiss-Komponenten eingestellt, nachdem die Wisch-zum-Schließen-Funktion zu wear.compose.foundation migriert wurde. Bitte ersetzen Sie sie durch die wear.compose.foundation-Äquivalente. (Iee8c9)

Fehlerkorrekturen

  • Wir haben die Baseline-Profile für die Wear Compose-Grundlage, die Material- und Navigationsbibliotheken aktualisiert. (Idb060)
  • Wir haben eine Verhaltensänderung für PositionIndicator rückgängig gemacht, die in einer früheren CL eingeführt wurde. Dadurch wurde PositionIndicator animiert, wenn ein Bildschirm zum ersten Mal angezeigt wurde. Wir planen eine ähnliche Änderung in einer frühen Alphaversion von 1.4, sodass das PositionIndicator anfangs angezeigt wird, aber ohne Animation. (I41843)
  • Wir haben einige Leistungsprobleme in PositionIndicator behoben. (I1c654, b/302399827)
  • Wir haben die Leistung der standardmäßigen Implementierung des Anbieters für den Touch-Exploration-Status optimiert, sodass er nicht mehr auf dem abgeleiteten Status, sondern auf State<Boolean> basiert. (Ieec4d)
  • Für Android 13 und höher haben wir Rechtecke mit systemGestureExclusion Pixeln festgelegt. (Ib1f4b)

Version 1.3.0-alpha07

4. Oktober 2023

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

API-Änderungen

  • Wir haben PositionIndicator individuelle Flags hinzugefügt, um verschiedene Animationen zu steuern: showFadeInAnimation, showFadeOutAnimation und showPositionAnimation. Die vorherige API wird nicht mehr unterstützt und leitet Aufrufe an die neue API weiter. Aus Leistungsgründen und für eine einheitliche UX empfehlen wir, die Flags showFadeInAnimation und showPositionAnimation zu deaktivieren, wenn die PositionIndicator mit einer scrollbaren Liste verwendet wird. Wenn PositionIndicator als eigenständiger Indikator verwendet wird, z. B. für die Lautstärkeänderung, empfehlen wir, alle drei Animationen zu aktivieren. (Ia2d63)

Fehlerkorrekturen

  • Wir haben die Wischbewegung zur Anzeige von Inhalten verbessert. Dazu haben wir dem Text der primären Aktion eine Ausblendungsanimation hinzugefügt und die sekundäre Aktion ausgeblendet bzw. die Symbolgröße bei vollständiger Wischbewegung geändert. (Ib7223)
  • Wir empfehlen, Aktionen vom Typ „Wischen, um zu enthüllen“ barrierefrei zu gestalten. Daher haben wir unseren Samples für „Wischen, um zu enthüllen“ benutzerdefinierte Bedienungshilfen hinzugefügt. (I42224)
  • Wir haben die Leistung von SwipeToDismissBox verbessert, einschließlich einer Umstrukturierung, damit die ursprüngliche Logik keine Neuzusammensetzung auslöst. Das SwipeToDismissBox wird jetzt in voller Bildschirmgröße dargestellt. (Ie0aa2)
  • Wir haben einen Fehler behoben, durch den das Symbol PositionIndicator fälschlicherweise ausgeblendet wurde. (I2091a)
  • Die Leistung von PositionIndicator wurde durch die Optimierung von Neuzusammensetzungen verbessert. Es wurden neue Flags zur Steuerung der Animationen (fadeIn, fadeOut und positionChange) hinzugefügt (siehe API-Änderungen) (Ifac7d)
  • Wir haben Microbenchmark-Tests für PositionIndicator (Idf875) hinzugefügt.

Version 1.3.0-alpha06

20. September 2023

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

Fehlerkorrekturen

  • Wir haben die Unterstützung für Modifier.edgeSwipeToDismiss mit SwipeToReveal hinzugefügt. (I95774, b/293444286)
  • Wir haben Beispiele für die Materialien SwipeToRevealChip und SwipeToRevealCard hinzugefügt. (Ieb974)
  • Wir haben die Baseline-Profile 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 wird veröffentlicht. Version 1.3.0-alpha05 enthält diese Commits.

Fehlerkorrekturen

  • Wir haben die Funktion „Zum Anzeigen wischen“ so angepasst, dass nur ein Element gleichzeitig wischen kann. (I3cd7a)
  • Die Dokumentation von ScalingLazyColumnDefaults wurde verbessert, um dem tatsächlichen Verhalten besser zu entsprechen. (I886d3)

Version 1.3.0-alpha04

23. August 2023

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

Neue Funktionen

  • Wir haben die Funktion „Rückgängig machen“ für die sekundäre Aktion von SwipeToReveal hinzugefügt. (I7a22d)

API-Änderungen

  • Fügen Sie HorizontalPageIndicator in der Wear Material3-Bibliothek hinzu. (Ifee99)
  • Die Vorschautools für Wear Compose wurden aktualisiert, um die androidx.wear.tooling.preview-Bibliothek zu verwenden. (Ib036e)

Fehlerkorrekturen

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

Version 1.3.0-alpha03

9. August 2023

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

API-Änderungen

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

Fehlerkorrekturen

  • Wir haben die ursprüngliche Scrolllogik von ScalingLazyColumn in onGloballyPositioned() verschoben. (Ic90f1)
  • Wir verwenden jetzt drawWithCache in PositionIndicator, ProgressIndicator und SelectionControls, um die Zuordnung von Strichen zu optimieren. (I5f225, b/288234617)
  • Die Sichtbarkeit des Häkchens in deaktivierten Status wurde korrigiert. (Ib25bf)
  • Wir haben Placeholder aktualisiert, damit der Platzhalter wieder angezeigt wird, wenn die Inhalte nicht mehr den Status „Bereit“ haben. (Ibd820)
  • Wir haben einige Fehler bei Placeholder-Tests behoben (Idb560).

Version 1.3.0-alpha02

26. Juli 2023

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

API-Änderungen

  • Wir haben ExpandableStateMapping eingeführt, eine neue Möglichkeit, ExpandableStates zu generieren, wenn sie auf Anfrage erstellt werden müssen, nicht unbedingt im @Composable-Bereich (Iff9e0).
  • SwipeToDismissBox wurde aus dem Paket androidx.wear.compose.material in das Paket androidx.wear.compose.foundation migriert. (I275fb)
  • API-Dateien wurden aktualisiert, um die Unterdrückung der Kompatibilität zu kennzeichnen. (I8e87a, b/287516207)
  • Die Höhe der Konstanten für Chip, CompactChip und ToggleChip sind jetzt öffentlich (Idbfde).
  • Wir haben die horizontalen und vertikalen Ränder für Chip und CompactChip veröffentlicht. (Ieeaf7)
  • Es wurde eine Funktion hinzugefügt, mit der sich die Wischfunktion in SwipeDismissableNavHost über den neuen Parameter userSwipeEnabled deaktivieren lässt. (Id2a0b, b/230865655)
  • Wir haben die Wear Compose Navigation Library aktualisiert, damit sie die neue SwipeToDismissBox von Wear Compose Foundation verwendet. (I4ff8e)

Fehlerkorrekturen

  • Wir haben einen Fehler in der Z-Reihenfolge behoben, bei dem in expandedItem nach dem Klicken auf eine Schaltfläche nicht die richtigen Inhalte angezeigt wurden. (I1899d, b/289991514)
  • Verbesserte Fokusbehandlung von SwipeToDismissBox (und damit SwipeDismissableNavHost) mithilfe von HierarchicalFocusCoordinator (I45362, b/277852486)
  • Wir haben die Gestenbedienung in SwipeableV2 verbessert . (I89737)
  • Wir haben die Baseline-Profile für die Version 1.2 fertiggestellt. (Id5740)
  • Nach der Migration von SwipeToDismissBox zu Foundation wird die Material SwipeToDismissBox-Implementierung jetzt an Foundation weitergeleitet und liefert Standardfarbwerte aus dem Design.(If8451)
  • Wir haben ListHeader eine Überschriftensemantik hinzugefügt. (Ic5420)
  • Chip und ToggleChip passen ihre Höhe jetzt an Inhalte an, die aufgrund von großen Schriftarten für Barrierefreiheit gewachsen sind, falls erforderlich. (Iaf302)
  • Ein Fehler in der semantischen Rolle des berührbaren Bereichs von SplitToggleChip wurde behoben, um die Barrierefreiheit zu verbessern. (Ieed3a)
  • Mit der Einstellung „Bewegung reduzieren“ werden jetzt der Schimmereffekt und die Wischbewegung bei Platzhaltern deaktiviert. (I91046)
  • Bei Stepper und InlineSlider können Sie jetzt wiederholt auf die Tasten gedrückt halten, um den Wert schnell zu erhöhen oder zu verringern.StepperInlineSlider (I27359)

Version 1.3.0-alpha01

21. Juni 2023

androidx.wear.compose:compose-*:1.3.0-alpha01 wird 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 jetzt die DefaultTextStyle, um das Schriftabstand-Anzeigeelement zu deaktivieren und für Einheitlichkeit auf der Android-Plattform zu sorgen. Dadurch wird bei großen Schriftgrößen in einigen Fällen verhindert, dass Text abgeschnitten wird. Dies kann sich auch auf Bildschirmlayouts auswirken, sodass Screenshottests aktualisiert werden müssen. Hier sehen wir beispielsweise Text, der abgeschnitten wurde (Ic6a86).
Text wird bei großer Schriftgröße abgeschnitten
Abbildung 1: Abgeschnittener Text
  • Wenn das Schriftfeld-Padding deaktiviert ist, ist es nicht mehr vorhanden:
Text wird bei großer Schriftgröße nicht abgeschnitten
Abbildung 2: Text wird nicht abgeschnitten.
  • Wir haben wear.compose.foundation zu einer API-Abhängigkeit von wear.compose.material gemacht (I72004, b/285404743)
  • Wir haben einen Fehler in SwipeToDismissBox behoben. Hintergrund- und Inhaltsschlüssel werden jetzt an den Block „remember“ übergeben, damit bei Änderungen am Inhalt oder Hintergrund neue Modifikatoren erstellt werden. (Ib876c, b/280392104)
  • Wir haben TimeText aktualisiert, damit bei der Auswahl des 12- oder 24-Stunden-Formats die Sprache verwendet wird. (If4a3d)
  • Wir haben eine Inkonsistenz in den Standardparametern von SwipeToDismissBox contentScrimColor behoben. (I2d70f)
  • Die Bewegungserkennung in SwipeToReveal wurde verbessert. (I28fb7)

Bekannte Probleme

  • Die Unterstützung von vom Nutzer konfigurierten Schriftgrößen ist eine Anforderung an die Barrierefreiheit. Wir wissen, dass mehrzeilige Chips bei großen Schriftgrößen zu Textabschneidungen führen können. Daher werden wir Chip in einer frühen Alphaversion 1.3 aktualisieren, um in diesen Fällen Anpassungen an der Höhe vorzunehmen.

Version 1.2

Version 1.2.1

18. Oktober 2023

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

Fehlerkorrekturen

  • Ein Fehler wurde behoben, durch den das PositionIndicator-Symbol fälschlicherweise ausgeblendet wurde. (7a167f)

Version 1.2.0

9. August 2023

androidx.wear.compose:compose-*:1.2.0 wird 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 wird veröffentlicht. Version 1.2.0-rc01 enthält diese Commits.

Fehlerkorrekturen

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

Version 1.2.0-beta02

7. Juni 2023

androidx.wear.compose:compose-*:1.2.0-beta02 wird 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 Skalierung und Ausblenden bei ScalingLazyColumn deaktiviert werden. (I58024)

Fehlerkorrekturen

  • Wir haben die Baseline-Profile für die Wear Compose-Grundlage und die Materialbibliotheken aktualisiert(I4725d).
  • Wir haben eine Inkonsistenz in den Standardwerten für SwipeToDismissBox-contentScrimColor-Parameter behoben (I2d70f).
  • Der Standardwert für DefaultTextStyle, der für die Einstellung IncludeFontPadding verwendet wird, wurde korrigiert (I737ed)

Version 1.2.0-beta01

24. Mai 2023

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

Neue Funktionen in Compose für Wear OS 1.2

Die Version 1.2-beta01 von Compose für Wear OS gibt an, dass diese Version der Bibliothek funktionsfähig ist und die API gesperrt ist (außer bei Funktionen, die als experimentell gekennzeichnet sind). Wear Compose 1.2 enthält die folgenden neuen Funktionen:

  • expandableItem und expandableItems sind zwei neue Foundation-Komponenten, mit denen sich Elemente in einem ScalingLazyColumn maximieren lassen. Verwenden Sie expandableItem für ein einzelnes ausblendbares Element, z. B. Text, bei dem die Anzahl der Zeilen variiert. Verwenden Sie expandableItems für eine Gruppe von ausblendbaren Elementen und expandableButton, um das Erstellen einer Schaltfläche zu vereinfachen, die nach dem Maximieren der Inhalte minimiert wird.
  • HierarchicalFocusCoordinator – mit diesem experimentellen Composeable können Sie Unterbäume der Komposition als „Mit Fokus“ oder „Ohne Fokus“ markieren.
  • Picker: Die API enthält jetzt userScrollEnabled, um festzulegen, ob die Bildauswahl beim Scrollen des Nutzers aktiv ist.
  • PickerGroup: Eine neue Komponente zum gleichzeitigen Verwalten mehrerer Auswahltools. Sie steuert den Fokus zwischen den Auswahltools mithilfe der HierarchicalFocusCoordinator API und ermöglicht die automatische Zentrierung der Auswahlelemente.
  • Placeholder: Wir haben die Shimmer- und „Wegwischen“-Animationen aktualisiert. Der Ausblendungseffekt wird jetzt sofort angewendet, sobald die Inhalte fertig sind.
  • ScalingLazyColumn: Wir haben ScalingLazyColumn und die zugehörigen Kurse von androidx.wear.compose.material.ScalingLazyColumn nach androidx.wear.compose.foundation.lazy.ScalingLazyColumn migriert. Bitte aktualisieren Sie auf die Version Foundation.Lazy.
  • SwipeToReveal: Wir haben die experimentelle Unterstützung für „Wischen, um zu enthüllen“ als Mittel zum Aufrufen sekundärer Aktionen hinzugefügt, um das vorhandene Muster „Lang drücken“ zu ergänzen.
  • Stepper – hat jetzt eine Überladung mit einem zusätzlichen enableRangeSemantics-Parameter, um das Deaktivieren der Standardbereichssemantik zu erleichtern.
  • Previews: Wir haben die folgenden benutzerdefinierten Anmerkungen für die Vorschau von Composeables auf Wear-Displays hinzugefügt: WearPreviewSmallRound – Vorschau des Composeables auf einem kleinen, runden Gerät; WearPreviewLargeRound – Vorschau des Composeables auf einem großen, runden Gerät; WearPreviewSquare – Vorschau des Composeables auf einem quadratischen Gerät. Außerdem die folgenden Anmerkungen für die Mehrfachvorschau: WearPreviewFontScales zeigt die Vorschau der Composeables auf einem Wear-Gerät mit mehreren Schriftgrößen an, während WearPreviewDevices die Vorschau der Composeables auf verschiedenen Wear-Geräten anzeigt.
  • Wir haben Wear Compose einen DefaultTextStyle hinzugefügt, der die Property PlatformTextStyle.includeFontPadding standardmäßig auf „wahr“ setzt (dies ist die aktuelle Einstellung). So können wir das standardmäßige Deaktivieren des Schriftabstands mit den Compose-Bibliotheken in einer frühen Alphaversion von 1.3 synchronisieren. Weitere Informationen finden Sie unter 1.2.0-alpha10.

Neue Funktionen

  • Wir haben experimentellen Support für deaktivierte Skalierungs- und Ausblendungsanimationen 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. So werden unerwartete Abstürze durch IllegalArgumentException verhindert, die auftreten, wenn der Backstack leer ist. (I04a81, b/277700155)

Version 1.2.0-alpha10

10. Mai 2023

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

Neue Funktionen

  • Wir haben die Unterstützung für „Wischen, um zu enthüllen“ hinzugefügt, um auf sekundäre Aktionen zuzugreifen. Dieses Muster ergänzt das Muster „Langes Drücken“, mit dem Nutzer bereits (andere) sekundäre Aktionen aufrufen konnten. (I60862)

API-Änderungen

  • Wir haben RevealScope zu Aktions-Kompositen in SwipeToReveal hinzugefügt. Damit können Sie auf den Offset zugreifen, bei dem zusätzliche Aktionen angezeigt werden. (I3fd56)

Fehlerkorrekturen

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

Bekannte Probleme

  • Wir haben einen Fehler in Android Studio gefunden, der beim Rendern der Vorschau bei Anmerkungen mit @WearPreviewDevices und @WearPreviewFontScales zu einem Fehler führt. Eine Lösung wird bald veröffentlicht. Die anderen Anmerkungen für die Wear-Vorabversion funktionieren in Android Studio Giraffe 2022.3.1 und höher wie vorgesehen.

  • In Version 1.2.0-alpha07 haben wir Wear Compose den DefaultTextStyle hinzugefügt und den Wert „includeFontPadding“ von PlatformTextStyle beibehalten.Weitere Informationen finden Sie unter Abstand der Schrift in Compose korrigieren. In einer frühen Alphaversion von 1.3 werden wir den StandardTextStyle ändern, um das Schriftfeld in Android einheitlich zu deaktivieren. Dadurch wird bei großen Schriftgrößen in einigen Fällen verhindert, dass Text abgeschnitten wird. Dies kann sich auch auf Bildschirmlayouts auswirken, sodass Screenshottests aktualisiert werden müssen. Bei großen Schriftgrößen wird der Text beispielsweise abgeschnitten:

Text wird bei großer Schriftgröße abgeschnitten
Abbildung 1: Abgeschnittener Text
  • Wenn das Schriftfeld-Padding deaktiviert ist, ist es nicht mehr vorhanden:
Text wird bei großer Schriftgröße nicht abgeschnitten
Abbildung 2: Text wird nicht abgeschnitten.

Sie können die neue Einstellung jetzt übernehmen, indem Sie die Typografie in Ihrem Design überschreiben. Weitere Informationen finden Sie im Beispielcode.

Version 1.2.0-alpha09

19. April 2023

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

API-Änderungen

  • angularSizeDp zur CurvedModifier API hinzufügen, um den Winkel der Breite in DP festzulegen (I89a52)

Fehlerkorrekturen

  • Wir haben Probleme mit der Barrierefreiheit in unseren Zeitauswahl-Demos(Id0eb7) behoben.

Version 1.2.0-alpha08

5. April 2023

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

API-Änderungen

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

Fehlerkorrekturen

  • Verbesserte auswählbare Beispiele, um mehr Möglichkeiten zu zeigen Die Animation von expandableItem wurde so geändert, dass die Inhalte während der Animation immer zentriert bleiben. (I2f637)
  • ToggleControls wurde aktualisiert, um zusätzliche Neuzusammensetzungen zu vermeiden, wenn die Farben manuell mithilfe von „State“ animiert werden. (I5d319)

Version 1.2.0-alpha07

22. März 2023

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

API-Änderungen

  • Wir haben die Komponenten „Expandable Item“ (in 1.2.0-alpha06 hinzugefügt) aus dem Bereich „Material“ in den Bereich „Foundation“ verschoben, da sie keinen sinnvollen Bezug zur MaterialTheme hatten. (Ib0525)

Fehlerkorrekturen

  • Wir haben einen Absturz auf einem Bildschirm mit PickerGroup behoben. PickerGroup wird jetzt richtig verarbeitet, wenn keine Auswahl den Fokus hat. Außerdem wurde die Unterstützung für das Scrollen mit der rechten Maustaste in unseren Picker-Demos hinzugefügt. (If8c19)
  • Wir haben die Dialogübergänge verbessert. Der Einstieg ist jetzt flüssiger und passt besser zum Outro. (Ib5af9)
  • Wir haben Wear Compose einen DefaultTextStyle hinzugefügt, der die Property PlatformTextStyle.includeFontPadding standardmäßig auf „wahr“ setzt (dies ist die aktuelle Einstellung). So können wir das Deaktivieren des Schriftabstands standardmäßig mit den Compose-Bibliotheken synchronisieren. Weitere Informationen finden Sie unter Schriftabstand in Compose korrigieren. (I2aee8)
  • Wir haben eine UpsideDownCake-Vorschauabhängigkeit über „activity-compose“ rückgängig gemacht, die die Veröffentlichung von Apps im Google Play Store verhindert hat. (I6443d)

Version 1.2.0-alpha06

8. März 2023

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

API-Änderungen

  • Fügen Sie die CurvedBox-Komponente hinzu, mit der Komponenten in der gekrümmten Welt übereinander gelegt werden. (I29200)
  • Maximierbare Elemente hinzugefügt: Zwei neue Komponenten, mit denen entweder eine Gruppe maximierbarer Elemente in einer ScalingLazyColumn oder ein einzelnes maximierbares Element unterstützt wird, z. B. Text, bei dem sich die Anzahl der Zeilen maximiert. (I95dd5)
  • Wir haben die folgenden benutzerdefinierten Anmerkungen für die Vorschau von Composeables auf Wear-Displays hinzugefügt: WearPreviewSmallRound zeigt die Vorschau des Composeables auf einem kleinen, runden Gerät an; WearPreviewLargeRound zeigt die Vorschau des Composeables auf einem großen, runden Gerät an; WearPreviewSquare zeigt die Vorschau des Composeables auf einem quadratischen Gerät an. Außerdem die folgenden Anmerkungen für die Mehrfachvorschau: WearPreviewFontScales zeigt die Vorschau der Composeables auf einem Wear-Gerät mit mehreren Schriftgrößen an, während WearPreviewDevices die Vorschau der Composeables auf verschiedenen Wear-Geräten anzeigt. Wenn Sie diese Vorabversionen verwenden möchten, benötigen Sie die neueste Version von Android Studio (Giraffe Canary 6) oder höher. Wenn diese Anmerkungen nicht Ihren Anforderungen entsprechen, können Sie die Vorschau weiterhin verwenden. Sie unterstützt auch weitere Anpassungen über Parameter. (I397ff)
  • Wir haben HierarchicalFocusCoordinator als experimentell gekennzeichnet, da es aufgrund seiner breiten Anwendbarkeit als Kandidat für die Aufnahme in die Hauptbibliotheken von Compose infrage kommt. (I3a768)

Fehlerkorrekturen

  • Ein Fehler bei HierarchicalFocusCoordinator wurde behoben. Wenn der für den Parameter focusEnabled übergebene Lambda-Wert geändert wird, wird jetzt der neue Wert verwendet. (Icb353)
  • Die Standardfarbe für deaktivierte Inhalte wurde in Button, CompactButton, Chip, CompactChip und ToggleButton in „Hintergrund“ geändert, wenn 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 wird 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 diese Option auf „wahr“ gesetzt ist, sind die vom übergeordneten zusammensetzbaren Element übergebenen Mindesteinschränkungen für die PickerGroup zulässig. Wenn diese Option auf „false“ gesetzt ist, werden die Mindesteinschränkungen von PickerGroup zurückgesetzt. (I3e046)
  • Wir haben der Picker API animateScrollToOption hinzugefügt, um die programmatische Animation einer bestimmten Auswahloption zu unterstützen (I6fe67).

Fehlerkorrekturen

  • Wir haben HorizontalPageIndicator aktualisiert, damit es jetzt auch linksläufige Layouts unterstützt. (Ia4359)
  • In HorizontalPageIndicator (I6fbb8) wurden Screenshot-Tests für das Layout von rechts nach links 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 wird veröffentlicht. Version 1.2.0-alpha04 enthält diese Commits.

Neue Funktionen

  • PickerGroup für die gemeinsame Verarbeitung mehrerer Auswahltools mit der Focus API. Sie verwaltet den Fokus zwischen den verschiedenen Auswahlen, ermöglicht die automatische Zentrierung der Auswahlen basierend auf Parametern und ermöglicht es Entwicklern, den Fokus zwischen verschiedenen Auswahlen zu ändern, während sie die Ereignisse aus der Gruppe verarbeiten. Im TalkBack-Modus steuert die Taste PickerGroup den TalkBack-Fokus, indem der Fokus auf die ausgewählte Auswahl aus der Gruppe verschoben wird. (I60840)

API-Änderungen

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

Fehlerkorrekturen

  • ScalingLazyColumn darf in eine horizontal scrollbare Seite verschachtelt sein (Iec3f8, b/266555016)
  • Verbesserung der KDocs für den Stepper und Bereinigung von StepperTest-Tests. (Ic118e)
  • Die Abhängigkeit von androidx.navigation wurde auf Version 2.5.3 (If58ed) aktualisiert.

Version 1.2.0-alpha03

25. Januar 2023

androidx.wear.compose:compose-*:1.2.0-alpha03 wird 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 (Beispiel für die Migration). Diese neue Position entspricht eher der von compose.foundation.lazy.LazyColumn und wirkt natürlicher, da es sich nicht um eine Material-Komponente handelt, die eine bestimmte Meinung vertritt. Die Änderung erfolgt jetzt in Vorbereitung auf eine neue Material 3-Bibliothek, an der wir parallel zur vorhandenen 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 ScalingLazyListLayoutInfo das Feld anchorType hinzugefügt. (I29d95)
  • ScalingLazyColumn wurde im Wear Compose Material-Paket (I16d34) als veraltet gekennzeichnet.
  • Wir haben den Modifikator ScrollAway aktualisiert, damit er ScalingLazyListState aus Wear Compose Foundation.Lazy verwendet. Die Überladung, bei der ScalingLazyListState aus Wear Compose Material verwendet wurde, wurde eingestellt. (Ifc42c)
  • Wir haben die Dialog APIs aktualisiert, sodass jetzt ScalingLazyListState statt Foundation.Lazy verwendet wird. Die Überladungen, die Material ScalingLazyListState (Ic8960) verwendeten, wurden eingestellt.
  • Wir haben die Picker APIs aktualisiert, damit sie ScalingParams anstelle von Foundation.Lazy verwenden. Die Überladungen, die Material ScalingParams verwendeten, wurden eingestellt. (Idc3d8)

Fehlerkorrekturen

  • Wir haben einen Fehler behoben, der zu unnötigen Neuzusammensetzungen in ScalingLazyListState.centerItemIndex geführt hat. Jetzt werden nur dann Updates gesendet, 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 Methoden von ScalingLazyColumn-Klassen in Material aktualisiert, um die entsprechenden Methoden aus Foundation.Lazy (I38aab) zu verwenden.
  • Wir haben einige Probleme in den Auswahltests behoben und weitere Tests zum Prüfen des Scrollens mit Offset hinzugefügt (I6ac34).
  • Die ScalingLazyColumn-Integrationsdemos sind jetzt von Foundation.Lazy statt von Material ScalingLazyColumn abhängig (Ic6caa)
  • Wir haben unserer 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 wird veröffentlicht. Version 1.2.0-alpha02 enthält diese Commits.

API-Änderungen

  • Bei Android Compose UI-Tests werden jetzt Layoutdurchläufe für jeden Frame ausgeführt, wenn Frames ausgeführt werden, um in den Inaktivitätsstatus zu gelangen (z.B. über waitForIdle). Dies kann sich auf Tests auswirken, die für einzelne Frames von Layoutanimationen gelten. (I8ea08, b/222093277)
  • Der Parameter minLines wird Wear Text hinzugefügt, um ein einheitliches Verhalten mit BasicText zu ermöglichen (I24874)
  • CompactChipTapTargetPadding wurde veröffentlicht und ist in der Dokumentation zu sehen (If1e70, b/234119038).

Fehlerkorrekturen

  • Deaktivierung von Multiplattform-Builds für wear.compose-Pakete (Iad3d7)
  • Kdocs für scrollToOption (I6f9a0) korrigieren
  • PlaceholderState.rememberPlaceholderState() wurde aktualisiert, um rememberUpdatedState zu verwenden, damit der Status aktualisiert wird, wenn die onContentReady-Lambda-Funktion ausgeführt wird. (I02635, b/260343754)
  • Wir haben ein Problem mit dem Ruckeln von Text in der Picker-Komponente behoben. Dazu haben wir die neue Kompositionierungsstrategie verwendet, die Modifier.graphicsLayer hinzugefügt wurde. (I99302)
  • Wir haben einen Fehler behoben, der zu Flimmern in unserer DatePicker-Demo (I660bd) geführt hat.
  • Die Barrierefreiheit der Demos für die 12-Stunden-Zeit- und Datumsauswahl wurde verbessert (I05e12).
  • Wir haben unsere Demos für die Uhrzeit- und Datumsauswahl aktualisiert, sodass die Auswahlen nicht von RSB-Änderungen betroffen sind, wenn sie nicht ausgewählt sind (I4aecb).

Version 1.2.0-alpha01

7. Dezember 2022

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

Neue Funktionen

  • Wir haben die experimentelle Funktion für Platzhalter aktualisiert, sodass der Effekt „Wegwischen“ sofort angewendet wird, wenn die Inhalte bereit sind, anstatt auf den Beginn der nächsten Animationsschleife zu warten. Außerdem haben wir einige Änderungen an den Schimmer- und Wisch-Animationen vorgenommen. (I5a7f4)

API-Änderungen

  • Wir haben ein HierarchicalFocusCoordinator-kompositives Element hinzugefügt, mit dem Unterbäume der Komposition als „Fokus aktiviert“ oder „Fokus deaktiviert“ markiert werden können.(I827cb)
  • Wir haben eine neue Property hinzugefügt, um die semantische Rolle für ToggleButton zu überschreiben.(I67132)
  • Wir haben TimeTextDefaults.TimeFormat12Hours aktualisiert und die Angabe von „Vormittags“ und „Nachmittags“ in 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 Mehrfachauswahl zu verbessern. Mit der neuen Eigenschaft userScrollEnabled lässt sich festlegen, ob die Bildauswahl beim Scrollen des Nutzers aktiv ist. (I3c3aa)

Fehlerkorrekturen

  • Wir haben die Standardrahmenbreite für eine OutlinedButton/OutlinedCompactButton von 2.dp auf 1.dp geändert, um den endgültigen UX-Spezifikationen zu entsprechen. (Icf84d)
  • Um zu verhindern, dass der erste hinzugefügte Artikel in einer leeren ScalingLazyColumn-Liste so erscheint, als würde er sich an seine Position scrollen, haben wir bei leeren Inhalten eine geschätzte autoCentering topPadding hinzugefügt. Bei dieser Änderung wird die erforderliche Oberabstand berechnet, indem ein Anfangselement mit einer Höhe von 0,0 dp angenommen wird. Für ScalingLazyListAnchorType.ItemStart wird dadurch der richtige Abstand oben berechnet, für ScalingLazyListAnchorType.ItemCenter ist diese Berechnung falsch, da die Höhe der Elemente erforderlich ist, um die Größe der Inhalte korrekt festzulegen. Dies führt zu einem kleinen Scrollen an die richtige Position, basierend auf der tatsächlichen Höhe der Elemente.(I239a4)
  • Wir haben den Hintergrund-Scrim für die SwipeToDismiss-Animation an die Wear-Plattform angepasst. (I9003e)
  • Wir haben die PositionIndicator-Verarbeitung von LazyListState und ScalingLazyListState für Listenelemente mit der Größe 0 korrigiert, um Fehler aufgrund einer Division durch 0 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 werden losgelassen. Version 1.1.2 enthält diese Commits.

Fehlerkorrekturen

  • Wir haben einen Fehler behoben, der zu unnötigen Neuzusammensetzungen in ScalingLazyListState.centerItemIndex geführt hat. Jetzt werden nur dann Updates gesendet, 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 werden losgelassen. Version 1.1.1 enthält diese Commits.

Fehlerkorrekturen

  • PlaceholderState.rememberPlaceholderState() wurde aktualisiert, um rememberUpdatedState zu verwenden, damit der Status aktualisiert wird, wenn die onContentReady-Lambda-Funktion ausgeführt wird. (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 werden losgelassen. Version 1.1.0 enthält diese Commits.

Wichtige Änderungen seit Version 1.0.0

Neue Funktionen

  • Wir haben die experimentelle Funktion für Platzhalter aktualisiert, sodass der Effekt „Wegwischen“ sofort angewendet wird, wenn die Inhalte bereit sind, anstatt auf den Beginn der nächsten Animationsschleife zu warten. Außerdem haben wir einige Änderungen an den Schimmer- und Wisch-Animationen vorgenommen. (I5a7f4)

Fehlerkorrekturen

  • Wir haben die Standardrahmenbreite für eine OutlinedButton/OutlinedCompactButton von 2.dp auf 1.dp geändert, um den endgültigen UX-Spezifikationen zu entsprechen. (Icf84d)
  • Um zu verhindern, dass der erste hinzugefügte Artikel in einer leeren ScalingLazyColumn-Liste so erscheint, als würde er sich an seine Position scrollen, haben wir bei leeren Inhalten eine geschätzte autoCentering topPadding hinzugefügt. Bei dieser Änderung wird die erforderliche Oberabstand berechnet, indem ein Anfangselement mit einer Höhe von 0,0 dp angenommen wird. Für ScalingLazyListAnchorType.ItemStart wird dadurch der richtige Abstand oben berechnet, für ScalingLazyListAnchorType.ItemCenter ist diese Berechnung falsch, da die Höhe der Elemente erforderlich ist, um die Größe der Inhalte korrekt festzulegen. Dies führt zu einem kleinen Scrollen an die richtige Position, basierend auf der tatsächlichen Höhe der Elemente.(I239a4)
  • Wir haben den Hintergrund-Scrim für die SwipeToDismiss-Animation an die Wear-Plattform angepasst.(I9003e)
  • Wir haben die PositionIndicator-Verarbeitung von LazyListState und ScalingLazyListState für Listenelemente mit der Größe 0 korrigiert, um Fehler aufgrund einer Division durch 0 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 werden losgelassen. Version 1.1.0-rc01 enthält diese Commits.

Fehlerkorrekturen

  • Wir haben Basisprofilregeln für Placeholders, ScrollAway, RadioButton, Switch, Checkbox, OutlinedButton, OutlinedCompactButton, OutlinedChip und OutlinedCompactChip hinzugefügt. (I8249c)
  • Wir haben einen Fehler in Modifier.scrollAway behoben. Wenn die angegebene itemIndex ungültig ist (z. B. wenn der Artikelindex außerhalb des zulässigen Bereichs liegt), wird TimeText jetzt trotzdem angezeigt. (I2137a)
  • Wir haben die SwipeToDismissBox-Animation an die Plattformimplementierung angepasst. Nach der ersten Animation beim Zusammendrücken gleitet der Bildschirm jetzt nach rechts, sobald die Anzeige geschlossen wurde. (I41d34)
  • Zur Optimierung haben wir Modifier.scrollAway so aktualisiert, dass nur die scrollState im Messblock gelesen wird, um zu vermeiden, dass der Modifikator nach jeder Neumessung neu erstellt werden muss. (I4c6f1)
  • Wir haben den Platzhaltern eine Dokumentation und ein Beispiel hinzugefügt, um die richtige Reihenfolge für Modifier.placeholder und Modifier.placeholderShimmer zu zeigen, wenn sie auf dasselbe Composed angewendet werden. (Ie96f4, b/256583229)
  • Wir haben die Standardrahmenbreite für eine OutlinedCompactChip/OutlinedChip von 2.dp auf 1.dp geändert, um den finalen UX-Spezifikationen zu entsprechen. (Ib3d8e)
  • Wir haben einen Fehler in rememberPickerState behoben, bei dem aktualisierte Eingaben nicht gespeichert wurden, sodass Elemente nach Änderungen an den Eingaben nicht aktualisiert wurden. (I49ff6, b/255323197)
  • Wir haben einige Änderungen an der Benutzeroberfläche der Platzhalter vorgenommen: 1) Der Schimmerverlauf wurde auf 1, 5-mal die Bildschirmgröße geändert, 2) die Schimmerprogression wurde mit einer Cubic-Bezier-Easing versehen und 3) die Wischanimation wurde auf 250 Millisekunden beschleunigt. (Id29c1)
  • Wir haben einen UI-Fehler im Platzhalter-Effekt „wipeOff“ korrigiert, bei dem die Hintergründe von Chips und Karten etwas zu früh ausgeblendet wurden, da die Position der Komponente auf dem Bildschirm nicht berücksichtigt wurde. (I2c7cb)
  • Wir haben die Hintergrundzeichnung des Platzhalters aktualisiert, um Farben nach Möglichkeit zu verschmelzen, anstatt sie zu überlagern. So wird das Risiko verringert, dass bei der Alpha-Mischung der verschiedenen zugeschnittenen Ebenen die darunter liegenden Farben an den Rändern des Platzhalterhintergrunds durchscheinen. (I2ea26)
  • Wir haben die Berechnung von ScalingLazyListState.centerItemIndex/centerItemOffset korrigiert. Wenn sich zwei Elemente auf beiden Seiten der Mitte des Darstellungsbereichs befinden, wird das am nächsten gelegene als centerItem betrachtet. (I30709, b/254257769)
  • Wir haben einen Fehler in der ScalingLazyListState.layoutInfo.visibleItemsInfo behoben, durch den bei der ScalingLazyColumn-Initialisierung falsche Abweichungen gemeldet wurden. Jetzt wird eine leere Liste zurückgegeben, bis alle Listenelemente sichtbar sind und die richtigen Abweichungen haben. Wenn Sie nach ScalingLazyListState.layoutInfo.visibleItemsInfo.isNotEmpty() suchen, wird bestätigt, dass die ScalingLazyColumn-Initialisierung abgeschlossen ist und die 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 werden losgelassen. Version 1.1.0-beta01 enthält diese Commits.

Neue Funktionen in Compose für Wear OS 1.1

Die Version 1.1.0-beta01 von Compose für Wear OS gibt an, dass diese Version der Bibliothek funktionsfähig ist und die API gesperrt ist.

  • Die Version 1.1 von Wear Compose enthält die folgenden neuen Funktionen:
    • Auswahl: Verbesserungen bei der Barrierefreiheit der Auswahl, damit Bildschirme mit mehreren Auswahloptionen mit Screenreadern navigiert werden können und die Inhaltsbeschreibung barrierefrei ist
    • Der Parameter „Picker“ contentDescription wird jetzt nur für die ausgewählte Auswahloption verwendet und nimmt einen typfremden String an. Im vorherigen Commit musste eine Zuordnung von Option zur Inhaltsbeschreibung übergeben werden, es wurde jedoch nur die ausgewählte Option verwendet.
    • Auswahlelemente sind jetzt immer zentriert ausgerichtet. Dadurch wurde ein Fehler behoben, bei dem die Ausrichtung geändert wurde, wenn gradientRatio auf null gesetzt wurde.
    • Chip/ToggleChip: Wir haben die Standardverläufe für Chip/ToggleChip aktualisiert, damit sie den neuesten UX-Spezifikationen entsprechen. ChipDefaults.gradientBackgroundChipColors beginnt jetzt bei 50% des Primärfarbtons statt bei 32,5%.
    • Chip/ToggleChip – Überladungen zum Ändern von Chipformen hinzugefügt
    • Chip/Button/ToggleButton: Es wurde ein neuer Umrissstil für Chips und Schaltflächen sowie neue OutlinedChip- und OutlinedButton-Kompositen hinzugefügt, die einen transparenten Chip/Button mit einem dünnen Rahmen bieten.
    • Karte: Die Standardverläufe für Karten wurden aktualisiert, um sie an die neuesten UX-Spezifikationen anzupassen. CardDefaults.cardBackgroundPainter beginnt jetzt bei 30% des Primärfarbtons und endet bei 20% von onSurfaceVariant (zuvor 20% bis 10% onSurfaceVariant). ToggleChip.toggleChipColors ändert sich von einem linearen Farbverlauf von 75% Oberfläche zu 32,5% Primärfarbe zu 0% Oberfläche zu 50% Primärfarbe.
    • Button/ToggleButton: Es wurden Eigenschaften zum Ändern der Schaltflächenform hinzugefügt.
    • Design: Einige der Standardfarben in der MaterialTheme wurden aktualisiert, um die Barrierefreiheit zu verbessern. Die ursprünglichen Farben hatten keinen ausreichenden Kontrast, was es Nutzern erschwert hat, die Hintergründe von Chips, Karten und Schaltflächen von der Hintergrundfarbe des Designs zu unterscheiden.
    • InlineSlider/Stepper: Schaltflächenrollen wurden hinzugefügt, damit Talkback sie als Schaltflächen erkennt.
    • Scaffold: PositionIndicator ist jetzt so positioniert und skaliert, dass es nur den benötigten Platz einnimmt. Das ist beispielsweise nützlich, wenn semantische Informationen hinzugefügt werden. TalkBack erhält dann die richtigen Begrenzungen des PositionIndicator auf dem Bildschirm.
    • CurvedText/TimeText: Es wurde Modifier.scrollAway hinzugefügt, mit dem ein Element je nach Scrollstatus vertikal sichtbar oder ausgeblendet wird (mit Überladungen für die Verwendung mit Column, LazyColumn und ScalingLazyColumn). ScrollAway wird in der Regel verwendet, um ein TimeText auszublenden, wenn der Nutzer beginnt, eine Liste von Elementen nach oben zu scrollen.
    • CurvedText/TimeText: Unterstützung für fontFamily, fontStyle und fontSynthesis in CurvedTextStyle hinzugefügt, nutzbar auf curvedText und basicCurvedText
    • CurvedText/TimeText: Dem Konstruktor und der Kopiermethode von CurvedTextStyle wurde fontWeight hinzugefügt.
    • ToggleControls: Es wurden animierte Ein-/Aus-Schaltflächen für Checkbox, Switch und RadioButton hinzugefügt, die mit ToggleChip und SplitToggleChip verwendet werden können. Sie können anstelle der statischen Symbole von ToggleChipDefaults (switchIcon, checkboxIcon und radioIcon) verwendet werden.
    • Platzhalter: Es wurde eine experimentelle Unterstützung für Platzhalter hinzugefügt. Hier sind drei verschiedene visuelle Effekte zu sehen, die zusammenwirken.
    • Erstens: Ein Platzhalter-Hintergrund-Pinseleffekt, der in Containern wie Chips und Karten verwendet wird, um den normalen Hintergrund zu übermalen, während Inhalte geladen werden.
    • Zweitens eine Modifikation (Modifier.placeholder()), um ein platzhalterförmiges Widget in Form eines Stadions über den geladenen Inhalten zu zeichnen.
    • Drittens: Ein Modifizierungs-Gradienten-/Shimmer-Effekt (Modifier.placeholderShimmer()), der über den anderen Effekten gezeichnet wird, um Nutzern zu signalisieren, dass wir auf das Laden der Daten warten.
      • Alle diese Effekte sind aufeinander abgestimmt und schimmern und verschwinden auf harmonische Weise.
  • Abhängigkeiten von Compose Core von 1.2 auf 1.3 aktualisiert

API-Änderungen

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

Fehlerkorrekturen

  • curveText und basicCurvedText funktionieren jetzt richtig mit TalkBack. Sie sind mit einem korrekt dimensionierten und platzierten (aber leeren) compose-ui-Knoten verknüpft, der den Text als Inhaltsbeschreibung verwendet. (I7af7c, b/210721259)
  • Fehlerkorrektur für Picker when PickerState.repeatedItems = false, um eine explizite Einstellung der Parameter für die automatische Zentrierung in der internen ScalingLazyColumn des Pickers hinzuzufügen, damit die Null-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 werden losgelassen. Version 1.1.0-alpha07 enthält diese Commits.

Neue Funktionen

  • Wir haben eine experimentelle Unterstützung für Platzhalter hinzugefügt. Hier werden drei verschiedene visuelle Effekte verwendet, die zusammenwirken. Erstens: Ein Platzhalter-Hintergrund-Pinseleffekt, der in Containern wie Chips und Karten verwendet wird, um den normalen Hintergrund zu übermalen, während Inhalte geladen werden. Zweitens eine Modifikation (Modifier.placeholder()), um ein platzhalterförmiges Widget in Form eines Stadions über den geladenen Inhalten zu zeichnen. Drittens wird ein Modifizierungs-Gradienten-/Shimmer-Effekt (Modifier.placeholderShimmer()) über die anderen Effekte gezeichnet, um Nutzern zu signalisieren, dass wir auf das Laden der Daten warten. Alle diese Effekte sind aufeinander abgestimmt und schimmern und verschwinden auf harmonische Weise. (I3c339)

API-Änderungen

  • Unterstützung für fontWeight, fontFamily, fontStyle und fontSynthesis in CurvedTextStyle hinzugefügt, nutzbar auf curvedText und basicCurvedText Mit diesen Parametern können Sie die Schriftart und den Stil für den gekrümmten Text festlegen.(Iaa1a8),(I72759)
  • Der Offset-Parameter von Modifier.scrollAway wurde zu Dp geändert, um für Einheitlichkeit mit Modifier.offset zu sorgen. Bisher wurde er in Pixeln angegeben. Außerdem wurde es aus Effizienzgründen in eine LayoutModifier umstrukturiert. (I9f94b)
  • Im Rahmen der neuen API für Ein-/Aus-Schaltflächen haben wir RadioButton’s circleColor in ringColor umbenannt. (I28fa9)
  • Wir haben animierte Ein-/Aus-Schaltflächen für Checkbox, Switch und RadioButton hinzugefügt, die mit ToggleChip und SplitToggleChip verwendet werden können. Sie 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 werden losgelassen. Version 1.1.0-alpha06 enthält diese Commits.

Neue Funktionen

  • Wir haben Modifier.scrollAway hinzugefügt, mit dem ein Element je nach Scrollstatus vertikal sichtbar oder ausgeblendet wird (mit Überladungen für die Verwendung mit Column, LazyColumn und ScalingLazyColumn). ScrollAway wird in der Regel verwendet, um ein TimeText auszublenden, wenn der Nutzer beginnt, eine Liste von Elementen nach oben zu scrollen. (I61766)

Fehlerkorrekturen

  • Die PositionIndicator ist jetzt so positioniert und hat eine Größe, dass sie nur den benötigten Platz einnimmt. Das ist beispielsweise nützlich, wenn semantische Informationen hinzugefügt werden. TalkBack erhält dann die richtigen Begrenzungen des PositionIndicator auf dem Bildschirm. (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 werden losgelassen. Version 1.1.0-alpha05 enthält diese Commits.

Fehlerkorrekturen

  • InlineSlider und Stepper wurden Schaltflächenrollen hinzugefügt, damit Talkback sie als Schaltflächen erkennen kann. (Icb46c, b/244260275)
  • Wir haben die Z-Reihenfolge der Positionierungs- und Seitenindikatoren im Scaffold korrigiert. Die Anzeigen werden jetzt über der Vignette angezeigt und sind dadurch nicht mehr von ihr verdeckt, falls eine Vignette 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 werden losgelassen. Version 1.1.0-alpha04 enthält diese Commits.

API-Änderungen

  • Wir haben einige der Standardfarben im MaterialTheme aktualisiert, um die Barrierefreiheit zu verbessern. Die ursprünglichen Farben hatten keinen ausreichenden Kontrast, was es Nutzern erschwert hat, Chip-/Karten-/Schaltflächen-Hintergründe von der Hintergrundfarbe des Designs zu unterscheiden. Die aktualisierten Farben sind „surface“ (von #FF202124 zu #FF303133), „onPrimary“ (von #FF202124 zu #FF303133), „onSecondary“ (von #FF202124 zu #FF303133), „primaryVariant“ (von #FF669DF6 zu #FF8AB4F8) und „onError“ (von #FF202124 zu #FF000000). Die Farbänderungen sind zwar relativ subtil, können sich aber auf vorhandene Screenshottests auswirken. (81ab09)

Fehlerkorrekturen

  • Behebung eines Logikfehlers in ScalingLazyColumn, der dazu führen konnte, dass Listen mit einer kleinen Anzahl von Listenelementen (in der Regel genau zwei) nicht vollständig initialisiert wurden und daher transparent waren. (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 werden losgelassen. Version 1.1.0-alpha03 enthält diese Commits.

Neue Funktionen

  • Wir haben einen neuen Stil mit Umriss für Chips und Buttons sowie neue OutlinedChip- und OutlinedButton-Kompositen hinzugefügt, die ein transparentes Chip/Button mit einem dünnen Rahmen bieten. (Id5972)

API-Änderungen

  • Überladungen zum Ändern der Schaltflächenform hinzugefügt (Icccde)

Fehlerkorrekturen

  • Wir haben die Größe des Bereichs für die Ein-/Aus-Schaltfläche der ToggleChip korrigiert, da sie nicht den UX-Spezifikationen entsprach. Die UX-Spezifikation sieht einen Abstand von 4 dp zwischen dem Label und einem Symbolbereich für die Ein-/Aus-Schaltfläche von 24 × 24 dp vor, was einer Gesamtbreite von 28 dp entspricht. Die Implementierung gibt jedoch fälschlicherweise 36 × 24 dp für den Bereich des Ein-/Aus-Steuerelements an. Dadurch gehen 8 dp nutzbarer Textlabelfläche verloren. HINWEIS: Durch diese Fehlerkorrektur wird zusätzlicher Platz für das Textlabel geschaffen, was sich positiv auf das Textlayout für Textauslauf auswirken kann. Wenn Sie Screenshottests mit ToggleChips haben, 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 werden losgelassen. Version 1.1.0-alpha02 enthält diese Commits.

Neue Funktionen

  • Wir haben die Abhängigkeiten von Compose for Wear OS von den Compose-Kernbibliotheken 1.2.0 auf 1.3.0-alpha0X umgestellt.

API-Änderungen

  • Überladungen zum Ändern von Chipformen hinzugefügt (I02e87)

Fehlerkorrekturen

  • Wir haben die Sichtbarkeit der Vignette beim Ein- und Ausblenden des Dialogfelds animiert, damit sie mit der vorhandenen Skalierungsanimation übereinstimmt. (Ida33e)
  • Wir haben einen Fehler behoben, bei dem beim Scrollen bei bestimmten Wischaktionen eine Division durch Null auftreten konnte. (I86cb6)
  • Ein Fehler in der ChipDefaults.childChipColor() wurde behoben, damit die deaktivierte Hintergrundfarbe vollständig transparent ist. (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 werden losgelassen. Version 1.1.0-alpha01 enthält diese Commits.

API-Änderungen

  • Der Parameter contentDescription von Picker wird jetzt nur für die ausgewählte Picker-Option verwendet und nimmt einen typfremden String an. Bisher war es erforderlich, eine Zuordnung von der Option zur Inhaltsbeschreibung zu übergeben, aber es wurde nur die ausgewählte Option verwendet. (Ife6a7)
  • Wir haben die Barrierefreiheit der Auswahl verbessert, damit Bildschirme mit mehreren Auswahloptionen mit Screenreadern navigiert werden können und die Inhaltsbeschreibung barrierefrei ist (I64edb).

Fehlerkorrekturen

  • Wir haben die Regeln für das Baseline-Profil aktualisiert, die in der Wear Compose-Bibliothek (I9c694) enthalten sind.
  • Wir haben die Richtung des Farbverlaufs für Chips im Modus „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, um sie an die neuesten UX-Spezifikationen anzupassen. ChipDefaults.gradientBackgroundChipColors beginnt jetzt bei 50% des primären Farbtons statt bei 32,5%. CardDefaults.cardBackgroundPainter wurde aktualisiert und beginnt jetzt bei 30% des Primärfarbtons und endet bei 20% von onSurfaceVariant (zuvor 20% bis 10% onSurfaceVariant). ToggleChip.toggleChipColors ändert sich von einem linearen Farbverlauf von 75% Oberfläche zu 32,5% Primärfarbe zu 0% Oberfläche zu 50% Primärfarbe. (I43bbd)
  • Wir haben hinter Chip/ToggleChips eine Hintergrundfarbe (MaterialTheme.color.surface) mit Farbverlauf hinzugefügt, damit sie im unwahrscheinlichen Fall, dass dahinter eine helle Farbe verwendet wird, gut sichtbar sind. (Ibe1a4, b/235937657)
  • Auswahlelemente sind jetzt immer zentriert ausgerichtet. Dadurch wurde ein Fehler behoben, bei dem die Ausrichtung geändert wurde, wenn gradientRatio auf null gesetzt wurde. (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 werden losgelassen. Version 1.0.2 enthält diese Commits.

Fehlerkorrekturen

  • Wir haben die Z-Reihenfolge der Positionierungs- und Seitenindikatoren im Scaffold korrigiert. Die Anzeigen werden jetzt über der Vignette angezeigt und sind dadurch nicht mehr von ihr verdeckt, falls eine Vignette 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 werden losgelassen. Version 1.0.1 enthält diese Commits.

Fehlerkorrekturen

  • Behebung eines Logikfehlers in ScalingLazyColumn, der dazu führen konnte, dass Listen mit einer kleinen Anzahl von Listenelementen (in der Regel genau zwei) nicht vollständig initialisiert wurden und daher transparent waren. (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 werden losgelassen. Version 1.0.0 enthält diese Commits.

Wichtige Funktionen von 1.0.0

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

Fehlerkorrekturen

  • Wir haben die Sichtbarkeit der Vignette beim Ein- und Ausblenden des Dialogfelds animiert, damit sie mit der vorhandenen Skalierungsanimation übereinstimmt. (Ida33e)
  • Wir haben einen Fehler behoben, bei dem beim Scrollen bei bestimmten Wischaktionen eine Division durch Null auftreten konnte. (I86cb6)
  • Ein Fehler in der ChipDefaults.childChipColor() wurde behoben, damit die deaktivierte Hintergrundfarbe vollständig transparent ist. (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 werden losgelassen. 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. Bisher war die Reihenfolge „Oben links -> Unten rechts“, jetzt ist sie „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 beginnt jetzt bei 50% des Primärfarbtons statt bei 32,5%. CardDefaults.cardBackgroundPainter wurde aktualisiert und beginnt jetzt bei 30% des primären und endet bei 20% von onSurfaceVariant (zuvor 20% bis 10% aufSurfaceVariant). ToggleChip.toggleChipColors ändert sich von einem linearen Farbverlauf von 75% Oberfläche zu 32,5% Primärfarbe zu 0% Oberfläche zu 50% Primärfarbe. (I43bbd)
  • Wir haben hinter Chip/ToggleChips eine Hintergrundfarbe (MaterialTheme.color.surface) mit Farbverlauf hinzugefügt, damit sie auch dann gut sichtbar sind, wenn hinter ihnen eine helle Farbe verwendet wird. (Ibe1a4, b/235937657)
  • Wir haben die Regeln für das Baseline-Profil aktualisiert, die in der Wear Compose-Bibliothek (I9c694) enthalten sind.

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 werden losgelassen. Version 1.0.0-rc01 enthält diese Commits.

API-Änderungen

  • Schnittstellen in Compose-Bibliotheken werden jetzt mit den Standardschnittstellenmethoden von JDK 8 erstellt (I5bcf1)

Fehlerkorrekturen

  • Wir haben den expliziten Aufruf von fillMaxWidth() im Listenheader entfernt, da er nicht erforderlich ist und zu Problemen führen kann, wenn eine ScalinglazyColumn eine Mischung aus ListHeader()- und Chip()-Komponenten enthält. Die Breite wird dann tendenziell größer oder kleiner, wenn ListHeader-Elemente in den Blick oder aus dem Blickfeld gescrollt werden. (I37144, b/235074035)
  • Wir haben einen Fehler in der ScalingLazyColumn behoben, der dazu führen konnte, dass die Listenelemente erst nach dem Scrollen korrekt dargestellt wurden, wenn das Null-Listenelement groß genug war (einschließlich Padding) (Ic6159, b/234328517)
  • Wir haben die ScalingLazyColumn-Glättung leicht angepasst, wenn Elemente den Bildschirmrand erreichen, um den aktualisierten UX-Spezifikationen zu 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 die scalingParams von ScalingLazyColumn (Ie375c) überschreiben.
  • Wir haben dem CompactChip einen Abstand hinzugefügt, damit die Größe des Tippziels mindestens 48 dp beträgt und so den Material Design-Richtlinien für Barrierefreiheit entspricht. Dies kann sich auf Layouts auswirken, in denen CompactChips verwendet wird, da sie zusätzlichen Platz 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 werden losgelassen. Version 1.0.0-beta03 enthält diese Commits.

Neue Funktionen

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

API-Änderungen

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

Bekannte Probleme

  • Die Höhe der Touchbedienung von CompactChip ist kleiner als in den Material Design-Richtlinien für Bedienungshilfen angegeben. Dieser Fehler wird in der nächsten Version (15. Juni) behoben. Wenn Sie CompactChips verwenden, hat das Auswirkungen auf Ihre Layouts, da CompactChips jetzt oben und unten zusätzliche Abstände haben. Bitte passen Sie Ihre Layouts an und testen Sie sie oder sehen Sie sich die Kommentare zum Fehler an, um eine Lösung für das Problem zu finden. (b/234332135)

Fehlerkorrekturen

  • Neue Demo zum Animieren des Hinzufügens oder Entfernens von Starttext auf einer TimeText. (I16d75)
  • Tests für HorizontalPageIndicator.PagesState (I64ed0) hinzufügen
  • TimeText näher an den UX-Spezifikationen (Ib7ea1) aktualisieren

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 werden losgelassen. 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 durch Tippen eine Auswahl treffen, bevor sie scrollen können. Im Lesemodus werden Optionen, die nicht die aktuell ausgewählte sind, in gradientColor durch einen Shim verdeckt. (I72925)
  • Wir haben das UX-Verhalten von Chip/ToggleChip/CompactChip/SplitToggleChip geändert, damit fillMaxWidth standardmäßig nicht mehr ausgeführt wird. Stattdessen werden sie so groß, dass sie den Inhalt umschließen. Wenn Sie das bisherige Verhalten beibehalten möchten, fügen Sie einfach modifier = Modifier.fillMaxWidth()(I60a2c, b/232206371) hinzu.

Fehlerkorrekturen

  • Der CurvedTextStyle-Konstruktor, der einen TextStyle annimmt, berücksichtigt jetzt auch die fontWeight. Dieser Parameter 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 nach links vom Randbereich aus ausgelöst wird, wird das Wischen zum Schließen nicht mehr ausgelöst, wenn sich die Wischrichtung nach rechts ändert. Bisher war es möglich, das Wischen zum Schließen durch Wischen nach links und dann nach rechts auszulösen.(I916ea)
  • HorizontalPageIndicator zeigt jetzt bis zu sechs Seiten auf dem Bildschirm an. Wenn es insgesamt mehr als sechs Seiten gibt, wird links oder rechts ein Indikator in halber Größe angezeigt, mit einem fließenden Übergang zwischen den Seiten.(I2ac29)
  • Verbessertes Standard-Snap-Verhalten auf ScalingLazyColumn und Picker (I49539)
  • Verbesserungen beim Wischen am Rand Wenn Modifier.edgeSwipeToDismiss verwendet wird, wird das Wischen zum Schließen nur ausgelöst, wenn die erste Berührung am Rand erfolgt und nach rechts gewischt wird. Bisher war es möglich, das Wischen zum Schließen durch Wischen von einem beliebigen Punkt auf dem Bildschirm auszulösen, wenn ein Scrollen den Anfang erreicht.(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 werden losgelassen. Version 1.0.0-beta01 enthält diese Commits.

Funktionen von Compose für Wear OS 1.0

Die Version 1.0.0-beta01 von Compose für Wear OS ist ein wichtiger Meilenstein, da die Bibliothek jetzt funktionsfähig ist und die API gesperrt wurde.

Zu den Wear Compose-Materialkomponenten in der Version 1.0 gehören:

  • Material Theme: Ersetzt Compose for Mobile MaterialTheme und bietet Farben, Formen und Typografie für die Erstellung von Komponenten auf Wearables, die die UX-Richtlinien für Wear Material Design bereits implementieren.
  • Button, CompactButton und ToggleButton: Die Schaltfläche bietet einen einzelnen Steckplatz für ein Symbol, ein Bild oder einen kurzen Text (maximal 3 Zeichen). Sie haben eine runde Form und die 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 rund mit einem besonders kleinen Hintergrund. CompactButton hat optionale transparente Ränder um den Hintergrund, die den anklickbaren Bereich vergrößern. ToggleButton ist eine Schaltfläche mit einem einzigen Steckplatz für beliebige Inhalte (kurzer Text, Symbol oder Bild) und hat die Status „An“/„Aus“ (angeklickt/nicht angeklickt) mit Farbgebung und verschiedenen Symbolen, um anzuzeigen, ob sie angeklickt ist oder nicht.
  • Karten: Hier werden Informationen zu Apps wie Benachrichtigungen angezeigt. Flexibles Design für verschiedene Anwendungsfälle: AppCard und TitleCard bieten unterschiedliche Layouts und unterstützen Bilder als Karteninhalte oder Hintergründe.
  • Chips: Stadionförmige Komponenten, die Schaltflächen ähneln, aber eine größere Fläche und mehrere Slots für Labels, sekundäre Labels und Symbole haben. in verschiedenen Größen und mit Unterstützung für Bilder als Hintergründe.
  • ToggleChips und SplitToggleChips: Ein Chip mit einem angeklickten/nicht angeklickten Status und einem zusätzlichen ToggleControl-Slot, um ein Symbol wie einen Schalter oder eine Optionsschaltfläche für den angeklickten Status der Komponente anzuzeigen. Außerdem hat das SplitToggleChip zwei berührbare Bereiche, einen anklickbaren und einen aus-/einschaltbaren.
  • CircularProgressIndicator – Wear OS-Fortschrittsanzeige mit zwei Varianten Der erste gibt den Prozentsatz der Fertigstellung einer laufenden Aufgabe an und unterstützt eine Lücke im kreisförmigen Track zwischen Start- und Endwinkel. Die zweite gibt einen unbestimmten Fortschritt für eine nicht angegebene Wartezeit an.
  • curvedText: Dieser Parameter ist Teil der DSL zur Beschreibung von CurvedLayouts und wird zusammen mit curvedRow und curvedColumn verwendet, um Komponenten um kreisförmige Geräte herum anzuordnen. Weitere Informationen zu CurvedLayout und CurvedModifier finden Sie unten unter „Wear Component Foundation“. Diese spielen eine ähnliche Rolle wie Modifikatoren in der nicht gebogenen Welt und ermöglichen die Konfiguration verschiedener Aspekte wie Layout, Abstände und Farbverläufe.
  • Dialogfeld, Benachrichtigung und Bestätigung: Ein Dialogfeld wird im Vollbildmodus angezeigt, überlagert alle anderen Inhalte und kann durch Wischen geschlossen werden. Es nimmt einen einzelnen Slot ein, der voraussichtlich Wear OS-Dialoginhalte wie Benachrichtigungen oder Bestätigungen enthalten wird. „Benachrichtigung“ ist ein dialogorientierter Inhalt mit Slots für Symbol, Titel und Nachricht. Es gibt Überlastungen für entweder zwei negative und positive Schaltflächen, die nebeneinander angezeigt werden, oder einen Steckplatz für einen oder mehrere vertikal gestapelte Chips. Eine Bestätigung ist ein dialogorientierter Inhalt, bei dem eine Nachricht für eine bestimmte Dauer angezeigt wird. Es hat einen Steckplatz für ein Symbol oder Bild, das animiert werden kann.
  • HorizontalPageIndicator: Zeigt die horizontale Seitenposition auf eine dem Formfaktor des Wearables entsprechende Weise an. Erfüllt den Vollbildmodus und zeigt auf runden Geräten einen gebogenen Indikator an. Kann mit dem Seitenbetrachter für Begleiter verwendet werden.
  • Symbol: Eine Wear-Implementierung des Symbols, bei der Farbe und Alphakanal aus dem Wear-Material-Design übernommen werden. Informationen zu einem anklickbaren Symbol finden Sie unter Schaltfläche oder Chip.
  • Auswahl: Eine scrollbare Liste mit Elementen, aus denen ausgewählt werden kann. Standardmäßig werden Elemente in beiden Richtungen „unendlich“ wiederholt. Kann im Lesemodus angezeigt werden, um nicht ausgewählte Optionen auszublenden.
  • PositionIndicator: Zeigt die Scrollposition oder eine andere Positionsanzeige in einer für das Wearable geeigneten Weise an. Erfüllt den Vollbildmodus und zeigt auf runden Geräten einen gebogenen Indikator an.
  • Scaffold: Hier wird die grundlegende visuelle Layoutstruktur von Wear Material Design implementiert. Diese Komponente bietet eine API, mit der mehrere Wear OS-Materialkomponenten (z. B. TimeText, PositionIndicator und Vignette) zusammengestellt werden können, um den Bildschirm zu erstellen, eine geeignete Layoutstrategie für sie zu gewährleisten und die erforderlichen Daten zu erheben, damit diese Komponenten richtig zusammenarbeiten.
  • ScalingLazyColumn: eine scrollbare Listenkomponente mit Skalierung/Fischaugeneffekt, die einen wichtigen Teil der Wear OS-Material Design-Sprache bildet. Hiermit können Sie die Inhaltselemente skalieren und Transparenzeffekte hinzufügen. ScalingLazyColumn ist für die Verarbeitung einer potenziell großen Anzahl von Inhaltselementen konzipiert, die nur bei Bedarf materialisiert und zusammengesetzt werden.
  • Schieberegler: Nutzer können aus einem Wertebereich auswählen. Die Auswahlmöglichkeiten werden als Balken dargestellt, der optional mit Trennlinien versehen werden kann.
  • Einstellbarer Schieberegler: Eine Vollbildkomponente, mit der Nutzer über die Schaltflächen „Höher“ und „Niedriger“ oben und unten auf dem Bildschirm eine Auswahl aus einem Wertebereich treffen können. In der Mitte befindet sich ein Bereich für Text oder einen Chip.
  • SwipeToDismissBox: Hier wird die Wischgeste zum Schließen verarbeitet. Es belegt einen einzelnen Slot für den Hintergrund (wird nur während des Wischens angezeigt) und die Inhalte im Vordergrund. Kann optional mit der androidx-Navigationsbibliothek kombiniert werden, indem SwipeDismissableNavHost verwendet wird (siehe Wear Compose-Navigationsbibliothek unten).
  • Text: Eine Wear-Implementierung der Compose Material Text-Komponente, die Farbe und Alphakanal aus dem Wear Material-Design übernimmt
  • TimeText: Eine Komponente, mit der die Uhrzeit und der Anwendungsstatus oben auf dem Bildschirm angezeigt werden. Passt sich der Bildschirmform an, indem auf runden Bildschirmen geschwungener Text verwendet wird.
  • Vignette: Eine Bildschirmbehandlung für die Verwendung im Scaffolding, bei der der obere und untere Bereich des Bildschirms unscharf wird, wenn scrollbare Inhalte verwendet werden.

  • Außerdem sind die folgenden Komponenten aus Wear Compose Foundation enthalten:

  • CurvedLayout – Wear Foundation CurvedLayout ist ein Layout-Komposit, das seine untergeordneten Elemente in einem Bogen anordnet und bei Bedarf dreht. Das ähnelt einem Zeilenlayout, das in ein Segment eines Ringes gebogen ist. Der Inhalt einer CurvedLayout ist kein kompostierbares Lambda, sondern eine DSL (domainspezifische Sprache). Alle Elemente in der DSL von CurvedLayout unterstützen einen optionalen Modifikatorparameter, der aus CurvedModifier erstellt wird.

  • basicCurvedText: Ein Element in der CurvedLayout-DSL, basicCurvedText, mit dem Entwickler ganz einfach gekrümmten Text schreiben können, der der Krümmung eines Kreises folgt (normalerweise am Rand eines kreisförmigen Bildschirms). basicCurvedText kann nur innerhalb von CurvedLayout erstellt werden, um die beste Leistung zu erzielen. So können Sie beispielsweise die Positionierung angeben und CurvedModifiers verwenden. In den meisten Fällen sollte stattdessen curvedText verwendet werden, da es Material-Design-Themen verwendet.

  • curvedComposable: Normale zusammensetzbare Inhalte werden umgebrochen, damit sie mit CurvedLayout verwendet werden können. Wenn curvedComposable mehrere Elemente enthält, werden sie übereinander gezeichnet (wie bei einem Frame). Wenn Sie mehrere Elemente entlang einer Kurve platzieren möchten, schließen Sie jedes Element in curvedComposable ein.

  • curvedRow und curvedColumn: Ähnlich wie bei „Zeile“ und „Spalte“ können curvedRow und curvedColumn in CurvedLayout verschachtelt werden, um Elemente nach Bedarf anzuordnen. Für ein curvedRow können die Richtung des schiefwinkligen Layouts und die radiale Ausrichtung angegeben werden. Für ein curvedColumn können die Winkelausrichtung und die radiale Richtung angegeben werden.

  • CurvedModifier: Alle gekrümmten Komponenten akzeptieren einen Modifiziererparameter, der mit CurvedModifier erstellt werden kann: Hintergrund, Größe, Gewicht und Abstand werden unterstützt.

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

  • SwipeDismissableNavHost: Bietet in der Compose-Hierarchie einen Ort für eine eigenständige Navigation, bei der die Rückwärtsnavigation durch Wischen erfolgt. Inhalte werden in einem SwipeToDismissBox angezeigt, das die aktuelle Navigationsebene angibt. Während einer Wischgeste zum Schließen wird die vorherige Navigationsebene (falls vorhanden) im Hintergrund angezeigt.

  • Weitere Informationen zu den einzelnen Alphaversionen finden Sie in den vorherigen Versionshinweisen.

API-Änderungen

  • CurvedModifier.padding*-Funktionen hinzugefügt Damit wird zusätzlicher Raum um eine gekrümmte Komponente herum angegeben. (I4dbb4)
  • Interne CompositionLocal-Klasse (I42490) entfernt
  • Wir haben als Orientierungshilfe konstante Werte für die Symbolgrößen Button, CompactButton und ToggleButton hinzugefügt. I57cab
  • Fügen Sie AppCard und TitleCard den Parameter „enabled“ hinzu. Jetzt haben sie eine ähnliche API wie androidx.compose.material-Karten. Ist der Parameter auf „false“ gesetzt, ist die Karte nicht anklickbar. (Idc48d, b/228869805)

Fehlerkorrekturen

  • Beim Schieberegler werden die Schaltflächen „Verringern“ und „Erhöhen“ jetzt deaktiviert, wenn die Unter-/Obergrenzen erreicht sind. Außerdem wird „ContentAlpha.disabled“ auf die „iconColor“ angewendet. (I4be9f)
  • Wir haben einen Abstand von 1 dp um den Inhalt der Auswahl hinzugefügt, wenn er mit einem Farbverlauf gezeichnet wird, um ein Ruckeln des Textes beim Wischen zu verhindern. (I0b7b9)
  • Screenshottests für PositionIndicator (I5e8bc) hinzufügen
  • 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 werden losgelassen. Version 1.0.0-alpha21 enthält diese Commits.

Neue Funktionen

  • Es wurden neue Kurvenmodifikatoren hinzugefügt, um den Hintergrund eines gekrümmten Elements anzugeben: CurvedModifier.background, .radialGradientBackground und .angularGradientBackground (I8f392)
  • Es soll möglich sein, den Überlaufmodus für gekrümmten Text (abgeschnitten/Dreipunkt-Elipsis/sichtbar) anzugeben. (I8e7aa)
  • Modifikator CurvedModifier.weight hinzugefügt, ähnlich dem in Compose Dieser Wert kann für untergeordnete Elemente von „curvedRow“ und „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 gekrümmten Elements anzugeben. (I623c7)

API-Änderungen

  • Parameter neu anordnen, damit „background“ in der Wear Compose API immer vor „color“ steht (I43208)
  • Die Parameter „clockwise“ und „insideOut“ wurden entfernt und durch aussagekräftigere Konstanten in neuen Klassen ersetzt. Die Richtung des gekrümmten Layouts kann jetzt LayoutDirection-sensitiv sein und wird übernommen, wenn sie nicht angegeben ist (If0e6a)
  • Wir haben autoCenter: Boolean durch autoCenter: AutoCentringParams ersetzt, um ein API-Problem mit der ScalingLazyColumn zu beheben. (Ia9c90)
  • Wir haben iconTintColor und toggleControlTintColor in der gesamten API in iconColor und toggleControlColor umbenannt (Chip/ToggleChip/Dialog/Schieberegler/Stepper/…). Die Farbe wird jetzt auf den Slot „icon/toggleControl“ angewendet. (Ied238)
  • PageIndicatorStyle-Enum in Wertklasse umschreiben (I2dc72)
  • Wir haben einigen Slots in unseren Composables das Symbol RowScope/ColumnScope/BoxScope hinzugefügt, um Entwicklern zu zeigen, welche Layoutannahmen gelten. So können Entwickler zusätzliche Modifikatoren für einige Slot-Inhalte verwenden und müssen keine zusätzlichen Layoutelemente bereitstellen. Außerdem haben wir einige kleinere Änderungen an den Farben von App- und Titelkarten vorgenommen. timeColor und appColor sind jetzt standardmäßig contentColor. Diese Eigenschaften können bei Bedarf weiterhin einzeln überschrieben werden. (I26b59)
  • Das Objekt SwipeToDismissBoxState.Companion wurde zu einem privaten Objekt (I39e84)
  • Reihenfolge der Parameter für InlineSlider und Stepper korrigieren Eine einfache Änderung, um die API-Richtlinien einzuhalten (I11fec)
  • Wir haben das Energiesparobjekt für SwipeToDismissBoxState entfernt, da es nicht verwendet wurde. (Ifb54e)
  • Wir haben CompactChip aktualisiert, damit es der neuesten UX-Spezifikation entspricht. Der Abstand wurde auf horizontal = 12.dp und vertikal = 0.dp reduziert. Die Schriftart für das Label wurde von „button“ in „caption1“ geändert. Die empfohlene Größe für Symbole beträgt 20 × 20 Pixel, wenn sowohl ein Symbol als auch ein Label vorhanden sind, und 24 × 24 Pixel für einen kompakten Chip mit nur einem Symbol. Bei nur einem Symbol haben wir außerdem darauf geachtet, dass es zentriert ist. (Iea2be)
  • Wir haben ScalingLazyListLayoutInfo einige neue Felder hinzugefügt, damit Entwickler die Höhe der angewendeten contentPadding und autoCenteringPadding sehen können. Diese können für Entwickler nützlich sein, wenn sie Wisch-/Scrollbewegungen berechnen (I7577b).
  • Wir haben Ein-/Ausblendungsübergänge für Dialoge implementiert. Es wurde ein Parameter showDialog hinzugefügt und der Dialog steuert jetzt seine eigene Sichtbarkeit. So können die Intro- und Outro-Animationen des Dialogs ausgeführt werden, wenn der Dialog angezeigt oder ausgeblendet wird. Die Outro-Animation wird nicht ausgeführt, wenn der Nutzer das Dialogfeld durch Wischen zum Schließen verlässt. Außerdem haben wir der vor Kurzem hinzugefügten SwipeToDismissBox-Überladung einen Standardwert für den Status hinzugefügt. (I682a0)
  • Um die Unterstützung von i18n und a11y zu verbessern, haben wir ToggleChip und SplitToggleChip so geändert, dass sie keinen Standardwert mehr für den toggleControl-Slot haben. Außerdem haben wir ToggleChipDefaults geändert, sodass die folgenden Methoden jetzt „ImageVector“ anstelle von „Icon“ zurückgeben. Da sie keine @Composables mehr zurückgeben, beginnen sie jetzt mit einem Kleinbuchstaben. Das gilt für SwitchIcon()->switchIcon(), CheckboxIcon->checkboxIcon() und RadioIcon()->radioIcon(). So können Entwickler ihre eigenen Icon()-Composables mit einem geeigneten contentDescription-Set erstellen. (I5bb5b)
  • SwipeDismissableNavHost wurde ein SwipeDismissableNavHostState-Parameter hinzugefügt. Dadurch wird die Verwendung von Wischen am Bildschirmrand auf Bildschirmen unterstützt, die als Navigationsziele verwendet werden, da SwipeToDismissBoxState jetzt gehoistet und verwendet werden kann, um sowohl SwipeDismissableNavHostState als auch Modifier.edgeSwipeToDismiss auf Bildschirmen zu initialisieren, für die Wischen am Bildschirmrand erforderlich ist. (I819f5, b/228336555)

Fehlerkorrekturen

  • Achten Sie darauf, dass die gebogenen Layouts 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 werden losgelassen. Version 1.0.0-alpha20 enthält diese Commits.

Neue Funktionen

  • Fügen Sie den edgeSwipeToDismiss-Modifikator für SwipeToDismiss hinzu. Hiermit kann swipeToDismiss nur am linken Rand des Darstellungsbereichs aktiv sein. Wird verwendet, wenn die Mitte des Bildschirms horizontale Seitenwechsel verarbeiten muss, z. B. das Scrollen in einer Karte in 2D oder das Wischen horizontal zwischen Seiten.(I3fcec, b/200699800)

API-Änderungen

  • Basisimplementierung von CurvedModifiers. Dies eröffnet Möglichkeiten zur Anpassung gekrümmter Inhalte. Es sind jedoch noch keine CurvedModifiers verfügbar und die Möglichkeit zum Erstellen benutzerdefinierter Modifikatoren wird möglicherweise erst später eingeführt. (I9b8df)
  • Die Dokumentation zu EdgeSwipe-Modifizierern und die Standardwerte wurden aktualisiert, um für mehr Klarheit zu sorgen .(I6d00d)
  • Fügen Sie dem Scaffold den Steckplatz PageIndicator hinzu. Wenn Sie PageIndicator direkt in Scaffold hinzufügen, können Sie 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 die Anforderungen an die Lokalisierung und Barrierefreiheit besser berücksichtigen. Die Verwendung von Standardsymbolen wurde in Demos und Beispielen veranschaulicht. (I7e6fd)
  • End- und Anfangsparameternamen in „TimeText“ durch „Start“ und „End“ ersetzen (Iaac32)
  • Wir haben eine SwipeToDismissBox-Überladung mit einem onDismissed-Parameter hinzugefügt, um die gängige Verwendung zu unterstützen, bei der ein Navigationsereignis ausgelöst wird, wenn die Wischgeste abgeschlossen ist. (I50353, b/226565726)
  • ExperimentalWearMaterialApi-Hinweise zur Verwendung von TimeText entfernt (Ide520)
  • Wir haben die ScalingLazyList/Column-Scope- und Info-Schnittstellen als versiegelt gekennzeichnet, da sie nicht von externen Entwicklern implementiert werden sollen. So können wir ihnen in Zukunft neue Mitglieder hinzufügen, ohne dass es zu Änderungen am Binärcode kommt. (I7d99f)
  • Wir haben der Auswahl eine neue flingBehaviour-Eigenschaft und eine PickerDefaults.flingBehaviour()-Methode hinzugefügt, um das Wischverhalten zu konfigurieren, z. B. die Unterstützung für die Rückwärts-Suche hinzuzufügen. PickerState implementiert jetzt die ScrollableState-Schnittstelle. (Ib89c7)

Fehlerkorrekturen

  • Aktualisieren Sie die Regeln für das Baseline-Profil der Android Runtime (ART) für Wear Compose-Bibliotheken. ART kann Profilregeln auf Geräten nutzen, um einen bestimmten Teil der Anwendung vorab zu kompilieren und so die Leistung der Anwendung zu verbessern. Hinweis: Dies hat keine Auswirkungen auf debuggbare Anwendungen. (Iaa8ef)
  • Dokumentation verbessert (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 werden losgelassen. Version 1.0.0-alpha19 enthält diese Commits.

API-Änderungen

  • CurvedRow wurde in CurvedLayout umbenannt und in einen Bereich mit einer DSL umgewandelt. Mit dieser DSL können komplexere gekrümmte Layouts mit einer Reihe verschachtelter curvedRow und curvedColumn (entsprechend „Zeile“ und „Spalte“ im gekrümmten Layout) angegeben werden. Innerhalb dieser Layoutelemente können drei Elemente verwendet werden: curvedComposable (um @Composable hinzuzufügen), basicCurvedText (gebogener Text der Foundation) und curvedText (gebogener Text für Wear-Material). (Ib776a)
  • Die Seite für die PositionIndicator muss konfigurierbar sein. Die Position des einfachen PositionIndicator kann jetzt auf „End“ (layoutrichtungsabhängig), „OppositeRsb“ (berücksichtigt die Bildschirmdrehung, um sich gegenüber dem physischen RSB zu positionieren) oder auf die absoluten Positionen „Left“ und „Right“ konfiguriert werden. (I2f1f3)
  • Bei SwipeToDismissBox haben wir SwipeDismissTarget.Original in SwipeToDismissValue.Default und SwipeDismissTarget.Dismissal in SwipeToDismissValue.Dismissed umbenannt. Außerdem wurden SwipeToDismissBoxDefaults.BackgroundKey und SwipeToDismissBoxDefaults.ContentKey in SwipeToDismissKeys.Background und SwipeToDismissKeys.Content umbenannt. (I47a36)
  • Wir haben der Auswahl einen schreibgeschützten Modus hinzugefügt. Dieser Modus ist für Bildschirme mit mehreren Auswahlen geeignet, bei denen jeweils nur eine Auswahl bearbeitbar ist. Wenn die Auswahl nur lesbar ist, wird die aktuell ausgewählte Option und ein Label angezeigt, falls eines angegeben wurde. (I879de)
  • SwipeToDismissBoxState wurde umstrukturiert, um den Umfang von ExperimentalWearMaterialApi auf Modifier.swipeable und SwipeableState zu beschränken, die jetzt intern verwendet werden. SwipeToDismissBoxState hat jetzt die Mitglieder currentValue, targetValue, isAnimationRunning und snapTo, um gängige Anwendungsfälle zu unterstützen. Bitte lassen Sie uns wissen, ob weitere Properties verfügbar gemacht werden sollen. Außerdem wurde das Verhalten von SwipeableState korrigiert, wenn der Wischversatz innerhalb eines Rundungsfehlers eines Ankers liegt. (I58302)

Fehlerkorrekturen

  • Der Code wurde vereinfacht und korrigiert, um zu erkennen, ob der Inhalt eines ScalingLazyColumn gescrollt werden kann. So wird entschieden, ob ein Bildlaufbalken angezeigt wird oder nicht. (I7bce0)
  • Ein Fehler bei der Positionshinweisanzeige wurde behoben, der bei Verwendung mit mehreren Status und beim Wechseln zwischen ihnen auftrat (I320b5)
  • Wir haben die Typografie/Schriftarten des Standard-Compose for Wear OS-Designs an unsere aktuellen UX-Richtlinien angepasst. Die Werte für „display1“ (40.sp) und „display2“ (34.sp) sind jetzt kleiner als zuvor. Außerdem wurden verschiedene kleinere Änderungen an Zeilenhöhe und Zeilenabstand vorgenommen. (Ie3077)
  • Wir haben SwipeToDismissBox einen Widerstand hinzugefügt, damit die Bewegung nur beim Wischen zum Schließen erfolgt und nicht in die entgegengesetzte Richtung. (Ifdfb9)
  • Wir haben einige der Standardparameterwerte für die CircularProgressIndicator-Funktionen geändert, damit sie den UX-Richtlinien für Wear OS-Material Design entsprechen. Bei der Spinner-/Unbestimmt-Version wurden die Größe (40 > 24 dp), die Farbe des Indikators (primary > onBackground), die Transparenz der Farbe des Tracks (30 % > 10%) und die Strichbreite (4 > 3 dp) aktualisiert. Bei der Fortschritts-/Determinismusversion wurde die Transparenz der trackColor-Eigenschaft (30%-> 10%) aktualisiert. (I659cc)
  • Wir haben die Standardskalierungsparameter der ScalingLazyColumn gemäß den neuesten UX-Spezifikationen für Wear Material Design aktualisiert. Visuell bedeutet das, dass Listenelemente näher an der Mitte der Liste skaliert werden, aber am Rand der Liste weniger 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 werden losgelassen. Version 1.0.0-alpha18 enthält diese Commits.

API-Änderungen

  • Mehrere Verbesserungen bei „PositionIndicator“: „ShowResult“ wurde in „PositionIndicatorVisibility“ umbenannt. Einige Leistungsverbesserungen, um unnötige Neuberechnungen zu vermeiden (Iaed9d)
  • Die empfohlene Färbung für die SplitToggleChip wurde aktualisiert. SplitToggleChip hat jetzt einen einfarbigen Hintergrund, wenn er aktiviert oder deaktiviert ist. Die Farbe des ToggleControl 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 vereinfacht und die Option „splitBackgroundOverlayColor“ entfernt (I7e66e).
  • Wir haben der ScalingLazyListItemInfo die unadjustedSize hinzugefügt, da es aufgrund der Genauigkeit von Gleitkommarechnungen nicht sicher ist, die ursprüngliche Artikelgröße anhand der skalierten Größe und des Skalierungsfaktors zu berechnen. (I54657, b/221079441)
  • Fügen Sie HorizontalPageIndicator hinzu. Er steht für die Gesamtzahl der Seiten und eine ausgewählte Seite. Kann je nach Form des Geräts linear oder gebogen sein. Außerdem wird eine benutzerdefinierte Form für den Indikator unterstützt, die festlegt, wie jeder Indikator visuell dargestellt wird. (Iac898)
  • Wir haben PickerState aktualisiert, damit die Anzahl der Optionen aktualisiert werden kann. Dies unterstützt Anwendungsfälle wie eine DatePicker, bei der 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)
  • Blenden Sie das PositionIndicator aus, wenn eine Bildlaufleiste vorhanden ist, aber nicht gescrollt werden kann. (Id0a7f)
  • Zur besseren Einheitlichkeit mit Scaffold wird in unserer Vollbild-Dialogkomponente jetzt ein PositionIndicator und ein Vignette angezeigt. Außerdem wird jetzt ScalingLazyColumn anstelle von Column verwendet. Das bedeutet, dass sich der Dialoginhalt jetzt in ScalingLazyListScope befindet und in der Regel von „item { /* content */ }“ umschlossen werden muss. „Dialog“ unterstützt den Parameter „verticalArrangement“ entsprechend. (Idea13)
  • Wir haben den Namen der Eigenschaft „toggleIcon“ von ToggleChip und SplitToggleChip in „toggleControl“ geändert, um sie besser an Material Design anzupassen und Designern und Entwicklern die Navigation in der API zu erleichtern. (If5921, b/220129803)
  • Der Typologie der Wear OS-Designthemen wurde der neue Eintrag „caption3“ hinzugefügt. „caption3“ ist eine kleine Schriftart, die für besonders lange Texte wie rechtliche Hinweise verwendet wird. (I74b13, b/220128356)

Fehlerkorrekturen

  • Stoppen Sie die Snap-Animation, wenn wir dort sind. (Idb69d)
  • Änderungen in PositionIndicator animieren (I94cb9)
  • Aufgrund von UI/UX-Feedback haben wir die automatische Zentrierung von ScalingLazyColumn so geändert, dass nur so viel Platz vorhanden ist, dass die Elemente mit dem Index ScalingLazyListState.initialCenterItemIndex oder höher vollständig in die Mitte des Ansichtsbereichs gescrollt werden können. So können Entwickler ein oder zwei Elemente um das ursprünglich in der Mitte platzierte Element herum platzieren, die nicht in die Mitte gescrollt werden können. Das bedeutet, dass ein automatisch zentrierter ScalingLazyColumn nicht über den initialCenterItemIndex/initialCenterItemScrollOffset scrollen kann (I22ee2).
  • Wir haben eine Demo für eine Datumsauswahl hinzugefügt und einen Fehler in PickerState behoben, bei dem die initiallySelectedOption erst angewendet wurde, nachdem die Auswahl angezeigt wurde. (Id0d7e)
  • Um das Zuschneiden breiterer ScalingLazyColumn-Elemente auf runden Bildschirmen zu reduzieren, haben wir den standardmäßigen horizontalen Inhaltsabstand von 8 auf 10 dp erhöht. (I0d609)
  • Achten Sie darauf, dass das PositionIndicator beim Scrollen 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 werden losgelassen. Version 1.0.0-alpha17 enthält diese Commits.

Neue Funktionen

  • Wir haben die Unterstützung für Snaps hinzugefügt, die mit ScalingLazyColumn verwendet werden können. Legen Sie flingBehavior = ScalingLazyColumnDefaults.flingWithSnapBehavior(state) fest, um die Snap-Unterstützung zu aktivieren. (I068d3, b/217377069)
  • Wir haben Demos für die Auswahl hinzugefügt, mit denen eine Uhrzeit im 24- oder 12-Stunden-Format ausgewählt werden kann. (Ie5552)

API-Änderungen

  • Problem mit TimeText benutzerdefinierten Schriftarten und Stilen auf quadratischen Geräten behoben (Iea76e)
  • ScalingLazyListLayoutInfo hat jetzt die reverseLayout-, viewportSize- und Ausrichtungseigenschaften, die mit denen von LazyListLayoutInfo übereinstimmen (I4f258, b/217917020)
  • ScalingLazyColumn hat jetzt eine userScrollEnabled-Property, die mit der von LazyList übereinstimmt (I164d0, b/217912513)
  • Auswahlfelder haben jetzt standardmäßig oben und unten einen Farbverlauf (Iab92a)

Fehlerkorrekturen

  • Wir haben ScalingLazyColumn so geändert, dass es nicht mehr den gesamten Platz in seinem übergeordneten Element füllt. Stattdessen wird die Größe anhand der Größe des Inhalts ermittelt. Das entspricht dem Verhalten von LazyColumn. Wenn du das alte Verhalten wiederherstellen möchtest, übergebe 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 werden losgelassen. Version 1.0.0-alpha16 enthält diese Commits.

Neue Funktionen

  • Fügen Sie CircularProgressIndicator hinzu. Fortschrittsanzeigen geben die Dauer eines Prozesses oder eine unbestimmte Wartezeit an. Unterstützt eine Lücke (Aussparung) für Zeittext oder andere Komponenten, wenn im Vollbildmodus verwendet. (Iab8da)

API-Änderungen

  • Auswahlfelder haben jetzt einen Parameter flingBehavior. Mit dem Standardwert werden sie beim Scrollen oder Wischen auf die nächstgelegene Option ausgerichtet. (I09000)
  • Zusätzliche Ganzzahl-API für InlineSlider und Stepper (I1b5d6)

Fehlerkorrekturen

  • Der Standardwert für „initialCenterItemIndex“ für die ScalingLazyListState wurde von 0 auf 1 geändert. Das bedeutet, dass das zweite Listenelement (Index = 1) bei der Initialisierung in der Mitte des Viewports platziert wird, sofern es nicht bei der Statuserstellung mit ScalingLazyListState.rememberScalingLazyListState(initialCenterItemIndex =) überschrieben wird. Das erste Element (Index = 0) wird davor platziert. So wird ein besserer visueller Standardeffekt erzielt, da der Großteil des Darstellungsbereichs mit Listenelementen gefüllt wird. (I0c623, b/217344252)
  • Wir haben den ScalingLazyColumn-Standardwert extraPadding von 10% auf 5 % reduziert, damit es genügend Listenelemente zum Zeichnen gibt, auch wenn einige davon verkleinert werden. So werden zusätzliche Listenelemente vermieden, die möglicherweise nicht im Darstellungsbereich angezeigt werden. Wenn nicht standardmäßige scalingParams verwendet werden (z. B. eine extremere Skalierung), kann der Entwickler mit viewportVerticalOffsetResolver zusätzliches Padding anpassen. (I76be4)
  • Ein Problem mit dem Zeittext auf mehreren Zeilen auf quadratischen Geräten wurde behoben (Ibd3fb)
  • Wir haben ScalingLazyColumn so geändert, dass es nicht mehr den gesamten Platz in seinem übergeordneten Element füllt. Stattdessen wird die Größe anhand der Größe des Inhalts ermittelt. Das entspricht dem Verhalten von LazyColumn. Wenn du das alte Verhalten wiederherstellen möchtest, übergebe Modifier.fillMaxSize() an ScalingLazyColumn. HINWEIS: Diese Änderung ist unvollständig und wird in einer Folgeänderung im nächsten Alpha-Release behoben. (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 werden losgelassen. Version 1.0.0-alpha15 enthält diese Commits.

API-Änderungen

  • Der ScalingLazyColumn wurde die neue Property autoCentering hinzugefügt. Wenn „true“ festgelegt ist (Standardeinstellung), können alle Elemente, einschließlich des ersten und des letzten, so gescrollt werden, dass sie in der Mitte des Listen-Viewports sichtbar sind. Wenn Sie die automatische Zentrierung verwenden, sollten Sie den vertikalen Inhaltsabstand auf 0,0 dp festlegen. Wenn sowohl die automatische Zentrierung als auch vertikale Textabstände vorhanden sind, wird vor dem ersten und nach dem letzten Listenelement zusätzlicher Platz freigegeben, sodass sie noch weiter gescrollt werden können. (I2a282, b/214922490)
  • Wir haben die Komponente Dialog hinzugefügt, mit der jedes Composed-Element ein Vollbilddialogfeld auslösen kann, das über anderen Inhalten angezeigt wird. Wenn das Dialogfeld angezeigt wird, kann es durch Wischen geschlossen werden. Während des Wischens werden die Inhalte des übergeordneten Elements im Hintergrund angezeigt. Der Dialoginhalt sollte Alert oder Confirmation sein (umbenannt aus den früheren Komponenten AlertDialog und ConfirmationDialog). Alert, Confirmation und Dialog befinden sich alle im androidx.wear.compose.material.dialog-Paket. „Benachrichtigung“ und „Bestätigung“ können als Navigationsziele verwendet werden. Außerdem wurde ColumnScope nach Bedarf den Parametern für Benachrichtigungen und Bestätigungen hinzugefügt. (Ia9014)
  • Wir haben onSurfaceVariant2 aus den Material-Designfarben für Compose für Wear OS entfernt und die Verwendungen in der Bibliothek 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 eines PickerState angegeben werden. (I92bdf)
  • Es ist jetzt möglich, das Wischverhalten der ScalingLazyColumn anzupassen. (I1ad2e, b/208842968)
  • Wir haben NavController.currentBackStackEntryAsState() der Wear.Compose.Navigation-Mediathek hinzugefügt. (If9028, b/212739653)
  • Modifier.onRotaryScrollEvent() und Modifier.onPreRotaryScrollEvent() für Wear-Geräte mit einer drehbaren seitlichen Taste 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 werden losgelassen. 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 das erste Listenelement sowie den Offset festlegen können.

    Im Rahmen dieser Änderung haben wir auch die ScalingLazyList so geändert, dass sie sich nicht mehr am Anfang des Darstellungsbereichs, sondern an der Mitte des Darstellungsbereichs der ScalingLazyList orientiert.

    Der ScalingLazyList-Property wurde die neue Property anchorType: ScalingLazyListAnchorType = ScalingLazyListAnchorType.ItemCenter hinzugefügt, mit der festgelegt werden kann, ob der Mittelpunkt (ScalingLazyListAnchorType.ItemCenter) oder die Edge (ScalingLazyListAnchorType.ItemStart) an der Mittellinie des Darstellungsbereichs ausgerichtet werden soll.

    Daher haben sich ScalingLazyListItemInfo.offset und ScalingLazyListItemInfo.adjustedOffset geändert und spiegeln jetzt den Versatz des Artikels sowohl in Bezug auf die Position des Listenelements als auch auf die anchorType der Liste wider. Bei einem ScalingLazyColumn mit einer anchorType von ItemCenter und einem Listenelement, das mittig auf der Mittellinie des Darstellungsbereichs positioniert ist, würde der Versatz 0 betragen.

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

  • Wir haben SwipeDismissableNavHost einen Handler für die Schaltfläche „Zurück“ hinzugefügt, damit Sie durch Drücken der Rücktaste zur vorherigen Ebene in der Navigationshierarchie gelangen. (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 werden losgelassen. Version 1.0.0-alpha13 enthält diese Commits.

API-Änderungen

  • Wir haben RangeIcons intern gemacht (interne Verweise auf InlineSlider und Stepper). (I927ec)

Fehlerkorrekturen

  • Ein Problem wurde behoben, bei dem SwipeDismissableNavHost der Compose-Hierarchie ein Ziel hinzufügte, bevor es den Lebenszyklusstatus CREATED erreicht hatte. Dies führte zu einer IllegalStateException. Diese Korrektur war eine Voraussetzung für die Aktualisierung der Abhängigkeit von navigation-compose auf 2.4.0-beta02 und darüber hinaus. (I40a2b, b/207328687)

  • Es wurde eine enum-Klasse „Drawables“ hinzugefügt, um in der Wear Compose-Bibliothek Zeichnen-Ressourcen abzurufen. Die Reflexion ist also nicht mehr erforderlich. Damit wird ein Fehler behoben, bei dem Bibliotheks-Zeichnelemente entfernt wurden, wenn minifyEnabled=true oder shrinkResources=true verwendet wurde. (Ib2a98)

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

  • In der Wear OS-Eingabeleiste wurden Beispiele für SwipeDismissableNavHost 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 werden losgelassen. Version 1.0.0-alpha12 enthält diese Commits.

Neue Funktionen

  • Wir haben die Komponente „Steuerfeld“ hinzugefügt, mit der Nutzer eine Auswahl aus einem Wertebereich treffen können. Der Schieberegler ist ein Vollbildkontrollelement mit Schaltflächen zum Erhöhen und Verringern oben und unten sowie einem Steckplatz in der Mitte, in den entweder ein Chip oder Text eingefügt werden kann. Die Schaltflächensymbole können bei Bedarf angepasst werden. (I625fe)

  • Wir haben zwei neue Composeables zum Anzeigen von Dialogen 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 Auswahlmöglichkeiten oder b) vertikal gestapelte Chips oder Toggle-Chips für flexiblere Auswahlmöglichkeiten an. ConfirmationDialog zeigt eine Bestätigung mit einem Zeitlimit an. Dieses einfache Dialogfeld hat Felder 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 werden losgelassen. 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 in beiden Richtungen „unendlich“ wiederholt, um den Eindruck eines von der Seite gesehenen rotierenden Zylinders zu erwecken. In späteren Releases werden zwei Funktionen hinzugefügt: das Anspringen auf einen Wert nach Wischen/Ziehen sowie eine Funktion für PickerState, um den aktuellen Wert festzulegen oder zu scrollen. (I6461b)

API-Änderungen

  • Es wurde ein ScalingLazyItemScope und einige neue Modifikatoren (fillParentMaxSize/fillParentMaxWidth/fillParentMaxHeight) hinzugefügt, damit Listenelemente anhand der Größe des übergeordneten Containers skaliert werden können. Elemente können so eingestellt werden, dass sie die gesamte oder einen Teil der Größe des übergeordneten Elements einnehmen. Dadurch werden Funktionen freigeschaltet, die bereits in LazyRow/Column (I4612f) verfügbar sind.
  • Unterstützung für ScalingLazyColumn hinzugefügt, damit Elemente einen Schlüssel haben können. Außerdem wurden praktische Methoden hinzugefügt, mit denen Elemente aus Arrays und Listen hinzugefügt werden können. (Ic1f89)

Fehlerkorrekturen

  • Weitere Beispiele für „ZeitText“ (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 werden losgelassen. Version 1.0.0-alpha10 enthält diese Commits.

Neue Funktionen

  • Inline-Schieberegler für Wear Compose hinzugefügt Mit InlineSlider können Nutzer aus einem Wertebereich auswählen. Der Auswahlbereich wird als Balken zwischen dem Mindest- und Höchstwert des Bereichs dargestellt, aus dem Nutzer einen einzelnen Wert auswählen können. (If0148)

  • Sehen Sie sich das neue Compose for WearOS Codelab an.

API-Änderungen

  • Der Makro-Benchmark hat jetzt eine minSdkVersion von 23. (If2655)

Fehlerkorrekturen

  • Aktualisierung der Übergangsbehandlung in SwipeDismissableNavHost in einem SideEffect (I04994, b/202863359)
  • Aktualisierung der Übergangsbehandlung 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 werden losgelassen. Version 1.0.0-alpha09 enthält diese Commits.

Neue Funktionen

  • Wir haben die Entwicklervorschau von Compose auf Wear OS veröffentlicht. In unserem Blogpost finden Sie Informationen zu den wichtigsten Compose-Elementen und Links zu weiteren Ressourcen, mit denen Sie sie verwenden können.

API-Änderungen

  • Entwickler können jetzt alle Farben im Farbschema des Wear OS-Material Design-Designs anpassen. (I4759b, b/199754668)

Fehlerkorrekturen

  • Beispiele für SwipeToDismissBox hinzugefügt, die den Status beibehalten (Ibaffe)
  • Es wurden Links zu den Anleitungen auf developer.android.com aus KDocs für „CurvedText“, „TimeText“ und „SwipeToDismissBox“ hinzugefügt. (I399d4)
  • SwipeDismissableNavHost wird jetzt ausgelöst, wenn kein aktuelles Ziel vorhanden ist. Dies bedeutet, dass der NavGraph nicht mit der Dienstprogrammfunktion „wear.compose.navigation.composable“ erstellt wurde. (I91403)
  • Zusätzliche Dokumentation und Beispiele für die Verwendung von Zeitquellen in „TimeText“ hinzugefügt (I4f6f0)

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 werden losgelassen. Version 1.0.0-alpha08 enthält diese Commits.

API-Änderungen

  • Die body-Attribute „AppCard“ und „TitleCard“ wurden in „content“ umbenannt und ans Ende der Attributliste verschoben, damit sie als abschließendes Lambda angegeben werden können. Außerdem wurde bodyColor in contentColor umbenannt, um mit den neuen Steckplatznamen übereinzustimmen. (I57e78)

Fehlerkorrekturen

  • Es wurden Links zu Entwicklerhandbüchern von KDocs für Schaltflächen, Karten, Chips, Themen, Positionsanzeigen und skalierende Lazy Column-Komponenten hinzugefügt. (I22428)
  • Problem behoben, bei dem das WearOS-SwipeToDismissBox manchmal Wischbewegungen nicht verarbeitete. (I9387e)
  • Es wurden Beispiele für Schaltflächen, kompakte Schaltflächen, Chips, kompakte Chips, App-Karten, Titelkarten, Ein-/Aus-Schaltflächen, Ein-/Aus-Chips und Split-Ein-/Aus-Chips hinzugefügt (Iddc15)
  • Es wurden Mikrobenchmark-Leistungstests für „Card“, „Chip“, „ToggleChip“, „TimeText“ und „ScalingLazyColumn“ hinzugefügt. (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 werden losgelassen. Version 1.0.0-alpha07 enthält diese Commits.

Neue Funktionen

  • Die Komponente „CurvedText“ wurde in Material hinzugefügt. Mit dieser Komponente können Entwickler ganz einfach gekrümmten Text schreiben, der der Krümmung eines Kreises folgt (normalerweise am Rand eines kreisförmigen Bildschirms). (I19593)

API-Änderungen

  • Tests für „TimeText“ (Idfead) hinzugefügt
  • ArcPaddingValues in eine Benutzeroberfläche umwandeln (Iecd4c)
  • Animation für SwipeToDismissBox hinzugefügt (I9ad1b)
  • Der SwipeToDismissBox API wurde der Parameter „hasBackground“ hinzugefügt, damit die Wischgeste deaktiviert werden kann, wenn keine Hintergrundinhalte angezeigt werden sollen. (I313d8)
  • Für rememberNavController() wird jetzt ein optionaler Satz von Navigator-Instanzen verwendet, der der zurückgegebenen NavController hinzugefügt wird, um optionale Navigationselemente wie die aus dem Material zur Navigation für Begleiter besser zu unterstützen. (I4619e)
  • Verweisen Sie auf „NamedNavArgument“ aus „navigation-common“ und entfernen Sie die Kopie aus „wear.compose.navigation“. (I43af6)

Fehlerkorrekturen

  • Behoben: Unzuverlässige Ergebnisse bei CurvedRow-Tests auf kleineren Geräten (If7941)
  • Behoben wurde ein mögliches Flimmern bei „CurvedRow“, wenn sich die Inhalte aktualisieren. Außerdem wird jetzt sichergestellt, dass die gekrümmte Zeile neu vermessen wird (Ie4e06).
  • ChipDefaults.gradientBackgroundChipColors() wurde entsprechend den Änderungen an den UX-Spezifikationen aktualisiert. Der Farbverlauf beginnt jetzt mit MaterialTheme.colors.primary mit einem Alphawert von 32,5% und endet mit MaterialTheme.colors.surface mit einem Alphawert von 0% auf einem Hintergrund von MaterialTheme.colors.surface mit einem Alphawert von 75 %. (Id1548)
  • Wir haben die Farben für ToggleChips im ausgewählten Zustand aktualisiert, damit sie den neuesten UX-Spezifikationen für Wear Material Design entsprechen. Ausgewählte ToggleChips haben jetzt einen Farbverlauf von MaterialTheme.color.surface mit 0% Alpha oben links zu MaterialTheme.color.primary mit 32% Alpha unten rechts über einem Hintergrund von MaterialTheme.color.surface mit 75% Alpha. Das führt zu einem subtileren Unterschied zwischen aktiviert und deaktiviert für den ToggleChip. (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 werden losgelassen. Version 1.0.0-alpha06 enthält diese Commits.

Neue Funktionen

  • Wir haben Scaffold als App-Kompositelement der obersten Ebene hinzugefügt. Es bietet eine Struktur für die Positionierung von PositionIndicators (z. B. Scroll- oder Lautstärkesymbole), einen Bereich oben auf dem Bildschirm zum Anzeigen der Uhrzeit und des App-Status sowie eine Vignette, mit der der obere und untere Bildschirmrand für scrollbare Inhalte unscharf gemacht werden kann. Im Hauptbereich des Scaffolds werden die Anwendungsinhalte platziert. (I5e0bf)
  • Implementierung von Zeittext für Wear Compose hinzugefügt (I5654c)

Wear Compose Navigation Library

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

  • Diese erste Version bietet Folgendes:

    • Eine SwipeDismissableNavHost-Komposition, die einen Navigationsgraphen enthält und die Rückwärtsnavigation über Wischgesten ermöglicht
    • NavGraphBuilder.composable-Erweiterung zum Erstellen von Navigationsdiagrammen
    • rememberSwipeDismissableNavController(), um den Status des Hoisting zuzulassen
  • Beispiel für die Verwendung, 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")
            }
        }
    }
    
  • Die Wear Compose-Navigation ist als separate Bibliothek verpackt, damit einfache Wear Compose-Anwendungen, die ihre eigene Navigation implementieren, nicht von der AndroidX Navigation-Bibliothek abhängig sind.

API-Änderungen

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

Fehlerkorrekturen

  • Die CompactChip-Dokumentation wurde aktualisiert, um zu beschreiben, was passiert, wenn weder ein Symbol noch ein Label angegeben wird. (I4ba88)
  • Wir haben einige Anpassungen an den Wear-Kartenkomponenten vorgenommen. (I6b3d0)
    1. Der Abstand zwischen Titel und Text auf Titelkarten wurde von 8 dp auf 2 dp reduziert.
    2. Die Schriftart der Überschrift der Titelkarte wurde von „body“ in „title3“ geändert.
    3. Der Farbverlauf des Kartenhintergrunds wurde geändert, damit der Hintergrund dunkler erscheint.

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 werden freigegeben. Version 1.0.0-alpha05 enthält diese Commits.

API-Änderungen

  • ArcPaddingValues als „@Stable“ kennzeichnen (I57deb)
  • 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 in Chip und ToggleChip verringert, um sie an die aktualisierten 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 werden freigegeben. Version 1.0.0-alpha04 enthält diese Commits.

Neue Funktionen

  • Es wurde eine SwipeToDismissBox und ein wischbarer Modifier hinzugefügt, mit denen eine Wischgeste von links nach rechts unterstützt werden kann. Diese Schaltfläche ist unabhängig von Navigationskomponenten und wird voraussichtlich verwendet, um einen Bildschirm zu verlassen und zu einem anderen zu wechseln. Integrationstests für die Demo „Wischen zum Schließen“ hinzugefügt. (I7bbaa)
  • Wir haben der Klasse „ScalingLazyColumnState“ die Schnittstellen „ScalingLazyColumnItemInfo“ und „ScalingLazyColumnLayoutInfo“ hinzugefügt, damit Entwickler die tatsächlichen Positionen und Größen der Elemente in der ScalingLazyColumn nach der Skalierung kennen. Außerdem wurde ein Fehler bei der Berechnung der Skalierung behoben, wenn der Inhaltsabstand „oben“ auf die ScalingLazyColumn angewendet wird. (I27c07)

API-Änderungen

  • Fügen Sie die Klasse „CurvedTextStyle“ hinzu, um Optionen für den gebogenen Textstil anzugeben. Ähnlich wie „TextStyle“, unterstützt aber nur „color“, „fontSize“ und „background“. In Zukunft werden weitere Stiloptionen hinzugefügt. (I96ac3)
  • Wir haben der Klasse „ScalingLazyColumnState“ die Schnittstellen „ScalingLazyColumnItemInfo“ und „ScalingLazyColumnLayoutInfo“ hinzugefügt, damit Entwickler die tatsächlichen Positionen und Größen der Elemente in der ScalingLazyColumn nach der Skalierung kennen. Außerdem wurde ein Fehler bei der Berechnung der Skalierung behoben, wenn auf die ScalingLazyColumn ein Inhaltsabstand „oben“ angewendet wird. (I27c07)
  • @ExperimentalWearMaterialApi wurde der SwipeDismissTarget-Enumeration hinzugefügt, die Teil der SwipeToDismissBox API ist. (I48b5e)

Fehlerkorrekturen

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

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 werden freigegeben. Version 1.0.0-alpha03 enthält diese Commits.

API-Änderungen

  • Die Komponente „CurvedText“ wurde hinzugefügt, mit der Entwickler ganz einfach Text schreiben können, der der Krümmung eines Kreises folgt (normalerweise am Rand eines kreisförmigen Bildschirms) (Id1267)
  • Wir haben CardDefaults.imageBackgroundPainter() in CardDefaults.imageWithScrimBackgroundPainter() umbenannt, um deutlich zu machen, dass über dem Hintergrundbild ein Scrim gezeichnet wird. (I53206)
  • Die Komponente „ScalingLazyColumn“ wurde hinzugefügt. Sie bietet eine Listenkomponente für Wear OS-Material, die eine Fischaugenansicht bietet, bei der der Listeninhalt in Richtung zum Rand der Komponente hin kleiner und transparenter wird. (I7070c)

Fehlerkorrekturen

  • Wir haben die Standardfarbe des Inhalts „appName“ in der App-Karte aufgrund einer Aktualisierung der UX-Spezifikation geändert. Die Standardfarbe für den appName ist jetzt MaterialTheme.colors.onSurfaceVariant. Außerdem wurde eine fehlende Parameterbeschreibung für den Titel-Slot 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 werden freigegeben. Version 1.0.0-alpha02 enthält diese Commits.

Neue Funktionen

  • Die neue Klasse „CurvedRow“ wurde hinzugefügt, um Elemente in einem Bogen anzuordnen (I29941)
  • Es wurde ein neuer Kartentyp für die Verwendung in Anwendungen hinzugefügt (TitleCard). Außerdem wird jetzt unterstützt, dass Karten einen Bildhintergrund haben, um ihren Inhalt hervorzuheben (I53b0f).

API-Änderungen

  • Unterstützung für die radiale Ausrichtung für CurvedRow hinzufügen (ähnlich der vertikalen Ausrichtung in einer Zeile) (Id9de5)
  • Neue Klasse „CurvedRow“ zum Anordnen von Composeables in einem Bogen hinzufügen (I29941)
  • Es wurde ein neuer Kartentyp für die Verwendung in Anwendungen hinzugefügt (TitleCard). Außerdem wird jetzt unterstützt, dass Karten einen Bildhintergrund haben, um ihren Inhalt hervorzuheben (I53b0f).
  • ToggleChipDefaults wurden Ein-/Aus-Symbole (Kästchen, Schalter und Optionsfelder) hinzugefügt, damit Entwickler ToggleChips und SplitToggleChips leichter konfigurieren können (I7b639)
  • Die Abstände am Anfang und Ende von Chips wurden aktualisiert, sodass sie jetzt immer 14 dp betragen, unabhängig davon, ob der Chip ein Symbol enthält oder nicht. Bisher betrugen sie 12 dp, wenn ein Symbol vorhanden war, und 14 dp, wenn nicht. (I34c86)

Fehlerkorrekturen

  • Tests für CurvedRow (I93cdb) hinzufügen
  • Verknüpfung von Wear Compose-Abhängigkeiten mit Compose 1.0.0-rc01 (Ie6bc9)
  • Die Verarbeitung von Hintergrundbildern in Karten und Chips wurde geändert, sodass das Bild zugeschnitten und nicht gedehnt wird, um die Bildproportionen beizubehalten. (I29b41)
  • Es wurden weitere Demos und Integrationstests für Schaltflächen und Ein-/Aus-Schaltflächen 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 werden freigegeben. Version 1.0.0-alpha01 enthält diese Commits.

Neue Funktionen

Wear Compose ist eine Kotlin-basierte Compose-Bibliothek, die Wear Material Design unterstützt, eine Erweiterung von Material Design für WearOS-Wearables. Diese erste Alphaversion enthält erste funktionale Implementierungen der folgenden Funktionen:

  • Material-Design: Hiermit werden die Farben, die Typografie und die Formen für alle Komponenten aus dieser Bibliothek einheitlich konfiguriert.
  • Chip, CompactChip: Chips sind oval und es gibt Varianten für Symbol-, Label- und sekundäre Labelinhalte.
  • – ToggleChip, SplitToggleChip: Eine spezielle Art von Chip mit einem Steckplatz für ein Ein-/Aus-Symbol mit zwei Status, z. B. ein Optionsfeld oder Kästchen. Außerdem hat der SplitToggleChip zwei anklickbare Bereiche, einen anklickbaren und einen auswählbaren.
  • Button, CompactButton: Schaltflächen sind kreisförmig und haben einen einzelnen Inhaltsspalt für ein Symbol oder einen minimalen Text (maximal 3 Zeichen).
  • ToggleButton: Eine Schaltfläche, mit der eine Aktion aktiviert oder deaktiviert wird, mit einem einzigen Slot für ein Symbol oder einen minimalen Text (maximal 3 Zeichen).
  • Karte, App-Karte: Rechteckige Form mit abgerundeten Ecken, mit Slots für Inhalte wie App-Symbol, Uhrzeit, Titel und Text.

In zukünftigen Releases wird das Widget-Set um Wear OS-Material Design-Auswahlen, Schieberegler, Listen, Seitenindikatoren, Dialogfelder, Scroll- und Bildlaufindikatoren, Toasts und mehr erweitert.

Außerdem werden weitere Wearables-spezifische Funktionen wie gekrümmte Layouts und Text unterstützt. Außerdem gibt es ein Scaffolding, mit dem Entwickler Wearables-Apps/-Overlays ganz einfach erstellen können.

Wear Compose Material basiert auf denselben Prinzipien wie Compose Material, ist aber auf Wearables ausgerichtet. Die Wear Compose Material-Bibliothek sollte anstelle der Compose Material-Bibliothek verwendet werden, wenn Sie eine App für ein Wearable entwickeln.

Die beiden „Material“-Bibliotheken sollten als sich gegenseitig ausschließend betrachtet und nicht in derselben App verwendet werden. Wenn Entwickler die Compose Material Library in ihre Abhängigkeiten aufnehmen, bedeutet das entweder, dass a) in der Wear Compose Material Library Komponenten fehlen. Bitte teilen Sie uns mit, was Sie benötigen, oder b) Sie verwenden eine Komponente, die wir für die Verwendung auf einem Wearable nicht empfehlen.