Wear Compose
| Letzte Aktualisierung | Stabile Version | Releasekandidat | Betarelease | Alpha-Release |
|---|---|---|---|---|
| 22. Oktober 2025 | 1.5.4 | - | - | 1.6.0-alpha04 |
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 benötigten Artefakte hinzu:
Cool
dependencies { implementation "androidx.wear.compose:compose-foundation:1.5.4" // For Wear Material Design UX guidelines and specifications implementation "androidx.wear.compose:compose-material:1.5.4" // For integration between Wear Compose and Androidx Navigation libraries implementation "androidx.wear.compose:compose-navigation:1.5.4" // For Wear preview annotations implementation("androidx.wear.compose:compose-ui-tooling:1.5.4") // 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.5.4") // For Wear Material Design UX guidelines and specifications implementation("androidx.wear.compose:compose-material:1.5.4") // For integration between Wear Compose and Androidx Navigation libraries implementation("androidx.wear.compose:compose-navigation:1.5.4") // For Wear preview annotations implementation("androidx.wear.compose:compose-ui-tooling:1.5.4") // 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. Lassen Sie es uns wissen, wenn Sie neue Probleme entdecken oder Ideen zur Verbesserung dieser Bibliothek haben. Sehen Sie sich die vorhandenen Probleme in dieser Bibliothek an, bevor Sie ein neues erstellen. Sie können für ein vorhandenes Problem stimmen, indem Sie auf die Schaltfläche mit dem Stern klicken.
Weitere Informationen finden Sie in der Dokumentation zum Issue Tracker.
Wear Compose-Version 1.6
Version 1.6.0-alpha04
22. Oktober 2025
androidx.wear.compose:compose-*:1.6.0-alpha04 ist veröffentlicht. Version 1.6.0-alpha04 enthält diese Commits.
API-Änderungen
- Implementieren von
reverseLayoutfürTransformingLazyColumn(I19f9e, b/352513793) ConfirmationDialogDefaults.VariantFailureIconfür die Verwendung inFailureConfirmationDialoghinzugefügt. Dieses neue generische Fehlersymbol ist in einigen Fällen möglicherweise besser alsConfirmationDialogDefaults.FailureIcon, das eine unterbrochene Verbindung zum Smartphone anzeigt. (Ifc851, b/443115305)
Fehlerkorrekturen
- Die Leistung der Auswahl wurde durch Refactoring der Verwendung von
LaunchedEffectverbessert. (I94519, b/418192973) - Ein Fehler in
SwipeDismissableNavHostauf API36+ wurde behoben, bei dem die Animation für die intelligente „Zurück“-Geste unterbrochen und neu gestartet wurde, wenn die Schaltfläche „Zurück“ gedrückt wurde. Bei der Implementierung wird jetztSeakableTransitionState.animateToanstelle von „Animatable“ verwendet, was einen leichten Leistungsvorteil bietet. (I2241f, b/428156670) - Ein Fehler wurde behoben, der die Reihenfolge der Bedienungshilfen-Ankündigungen in
AlertDialogbetraf. Die Bestätigungsschaltfläche wurde als „Schaltfläche“ angekündigt. „Bestätigen“ statt „Bestätigen“. Schaltfläche“. (Ic2381, b/429378202) - Die Sichtbarkeit der
TimePicker-Nummer auf kleinen Bildschirmen wurde verbessert. (I68386, b/447625365) - Der Fork von „Lazy Layout“ wurde aus Wear Compose Foundation entfernt. Das bedeutet, dass
TransformingLazyColumnjetzt die Lazy Layout-Implementierung von Compose Foundation verwendet, einschließlich Prefetching, und in den meisten Fällen von einer Leistungsverbesserung bei Frame-Timings profitiert. (Idd743, b/445911630)
Version 1.6.0-alpha03
8. Oktober 2025
androidx.wear.compose:compose-*:1.6.0-alpha03 ist veröffentlicht. Version 1.6.0-alpha03 enthält diese Commits.
API-Änderungen
- Der Funktion
TimePickerwurde der Parameter hinzugefügt, um die anfänglich fokussierte Zeitkomponente anzugeben. Standardmäßig wird die erste verfügbare Komponente basierend auf dem Gebietsschema undTimePickerTypeausgewählt. (Ie5dfe, b/437015874) - Der nicht verwendete Parameter
targetProgresswurde in der MethodeCircularProgressIndicatordrawCircularProgressIndicatorentfernt. (Ieeb3c, b/430544552)
Fehlerkorrekturen
- Es wurde die fehlende Unterstützung für
TransformingLazyColumnverticalAlignmentimplementiert. Jetzt werden Standardanordnungen unterstützt, die oben, unten oder in der Mitte ausgerichtet sind. (I2e630, b/444143326) - Die Berechnung der Breite von gebogenem Text wurde verbessert, um Leerzeichen vor und nach dem Text zu berücksichtigen. Dies kann dazu führen, dass Screenshots mit gebogenem Text nicht mehr korrekt dargestellt werden, insbesondere wenn der Text einen Hintergrund wie
TimeTexthat. (I924a4, b/446601899) - Die
WarpedCurvedTextRenderervon Compose Foundation wurde aktualisiert, umEmojiCompatInitializervonandroidx.emoji2zu verwenden und einen Laufzeitklassenfehler zu beheben. (I589b4, b/444422736) ScalingLazyColumnwurde aktualisiert, um sich auf den scrollbaren Knoten mitCollectionInfozu konzentrieren, damit er in mehr Kontexten mit dem Drehrad funktioniert, z. B. auf demMaterial3AlertDialog. (I6be3c, b/445332360)
Version 1.6.0-alpha02
24. September 2025
androidx.wear.compose:compose-*:1.6.0-alpha02 ist veröffentlicht. Version 1.6.0-alpha02 enthält diese Commits.
API-Änderungen
- Das Rendern von gekrümmtem Text wurde verbessert, insbesondere bei kursiven Schriftarten. Dazu wurde das Verzerren von Text mit dem neuen Parameter
CurvedTextStylewarpOffseteingeführt. (If5dcb)
Fehlerkorrekturen
- Optimiertes Caching von Artikelanimationen beim Scrollen in
TransformingLazyColumn. (I62ae8) - Die Varianten
OpenOnPhoneDialogundConfirmationDialogwurden aktualisiert, umFLAG_KEEP_SCREEN_ONfestzulegen. So werden die Animationen vollständig ausgeführt und die Dialogfelder werden wie vorgesehen automatisch geschlossen. (Iad7d4) - Ein Fehler wurde behoben, durch den
Modifier.edgeSwipeToDismissbei Verwendung mitSwipeDismissableNavHostab API 36 abgestürzt ist. (Ifc13d) - Die Dokumentation und die Kommentare, die mit dem neuen Parameter
CurvedTextStyle warpOffsetverknüpft sind, wurden aktualisiert, um korrekt auf den Fall „Nicht angegeben“ zu verweisen. (I41aa5)
Version 1.6.0-alpha01
10. September 2025
androidx.wear.compose:compose-*:1.6.0-alpha01 ist veröffentlicht. Version 1.6.0-alpha01 enthält diese Commits.
API-Änderungen
- Nicht klickbare Varianten für
Card,TitleCard,OutlinedCardundAppCardhinzugefügt (I509bb, b/406690146) - Der Parameter
interactionSourcewurde aus neuen nicht klickbaren Karten-APIs entfernt. (If0c7a, b/440323280) - Der Komponente
TimePickerwurde ein neuer TypMinutesSecondshinzugefügt, in dem nur Spalten für Minuten und Sekunden angezeigt werden. Die Spalte für Stunden wird ausgelassen. (Ia9e94, b/438004664)
Fehlerkorrekturen
- Die Verwendung des Modifikatorparameters für
HorizontalPagerScaffoldmuss korrigiert werden, damitHorizontalPagerdie Seitenangabe nicht verliert, wenn einModifier.fillMaxSize()hinzugefügt wird (I07ae1, b/441682601). - Die Richtung von
ScrollIndicatorwird standardmäßig an die Richtung des Inhaltslayouts angepasst. (I0da0f, b/441489028) - Das Problem mit
ScrollAwaybei Verwendung mitTransformingLazyColumnwurde behoben.TimeTextwurde nach dem Wechsel zu einem anderen Bildschirm und zurück nicht richtig gescrollt. (Ic0ef1, b/433549148) - Die
TransformingLazyColumn-Berichterstellung für die Semantik vonSCROLL_BACKWARDSundSCROLL_FORWARDSwurde für Grenzfälle oben/unten auf dem Bildschirm korrigiert. (I5c28d, b/405205994) - Ein Fehler in
SwipeDismissableNavHostwurde behoben, durch den laufende Übergänge nach dem Zurückwischen auf API 36 nicht als abgeschlossen markiert wurden. (Ife72e, b/441089689) - Aktualisieren Sie den Standardwert für
OpenOnPhoneMaxSweepAngleauf 200 Grad, um zu verhindern, dass einige Übersetzungen von „Check your phone“ (Prüfe dein Smartphone) abgeschnitten werden. (Ib2e4c, b/428243902)
Wear Compose-Version 1.5
Version 1.5.4
22. Oktober 2025
androidx.wear.compose:compose-*:1.5.4 ist veröffentlicht. Version 1.5.4 enthält diese Commits.
Fehlerkorrekturen
- Die Leistung der Auswahl wurde durch Refactoring der Verwendung von
LaunchedEffectverbessert. (I94519, b/418192973) - Ein Fehler in
SwipeDismissableNavHostauf API36+ wurde behoben, bei dem die Animation für die intelligente „Zurück“-Geste unterbrochen und neu gestartet wurde, wenn die Schaltfläche „Zurück“ gedrückt wurde. Bei der Implementierung wird jetztSeakableTransitionState.animateToanstelle von „Animatable“ verwendet, was einen leichten Leistungsvorteil bietet. (I2241f, b/428156670) - Ein Fehler wurde behoben, der die Reihenfolge der Bedienungshilfen-Ankündigungen in
AlertDialogbetraf. Die Bestätigungsschaltfläche wurde als „Schaltfläche“ angekündigt. „Bestätigen“ statt „Bestätigen“. Schaltfläche“. (Ic2381, b/429378202)
Version 1.5.3
8. Oktober 2025
androidx.wear.compose:compose-*:1.5.3 ist veröffentlicht. Version 1.5.3 enthält diese Commits.
Fehlerkorrekturen
- Es wurde die fehlende Unterstützung für
TransformingLazyColumnverticalAlignmentimplementiert. Jetzt werden Standardanordnungen unterstützt, die oben, unten oder in der Mitte ausgerichtet sind. (I2e630, b/444143326)
Version 1.5.2
24. September 2025
androidx.wear.compose:compose-*:1.5.2 ist veröffentlicht. Version 1.5.2 enthält diese Commits.
Fehlerkorrekturen
- Optimiertes Caching von Artikelanimationen beim Scrollen in
TransformingLazyColumn. (I62ae8) - Die Varianten
OpenOnPhoneDialogundConfirmationDialogwurden aktualisiert, um FLAG_KEEP_SCREEN_ON festzulegen, damit die Animationen vollständig ausgeführt werden und die Dialogfelder wie vorgesehen automatisch geschlossen werden. (Iad7d4) - Ein Fehler wurde behoben, durch den
Modifier.edgeSwipeToDismissbei Verwendung mitSwipeDismissableNavHostab API 36 abgestürzt ist. (Ifc13d) - Die Dokumentation und die Kommentare, die mit dem neuen Parameter
CurvedTextStyle warpOffsetverknüpft sind, wurden aktualisiert, um korrekt auf den Fall „Nicht angegeben“ zu verweisen. (I41aa5)
Version 1.5.1
10. September 2025
androidx.wear.compose:compose-*:1.5.1 ist veröffentlicht. Version 1.5.1 enthält diese Commits.
Fehlerkorrekturen
- Die Verwendung des Modifikatorparameters von
HorizontalPagerScaffoldwurde korrigiert, sodass der Seitenindikator in HorizontalPager nicht verloren geht, wenn einModifier.fillMaxSize()hinzugefügt wird (I07ae1, b/441682601). - Die Richtung von
ScrollIndicatorwird standardmäßig an die Richtung des Inhaltslayouts angepasst. (I0da0f, b/441489028) - Das Problem mit
ScrollAwaybei Verwendung mitTransformingLazyColumnwurde behoben.TimeTextwurde nach dem Wechsel zu einem anderen Bildschirm und zurück nicht richtig gescrollt. (Ic0ef1, b/433549148) - Die
TransformingLazyColumn-Berichterstellung für die Semantik vonSCROLL_BACKWARDSundSCROLL_FORWARDSwurde für Grenzfälle oben/unten auf dem Bildschirm korrigiert. (I5c28d, b/405205994) - Ein Fehler in
SwipeDismissableNavHostwurde behoben, durch den laufende Übergänge nach dem Zurückwischen auf API 36 nicht als abgeschlossen markiert wurden. (Ife72e, b/441089689) - Aktualisieren Sie den Standardwert für
OpenOnPhoneMaxSweepAngleauf 200 Grad, um zu verhindern, dass einige Übersetzungen von „Check your phone“ (Prüfe dein Smartphone) abgeschnitten werden. (Ib2e4c, b/428243902)
Version 1.5.0
27. August 2025
androidx.wear.compose:compose-*:1.5.0 ist veröffentlicht. Version 1.5.0 enthält diese Commits.
Wichtige Änderungen seit Version 1.4.0
Erste Version der Wear Compose Material 3-Bibliothek, die das neue Material 3 Expressive-Designsystem unterstützt. Diese Version enthält:
- Aktualisiertes
MaterialThemeund dynamische Farbgestaltung. - Neue Komponenten
AppScaffold, ScreenScaffold,HorizontalPagerScaffoldundVerticalPagerScaffoldzum Festlegen der Struktur des Bildschirms und zum Koordinieren vonScrollIndicator-,TimeText-,HorizontalPageIndicator- undVerticalPageIndicator-Animationen. - Form-Morphing
IconButton,TextButton,IconToggleButtonundTextToggleButtonmit Variationen, die animiert werden, wenn sie gedrückt oder aktiviert werden. EdgeButton, die eine spezielle Form für den unteren Bildschirmrand hat.ButtonGroupimplementiert eine ausdrucksstarke Gruppe von Schaltflächen in einer Reihe, deren Form sich bei Berührung ändert.AlertDialogundConfirmationDialogmit Variationen für zusätzliche Dialoginhalte.TimePicker- undDatePicker-Komponenten.- Zu den Fortschrittsindikatoren gehören
CircularProgressIndicator(mit segmentierter Variation),ArcProgressIndicatorundLinearProgressIndicator.
Außerdem enthält Wear Compose Foundation 1.5.0 Folgendes:
TransformingLazyColumn: Eine vertikal scrollbare Liste, die das Skalieren und Morphen von Animationen unterstützt.- Unterstützung für die Paginierung in Wear Compose Foundation mit
HorizontalPagerundVerticalPager. - Hierarchische Fokusgruppen: Damit werden Composables in einer Anwendung annotiert, um den aktiven Teil der Komposition im Blick zu behalten und den Fokus zu koordinieren.
Weitere Informationen zu Material 3 Expressive für Wear OS
Weitere Änderungen
- Eine umfassendere Liste der in Version 1.5.0 eingeführten Funktionen finden Sie in den Versionshinweisen zu Beta01.
Version 1.5.0-rc02
13. August 2025
androidx.wear.compose:compose-*:1.5.0-rc02 ist veröffentlicht. Version 1.5.0-rc02 enthält diese Commits.
Fehlerkorrekturen
- Ein Fehler in
TimePickerwurde behoben, durch den lange, internationalisierte Strings für den Zeitraum (AM/PM) das Layout beschädigen konnten. (I0fa81)
Version 1.5.0-rc01
30. Juli 2025
androidx.wear.compose:compose-*:1.5.0-rc01 ist veröffentlicht. Version 1.5.0-rc01 enthält diese Commits.
Fehlerkorrekturen
TimePickerwird jetzt vollständig durch das Gebietsschema des Nutzers bestimmt. Die Reihenfolge und der Inhalt der Auswahlfelder und Trennzeichen werden durchDateFormat.getBestDateTimePatternfestgelegt. Dadurch wird die falsche Spaltenreihenfolge für CJK-Sprachen korrigiert, Probleme mit dem RTL-Layout in Sprachen wie Arabisch behoben, lokalisierte Trennzeichen verwendet und sowohl das 0-11- als auch das 1-12-Stundenformat basierend auf dem Gebietsschema unterstützt (I5d543).- In einigen Gebietsschemas, z. B. CJK, wird für
DatePickerjetzt ein numerischer Monat angezeigt, um eine Mischung aus numerischen und sprachlichen Formaten zu vermeiden (z. B. 2025 | 07 | 02 anstelle von 2025 | 7月 | 02). Bei dieser Änderung wird eine Heuristik angewendet, mit der geprüft wird, ob für das Jahr sprachliche Suffixe verwendet werden. Wenn dies der Fall ist, wird das Monatsformat zur besseren Konsistenz von Text (MMM) zu numerisch (MM) geändert. (Ia93fe) - Der vertikale Platz für die Überschrift in der Picker-Komponente ist jetzt konstant. Dadurch wird ein sichtbares Verschieben verhindert, wenn eine Picker-Spalte ausgewählt wird, insbesondere im
Talkback-Modus. (I7f8b7) - Es wurde ein Bedienungshilfenfehler behoben, der dadurch verursacht wurde, dass
HorizontalPageIndicatorundVerticalPageIndicatorim Vollbildmodus dargestellt wurden. Die Seitenindikatoren werden nicht mehr im Vollbildmodus angezeigt und werden automatisch positioniert, wenn sie mitHorizontalPagerScaffoldoderVerticalPagerScaffoldverwendet werden. Wenn Sie kein Pager-Scaffold verwenden, geben Sie die Ausrichtung explizit mitmodifier = Modifier.align(Alignment.BottomCenter)undHorizontalPageIndicatorsowiemodifier =Modifier.align(Alignment.CenterEnd)undVerticalPageIndicatoran. (I3a0ad) - Die Wischrichtung in
SwipeToRevealist jetzt sowohl für LTR- als auch für RTL-LayoutDirectionseinheitlich. (I6d427) - Die vertikale Zentrierung für Aktionen wurde wieder eingeführt.
SwipeToRevealWennhasPartiallyRevealedState = true, sollteRevealStatevom Aufrufer aufRevealValue.Coveredzurückgesetzt werden, wenn gescrollt wird. (I6473d) SwipeDismissableNavHostschneidet Inhalte für API 36 und höher jetzt korrekt zu. (Ib9a44)
Version 1.5.0-beta06
16. Juli 2025
androidx.wear.compose:compose-*:1.5.0-beta06 ist veröffentlicht. Version 1.5.0-beta06 enthält diese Commits.
Fehlerkorrekturen
- Fehler bei der
EdgeButton-Animation beheben, wennLazyColumnoderScalingLazyColumnreverseLayout = truehaben. (I46a1a) - Es wurde ein Fehler in
ScreenScaffoldbehoben, durch den die Funktion „Tippen & Entdecken“ in TalkBack nicht funktionierte, wenn einScrollIndicator/PageIndicatorangegeben wurde. (I6dcee) TransformingLazyColumnermöglicht jetzt benutzerdefiniertes Morphen ausTransformationSpec, indem der vonTransformationSpecim Hintergrund-Painter bereitgestellteitemHeight-Wert gelesen wird. (I6a599)- Animierte Farbwechsel für
IconButtonaktiviert/deaktiviert, um mitIconToggleButtonübereinzustimmen. (Ife10a) - Die Mindestbegrenzung für Abschnitte in
CircularProgressIndicatorwurde entfernt, um einen deutlichen Sprung zur Mindestpunktgröße bei der Animation zu vermeiden. Im Rahmen dieser Änderung wird der ParametertargetProgressindrawCircularProgressIndicatornicht mehr verwendet. (I33309) - Die Auswahl hat jetzt die semantische Rolle
ValuePicker, die von Screenreadern verwendet werden kann, um die Barrierefreiheit von Auswahlen zu verbessern. Die Auswahl hat auch aktualisierte Barrierefreiheits-Klicklabels, die zwischen dem Anpassen des Werts im schreibgeschützten Modus und dem Auswählen des aktuellen Werts unterscheiden. (I33309)
Version 1.5.0-beta05
2. Juli 2025
androidx.wear.compose:compose-*:1.5.0-beta05 ist veröffentlicht. Version 1.5.0-beta05 enthält diese Commits.
Fehlerkorrekturen
- Die Dokumentation wurde aktualisiert, um die Verwendung von
Modifier.edgeSwipeToDismisszu verdeutlichen (I78cb5). - Es wurde ein Fehler behoben, bei dem in Lazy Lists mit
SwipeToRevealmehrere aufgedeckte Elemente angezeigt werden konnten (I1d4f6). - Containerformen in
TransformingLazyColumnwerden jetzt skaliert, um zu verhindern, dass Inhalte abgeschnitten werden. (I9221a) - Das Label
TimePickerundDatePickerfür Stunde/Minute/Sekunde oder Jahr/Monat/Tag hat jetzt eine Überschriftensemantik für Screenreader (I77d8b). - Die Pause zwischen Schleifen im unbestimmten
CircularProgressIndicator(Iaf0bb) wurde entfernt. - Ein Animationsfehler in
TransformingLazyColumnbeim Entfernen von Elementen wurde behoben. (I73034) - Die Verarbeitung von Anker-Elementen in
TransformingLazyColumnwurde korrigiert, wenn Elemente entfernt werden. (I841a8) - Bei
PickerGroupwerden die Auswahlfelder jetzt horizontal animiert, wenn die automatische Zentrierung aktiviert ist und das ausgewählte (zentrierte) Auswahlfeld geändert wird. (Ic82c4)
Version 1.5.0-beta04
18. Juni 2025
androidx.wear.compose:compose-*:1.5.0-beta04 ist veröffentlicht. Version 1.5.0-beta04 enthält diese Commits.
Fehlerkorrekturen
- Es wurde ein Layoutfehler in
TransformingLazyColumnbehoben. Inhalte, die auf den Bildschirm passen, werden jetzt korrekt oben auf dem Bildschirm ausgerichtet (I80115). - Ein Problem mit
TransformingLazyColumnwurde behoben. Das untere Element wurde beim Scrollen zum Ende einer Liste mit einemEdgeButtonfälschlicherweise skaliert. Der Scrollfortschritt folgt jetzt einem Gradientenabstieg, wenn das Layout wiederhergestellt wird. (Iea375) TransformingLazyColumnliest jetzt die Höhe des Elements im Hintergrund-Painter, sodass benutzerdefinierteTransformationSpecsdas Morphen implementieren können. (I022f0)SwipeToRevealzentriert die angezeigten Aktionen jetzt vertikal. (I4419b)- Ein Fehler in
SwipeToRevealwurde behoben, der dazu führte, dass die Funktion nicht richtig mit „Wischen zum Schließen“ funktionierte, wenn sowohl Ansichten als auch Compose auf dem Bildschirm verwendet wurden. (I5dc0e) - Ein Fehler wurde behoben, bei dem
SwipeToReveal-Aktionen beim Scrollen mit einem vertikalen Offset gezeichnet wurden. (I29444) AlertDialog,ConfirmationDialog,OpenOnPhoneDialogundSwipeToRevealrunden jetzt Abstände und Größen auf, die als Prozentsatz der Displaygröße berechnet werden. (I76367)ButtonDefaults.outlinedButtonBorderwird jetzt aktualisiert, wenn sich der aktivierte/deaktivierte Status ändert size(If2ddd)- Ein Fehler in der
EdgeButton-Höhe wurde behoben, der auf komplexen Bildschirmen mit Pager undScreenScaffoldaufgetreten ist. (I946e3) - Eine Race-Bedingung wurde behoben, die dazu führen konnte, dass Platzhalteranimationen angehalten wurden. (I53530)
- Die Leistung von
HorizontalPageIndicatorundVerticalPageIndicatorwurde durch das Zeichnen auf Canvas verbessert. (Ifae1e) - Die Form von EdgeButton wurde optimiert, um die Übergänge zwischen den Auslassungspunkten und Kreisen, aus denen der Umriss besteht, zu glätten. (I7721e)
- Ein Fehler in
LevelIndicatorwurde behoben, der dazu führte, dass Animationen aufgrund unnötiger Neuzusammenstellungen angehalten wurden. (I45d08)
Version 1.5.0-beta03
4. Juni 2025
androidx.wear.compose:compose-*:1.5.0-beta03 ist veröffentlicht. Version 1.5.0-beta03 enthält diese Commits.
API-Änderungen
OpenOnPhoneDialoggibt jetzt nur noch den Nachrichtentext unter TalkBack aus und überspringt die Symbolsemantik. DieOpenOnPhoneDialogDefaultswurden aktualisiert, um den ParametericonContentDescriptionund den ParametercontentDescriptionausicon()zu entfernen. Außerdem hatConfirmationDialogDefaultsjetzt Modifikatorparameter für die zusammensetzbaren FunktionenSuccessIconundFailureIcon. (Id2ae2)
Fehlerkorrekturen
- Die Reihenfolge, in der wir die Auswirkungen von
SurfaceTransformation-Parametern berücksichtigen, wurde geändert. Bisher wurden die Transformationen, die auf Wear Material3-Komponenten angewendet wurden, so ausgeführt: Hintergrund-Painter, Container-Transformation, Inhalts-Transformation. Die ersten beiden werden nun invertiert und wir wenden einen übergebenen Modifikator dazwischen an, sodass er von Containertransformationen betroffen ist. Damit werden Fälle behoben, in denen ein Platzhalter-Shimmereffekt mit Elementen in einem TLC mit dem Transformationsparameter verwendet wird. (I786cf) RevealState.Saverwurde hinzugefügt, um den Status vonSwipeToRevealwiederherzustellen, wenn die Aktivität oder der Prozess neu erstellt wird. Die FunktionrememberRevealStateverwendet diesen Saver jetzt standardmäßig. (Ie0ecb)- Die Schaltflächen für primäre und sekundäre Aktionen sollten standardmäßig
ButtonDefault.Heightsein (ein Fehler wurde behoben, bei dem diese die maximale Höhe für höhere Schaltflächen einnahmen).SwipeToReveal(Ibfba1) SwipeToRevealwurde geändert, um die letzte interagierte Komponente zurückzusetzen, wenn die Wischgeste nach rechts ausgeführt wird. (Ia8450)SwipeToRevealwurde so geändert, dass der StatusRevealingfestgelegt wird, wenn sich die Endposition des Wischvorgangs zwischen den Ankern „Aufdecken“ und „Aufgedeckt“ befindet und näher am Anker „Aufdecken“ liegt. (If4458)- Der Inhalt von
ButtonGroupwird jetzt in einem RTL-Layout (Ib378d) korrekt invertiert. AnimatedTextunterstützt jetzt die RTL-Textrichtung (I4533c).TransformingLazyColumn– Die Größe von Elementen wird jetzt richtig angepasst, wenn das untere Element entfernt wird (Idacab).- Bei
TransformingLazyColumnwird jetzt nur noch ein Messdurchgang durchgeführt. Dadurch wird die Leistung verbessert, da die Frame-Zeiten verkürzt werden. (I501a1)
Version 1.5.0-beta02
20. Mai 2025
androidx.wear.compose:compose-*:1.5.0-beta02 ist veröffentlicht. Version 1.5.0-beta02 enthält diese Commits.
Fehlerkorrekturen
- Aktualisierte Baseline-Profile für die Bibliotheken „foundation“, „material“ und „material3“. (I53f06)
- Ein Fehler in
TransformingLazyColumnwurde behoben, durch den die Größe von Elementen geändert wurde, wenn das untere Element entfernt wurde. (Idacab) - Ein Fehler mit
TransformingLazyColumnwurde behoben, bei dem die Liste oben oder unten hängen blieb. (I49d00) OpenOnPhoneDialogsollte unter TalkBack den gekrümmten Text und nicht die Beschreibung des Symbols vorlesen. (I4efe8)- Ein Fehler in
SwipeToRevealwurde behoben, durch den der falsche Anker inRevealState.currentValuegemeldet wurde, wennhasPartiallyRevealedStateauf „false“ gesetzt war. (I9c7cf) SwipeToReveal-Rückgängig-Schaltflächen sind jetzt standardmäßigButtonDefaults.Height. (I1f6c8)- Die Leistung von
BasicSwipeToDismissBoxwurde verbessert, indem die Verwendung von Canvas zum Zeichnen von Scrims eingestellt wurde. (I68f2c) - Ein Barrierefreiheitsproblem im Schieberegler wurde behoben. Die angekündigte Prozentzahl stimmte nach Aktualisierungen nicht mit dem Wert überein (I91146).
- Ein Fehler bei der Implementierung von
placeholderShimmerwurde behoben. (Iee39b - Die Leistung von
TransformingLazyColumnwurde verbessert, indem die Berechnung vonScrollProgressum 30 % optimiert wurde. (I4c4cb)
Version 1.5.0-beta01
7. Mai 2025
androidx.wear.compose:compose-*:1.5.0-beta01 ist veröffentlicht. Version 1.5.0-beta01 enthält diese Commits.
Mit der Version 1.5.0-beta01 von Compose für Wear OS wird angezeigt, dass diese Version der Bibliothek alle Funktionen enthält und die API gesperrt ist (sofern nicht als experimentell gekennzeichnet).
Wear Compose 1.5.0-beta01 enthält die Wear Compose Material3-Bibliothek, die das neue UI-Designsystem namens Material 3 Expressive unterstützt. Es wird empfohlen, von Material auf Material3 zu aktualisieren, um das neue visuelle Design in Apps zu nutzen und von den neuen Komponenten zu profitieren:
MaterialThemefür aktualisierte und erweiterte Farbschemas, Typografie und Formen, um Ihren Designs Tiefe und Vielfalt zu verleihen.- Dynamisches Farbdesign, bei dem automatisch ein Farbschema für Ihre App generiert wird, das den Farben des Zifferblatts entspricht.
- Neue Komponenten passen sich standardmäßig automatisch an größere Bildschirmgrößen an.
- Form-Morphing: Runde Schaltflächenkomponenten wie
IconButton,TextButton,IconToggleButtonundTextToggleButtonunterstützen Varianten, die animiert werden, wenn sie gedrückt oder aktiviert werden. EdgeButton: Eine neue Schaltfläche, die sich an den Bildschirmrand anpasst und eine spezielle Form für den unteren Bildschirmbereich hat.- Scaffolds: Mit
AppScaffoldundScreenScaffoldwird die Struktur des Bildschirms festgelegt und die Animationen vonScrollIndicatorundTimeTextwerden koordiniert. - Schaltflächen: Es werden zahlreiche stadionförmige Schaltflächen mit flexiblen Containern mit einem und mehreren Slots für Schaltflächen mit Symbolen und Labels unterstützt.
CheckboxButtonundSwitchButtonwerden bereitgestellt, wenn Kippschalter erforderlich sind, währendRadioButtondie verfügbare Auswahl-Schaltfläche ist. Es gibt auch „Split“-Varianten der Kippschalter und Auswahl-Schaltflächen. ButtonGroup– implementiert eine ausdrucksstarke Gruppe von Schaltflächen in einer Reihe, die sich bei Berührung morphingartig verändern.AlertDialog-Varianten unterstützen die Schaltflächen „Ok“/„Abbrechen“ oder einEdgeButton.- Mit
ConfirmationDialogkann eine Nachricht mit einem Zeitlimit angezeigt werden. Es werden spezielle Animationen für die Varianten „Erfolg“, „Fehler“ und „Auf Smartphone öffnen“ unterstützt. - Auswahlfelder: Die Varianten
TimePickerundDatePickerwerden unterstützt. Außerdem können Sie die Komponenten „Auswahlfeld“ undPickerGroupverwenden, um eigene Auswahlbildschirme zu erstellen. ProgressIndicators– es werden kreisförmige und lineare Fortschrittsanzeigen unterstützt (CircularProgressIndicatorhat segmentierte und unbestimmte Varianten).- Karten: Es sind verschiedene Kartenvarianten verfügbar, darunter
TitleCard, das spezielle Layouts für Karten mit Titel, Zeit, Untertitel oder Inhalts-Slots bietet.TitleCardkann auch einen Bildhintergrund erhalten, um die Bedeutung der Informationen auf einer Karte zu unterstreichen. - Pager: Die Komponenten
HorizontalPagerScaffold,VerticalPagerScaffoldundAnimatedPagekoordinieren die AnimationenHorizontalPageIndicatorundVerticalPagerIndicator.HorizontalPagerundVerticalPagerwerden in der Wear Compose Foundation-Bibliothek veröffentlicht. - Platzhalter: Es wird eine Skelettform über eine Komponente gezeichnet, wenn keine vorläufigen Inhalte verfügbar sind.
- Schieberegler und Stepper: Mit beiden können Nutzer eine Auswahl aus einem Wertebereich treffen. Schieberegler sind kompakter und können segmentiert werden. Der Stepper ist eine Vollbildkomponente, die in der Regel mit einem
StepperLevelIndicatorkombiniert wird. SwipeToReveal: Hiermit können Sie einem Composable zusätzliche Aktionen hinzufügen, wenn es von rechts nach links gewischt wird.
Außerdem enthält Wear Compose Foundation 1.5.0-beta01 die folgenden neuen Komponenten:
TransformingLazyColumn: Eine träge, vertikal scrollbare Liste, die Skalierungs- und Morphing-Animationen unterstützt.- Hierarchische Fokusgruppen: Damit werden Composables in einer Anwendung annotiert, um den aktiven Teil der Komposition im Blick zu behalten und den Fokus zu koordinieren.
- Pager: Die Komponenten
HorizontalPagerundVerticalPagerbasieren auf den Compose Foundation-Komponenten und enthalten Wear-spezifische Verbesserungen, um die Leistung zu optimieren und die Wear OS-Richtlinien einzuhalten.
API-Änderungen
- Die Hierarchical Focus API wurde aktualisiert:
Modifier.hierarchicalFocuswurde inModifier.hierarchicalFocusGroupumbenannt und der Callback-Parameter wurde entfernt. Die Überladung vonModifier.hierarchicalFocusRequestermit einemFocusRequester-Parameter wurde entfernt. Es wurde ein neuesCompositionLocal,LocalScreenIsActiveerstellt, damit Komponenten informieren und prüfen können, welcher Bildschirm der aktive ist. (I5ff7c). - Die
SwipeToReveal-Funktion aus Wear Compose Foundation wurde zugunsten vonSwipeToReveal-APIs in Wear Compose Material und Wear Compose Material3 eingestellt. Ersetzen Sie Wear Foundation-ImporteSwipeToRevealdurch Wear Compose Material- oder Wear Compose Material3-Importe, um die APIs weiterhin verwenden zu können. (Ia147d). - Die Wear Compose Material3-Abhängigkeiten von Foundation wurden in das Paket „material3“ verschoben, z.B.
RevealValue,RevealDirection,RevealActionType,RevealState,rememberRevealState.SwipeToRevealEntwickler sollten ihre Importe dieser Klassen und Funktionen vonandroidx.wear.compose.foundationzuandroidx.wear.compose.material3ändern. (I640e6). - Die Wear Compose Material3-API
SwipeToRevealwurde aktualisiert: Der zusammensetzbaren FunktionSwipeToRevealwurden die ParameterprimaryAction,onFullSwipe,secondaryAction,undoPrimaryAction,undoSecondaryActionundhasPartiallyRevealedStatehinzugefügt. Die Möglichkeit,positionalThresholdundanimationSpecüberRevealStateanzupassen, wurde entfernt.lastActionType,revealThresholdund die Breite wurden ausRevealStateentfernt. DerRevealState-Konstruktor akzeptiert jetztRevealDirectionanstelle von Ankern. Die FunktionencreateRevealAnchors, Anker undbidirectionalAnchorswurden entfernt. DieSwipeToRevealScope-FunktionenprimaryAction,secondaryAction,undoPrimaryActionundundoSecondaryActionwurden inPrimaryActionButtonundSecondaryActionButtonumbenannt und in zusammensetzbare Funktionen umgewandelt.RevealActionTypewurde als intern gekennzeichnet.UndoActionButton(I885d0). - Die
SwipeToRevealAPI wurde weiter aktualisiert:onFullSwipewurde inonSwipePrimaryActionumbenannt,SwipeToRevealNonAnchoredSamplewurde umbenannt, um die Verwendung des ParametershasPartiallyRevealedStateanzugeben,actionButtonHeightwurde entfernt, da die Standardhöhe die Standardhöhe der Schaltfläche ist und die größere Höhe mit einem Modifikator festgelegt werden kann,SmallActionButtonHeightwurde ausSwipeToRevealDefaultsentfernt und der Wertparameter in den KonstruktorenRevealValueundRevealDirectionwurde privat gemacht. (I465ce).
Fehlerkorrekturen
- Die Verarbeitung von
ScreenScaffold-EdgeButtonwurde korrigiert, sodass dieEdgeButtonnach dem Entfernen einesTransformingLazyColumn-Elements animiert wird. (I6d366). - Die Wear Compose-Abhängigkeiten von Compose-Bibliotheken wurden auf Version 1.8.0 aktualisiert. (I2ef3f).
- Die Bewegung des unbestimmten
CircularProgressIndicatorwurde aktualisiert, sodass sie nicht mehr vorübergehend zurückgeht. (Ieddb1). - Ein
SwipeDismissableNavHost-Fehler wurde behoben: Der Fokus wurde nach dem Zurückwischen nicht richtig verschoben, was dazu führte, dass die Dreheingabe fehlschlug (dies betraf API 36 und höher, die die Funktion „Vorhersagendes Zurück“ verwenden). (Ieddb1). - Geänderte Dokumentation für die Hierarchical Focus API (Idf2ff).
- Die Dokumentation für Schaltflächen und Karten wurde aktualisiert, um zu verdeutlichen, wie
containerPainterunddisabledContainerPaintercontainerColorunddisabledContainerColorüberschreiben (I4a453). - Eine Änderung an
TimeTextin der vorherigen Version, bei derBroadcastReceiverin einen Worker-Thread verschoben wurde, wurde rückgängig gemacht, da sie Probleme für Apps verursacht hat, die ihr eigenes Threading während der Navigation verwalten. (I34d02). - Die Picker-Beispiele wurden aktualisiert, um unnötige „remember“-Aufrufe zu entfernen und stattdessen
rememberUpdatedStatein Picker zu verwenden, um sich die letztecontentDescription-Lambda-Funktion zu merken. (Icb5b1). - Die Textstile in
TimePickerundDatePickerwurden aktualisiert, sodass Schriftartänderungen nicht mehr zu einer Kürzung führen. (I26194). - Bei
ListHeaderundListSubHeaderwird der Text jetzt standardmäßig zentriert bzw. am Anfang ausgerichtet. (I78339). - Die Beispiele und Demos für Foundation und Material Swipe to Reveal wurden aktualisiert, um benutzerdefinierte Barrierefreiheitsaktionen anzukündigen. Die benutzerdefinierten Aktionen müssen als Semantik für den Inhalt und nicht für die
SwipeToReveal-Composable-Funktion selbst hinzugefügt werden. (Ie92a3). - Der Standardwert für
MaxLinesfürEdgeButton-Inhalte wurde entsprechend der Größe aktualisiert: Er ist jetzt 1 für sehr kleine, 2 für kleine und mittelgroße und 3 für große Inhalte. (Ie35f6). LocalReduceMotionwurde vereinfacht, sodass der Observer nur einmal registriert wird, um die Leistung zu verbessern. (Ib1979).- Die Anzahl der Neuzeichnungen in
ScrollIndicatorwurde minimiert, um die Leistung zu verbessern. (Ia7a67). - Ein Fehler in
TransformingLazyColumnwurde behoben, bei dem das oberste sichtbare Element in der Liste nicht richtig skaliert wurde, wenn EdgeButton seine volle Höhe erreichte. (I30580).
Version 1.5.0-alpha14
23. April 2025
androidx.wear.compose:compose-*:1.5.0-alpha14 ist veröffentlicht. Version 1.5.0-alpha14 enthält diese Commits.
API-Änderungen
- Alle Material-
SwipeToReveal-Abhängigkeiten von FoundationSwipeToRevealwurden in das Material-Paket verschoben, z.B.RevealValue,RevealDirection,RevealActionType,RevealState,rememberRevealState. Entwickler sollten ihre Importe dieser Klassen und Funktionen vonandroidx.wear.compose.foundationzuandroidx.wear.compose.materialändern. (Ib7cb8) - Die API von
HierarchicalFocusCoordinatorwurde aktualisiert und verwendet jetzt Modifikatoren anstelle von Composables. - Hinweise zur Migration:
HierarchicalFocusCoordinator(function, content)kann ersetzt werden, indemcontentoder dem umschließenden Composable einModifier.hierarchicalFocus(function())hinzugefügt wird.ActiveFocusListener { if (it) focusRequester.requestFocus() }kann durch Hinzufügen vonModifier.hierarchicalFocusRequester(focusRequester)ersetzt werden- Für andere, seltenere Verwendungen von
ActiveFocusListenerkann der neue Parameter fürModifier.hierarchicalFocusverwendet werden. focusRequester(rememberActiveFocusRequester())kann durchhierarchicalFocusRequester()ersetzt werdenval focusRequester = rememberActiveFocusRequester()kann durchremember { FocusRequester() }ersetzt undModifier.hierarchicalFocusRequester(focusRequester)hinzugefügt werden. (Ie319a)
Fehlerkorrekturen
- Der Geschwindigkeitsgrenzwert, der für Wischbewegungen überschritten werden muss, um eine Zustandsänderung auszulösen, wurde für die folgenden Komponenten erhöht:
SwipeToReveal,BasicSwipeToDismissBoxundSwipeDismissableNavHost(nur für API 35 und niedriger fürSwipeDismissableNavHost). (If47bf) - Ein Animationsproblem wurde behoben, das auftrat, wenn neue Elemente in
TransformingLazyColumneingefügt wurden. (I589b2)
Version 1.5.0-alpha13
9. April 2025
androidx.wear.compose:compose-*:1.5.0-alpha13 ist veröffentlicht. Version 1.5.0-alpha13 enthält diese Commits.
API-Änderungen
- Für Projekte, die mit Kotlin 2.0 veröffentlicht wurden, ist KGP 2.0.0 oder höher erforderlich (Idb6b5).
- Die Property
targetPagewurdePagerStatehinzugefügt (I4de8b)
Fehlerkorrekturen
- Unnötige Neuzusammenstellungen bei der Vorhersage von „Zurück“-Gesten verhindern (Iecd6d)
- Die
isScrollable-Eigenschaft vonScrollInfoProviderwurde korrigiert, sodass der aktuelle Wert zurückgegeben wird. (Icbfb8)
Version 1.5.0-alpha12
26. März 2025
androidx.wear.compose:compose-*:1.5.0-alpha12 ist veröffentlicht. Version 1.5.0-alpha12 enthält diese Commits.
API-Änderungen
- Die Standardimplementierung von
SwipeToRevealfürgestureInclusionwurde verbessert, sodass Gesten nur ignoriert werden, wenn der Status der Komponente „Covered“ ist. (I7e3d6) - Für
SwipeToRevealwurdebidirectionalGestureInclusionzu einem Wert anstelle einer Funktion gemacht und@FloatRangewurde demedgeZoneFraction-Parameter ingestureInclusionhinzugefügt. (Ica7c3)
Fehlerkorrekturen
- Ändern Sie
SwipeToRevealbidirectionalGestureInclusionso, dass ein Objekt anstelle einer Klasse zurückgegeben wird. (I29597) - Die Verwendung von Haptik ist deaktiviert, wenn Tests unter
RoboElectricausgeführt werden. (I58bd1) - Die
SwipeToReveal-Abstände zwischen Inhalt und Aktionsschaltflächen sowie zwischen dem Symbol und dem Text der Aktionsschaltflächen wurden aktualisiert. (Ic46cb)
Version 1.5.0-alpha11
12. März 2025
androidx.wear.compose:compose-*:1.5.0-alpha11 ist veröffentlicht. Version 1.5.0-alpha11 enthält diese Commits.
API-Änderungen
PagerStatewurde aktualisiert. Die Compose Foundation-KlassePagerStatewurde als Basisklasse entfernt und die AttributecurrentPage,currentPageOffsetFractionundpageCountwurden hinzugefügt. DieGestureInclusion-Schnittstelle wurde aktualisiert und die Methode wurde inignoreGestureStartumbenannt. (I4ae07)- Fügen Sie
requireOffsetzuSwipeToDismissBoxStatehinzu, um den empfohlenen Offset vonSwipeToDismissBoxStatezu erhalten. (I21042) CurvedModifier.semanticshinzugefügt, das anfangs die Inhaltsbeschreibung und den Traversierungsindex unterstützt (I0b093)- Wir haben
CurvedModifier.clearAndSetSemanticshinzugefügt, um die Möglichkeit zu bieten, die Semantik für Kurven zu deaktivieren. BeiCurvedTextwird die Inhaltsbeschreibung weiterhin standardmäßig auf den Text gesetzt, beitimeTextCurvedTextundtimeTextSeparatorwerden die Inhalte jedoch nicht mehr vorgelesen. (I4b568) - Die Standardbehandlung von Wischbewegungen in
HorizontalPagerwurde inPagerDefaults.gestureInclusionumbenannt. Standardmäßig werden jetzt nur Wischbewegungen ignoriert, die am linken Rand der ersten Seite beginnen, und auch nur dann, wenn Talkback deaktiviert ist. In anderen Fällen werden Wischbewegungen standardmäßig nicht vom Pager ignoriert, sodass sie nicht für Handler zum Schließen durch Wischen verfügbar sind. (Iee486) - Rotary-Overscroll für die
rotaryScrollableAPI hinzugefügt. Das Überscrollen und das verschachtelte Scrollen wurden demrotaryScrollable-Wischverhalten hinzugefügt. Durch diese Änderung sollte die Funktionalität für Overscroll und verschachteltes Scrollen zwischen Touch- und Drehscrollen angeglichen werden. (I71926) - Unterstützung für eine Wischzone am Rand in
SwipeToRevealhinzugefügt. Standardmäßig lässt FoundationSwipeToRevealdas Wischen nicht mehr zu, wenn die Geste am Rand beginnt. Das Standardverhalten von Material3SwipeToRevealbesteht nun darin, das Wischen zu unterbinden, wenn die Geste am Rand beginnt undSwipeDirectionauf eine einzelne Richtung festgelegt ist. (I32ef0) - TLC verwendet jetzt standardmäßig leeres „contentPadding“, anstatt das erste und das letzte Element zu zentrieren. (I77ab7)
Fehlerkorrekturen
- Wear Compose-Bibliotheken wurden auf den Kotlin 2.0-Compiler aktualisiert. (I2de79)
- Die gekrümmte
LetterSpacing-Probe auf dem Fundament wurde korrigiert. (Iebf7c)
Version 1.5.0-alpha10
26. Februar 2025
androidx.wear.compose:compose-*:1.5.0-alpha10 ist veröffentlicht. Version 1.5.0-alpha10 enthält diese Commits.
API-Änderungen
- Machen Sie
SwipeToRevealDefaultsöffentlich. (I0c34c) - Wir haben den Parameter
swipeToDismissEdgeZoneFractioninHorizontalPagerersetzt. Stattdessen wurde der neue ParametergestureInclusioneingeführt, mit dem das erforderliche Verhalten zum Schließen durch Wischen erreicht werden kann.gestureInclusionakzeptiert eine Instanz vonGestureInclusion, die entscheidet, ob das nachfolgende Scroll-Ereignis fortgesetzt werden soll oder nicht. Wenn eine Geste zugelassen wird, wird sie vom Pager verarbeitet. Andernfalls wird sie an anderer Stelle verarbeitet, z. B. von einem Handler für das Wischen zum Schließen. Das neue Standardverhalten besteht darin, dass auf dem linken Rand der ersten Seite im Pager keine Wischbewegungen mehr möglich sind. Dadurch kann in diesem Bereich durch Wischen geschlossen werden. Auf allen anderen Seiten kann der Pager alle Touch-Gesten verarbeiten. Das bedeutet, dass die Funktion „Wischen zum Schließen“ nicht ausgelöst werden kann. Wenn Sie das Verhalten „Zum Schließen wischen“ auf allen Seiten erzielen möchten, stellen Sie einfach eine benutzerdefinierteGestureInclusion-Instanz (siehePagerDefaults.disableLeftEdgeOnFirstPage) bereit, die die aktuelle Seite ignoriert. Eine weitere wichtige Änderung ist, dass die Pager-Komponente nicht mehr standardmäßig im Vollbildmodus angezeigt wird. Fügen Sie stattdessenModifier.fillMaxSize()hinzu, um dieses Verhalten zu erzielen. (I9d3aa) - Wir haben
createAnchorsin der Swipe-to-Reveal API(If5999) increateRevealAnchorsumbenannt. - Wir haben
RevealScopeaus der Swipe-to-Reveal-API entfernt. (Ie4ad5) - Wir haben „Revealing“ und „Revealed“ aus der Swipe-to-Reveal-API für
RevealValueentfernt. (I8dbc5) - Wir haben
SwipeDirectionin der Swipe-to-Reveal API inRevealDirectionumbenannt. (I7472f) - Wir haben die Signatur des Parameters
positionalThresholdder FunktionrememberRevealStatevonSwipeToRevealgeändert. (I29c0a) - Wir haben den neuen Parameter
overscrollEffectfürScalingLazyColumn,TransformingLazyColumnundScreenScaffoldhinzugefügt. (I0cee8) - Bei Verwendung von
PagerDefaults#snapFlingBehaviourwurde der ParameterpagerSnapDistancedurch den Int-ParametermaxFlingPagesersetzt, mit dem die maximale Anzahl von Seiten angegeben werden kann, die der Pager durchblättern soll. (I8cfc0) - Wear Pager hat jetzt ein eigenes
PagerScopeanstelle von Compose FoundationPagerScope. (I9195b) - Wir haben Unterstützung für
lineHeightbei gebogenem Text (I1c936) hinzugefügt. - Wir haben
initialAnchorItemIndexundinitialAnchorItemOffsetzuTransformingLazyColumnStateundrememberTransformingLazyColumnStatehinzugefügt, damit die anfängliche Scrollposition inTransformationLazyColumnangegeben werden kann. (I0a0d5) runWithTimingDisabledwird zugunsten vonrunWithMeasurementDisabledeingestellt, da dieser Messwert das Verhalten klarer beschreibt: Alle Messwerte werden pausiert. Außerdem wird dieMicrobenchmarkScope-Superklasse verfügbar gemacht, da dierunWithMeasurementDisabled-Funktion nicht neu deklariert werden kann, um den Zugriff zu öffnen, da sie inline ist. (I9e23b, b/389149423, b/149979716)- Wir haben der API
TransformingLazyColumnItemScrollProgress.Unspecifiedhinzugefügt, um das Boxing fürTransformingLazyColumnItemScrollProgresszu vermeiden. (I0835d)
Fehlerkorrekturen
- KDoc für
CurvedTextStyleverbessern (Id45e3) - Wir haben
SwipeableV2(Teil derSwipeToReveal-Implementierung) intern statt öffentlich, aber auf die Bibliotheksgruppe beschränkt, gemacht. (Idbb94) - Wir haben Tests für
HierarchicalFocusCoordinatorhinzugefügt (I1ce54, b/395548918). - Wir haben Verbesserungen an
SwipeToRevealin den Wear Compose Foundation-Beispielen vorgenommen. (I5f307) - Semantische Daten für die Scrollachse für
verticalScrollAxisRangeinTransformingLazyColumnfür die Barrierefreiheit korrigieren (I68123) - Leistung der drehbaren Haptik auf Wear4+ verbessern, indem unnötige Hintergrund-Threads entfernt werden (I39cfe)
- Ändern Sie
SwipeDismissableNavHostso, dassPredictiveBackNavHostnur ab API 36 verwendet wird. (I59bed) - Wir haben einen Schutz gegen Abstürze beim Zugriff auf die Einstellung „Bewegung reduzieren“ hinzugefügt. (I01e2c)
- Wir haben das Prefetching für
TransformingLazyColumnimplementiert, um Ruckeln zu reduzieren (Icca88).
Version 1.5.0-alpha09
29. Januar 2025
androidx.wear.compose:compose-*:1.5.0-alpha09 ist veröffentlicht. Version 1.5.0-alpha09 enthält diese Commits.
API-Änderungen
- Auf der
CurvedTextStylehaben wir den Zeichenabstand in den Zeichenabstand im Uhrzeigersinn und den Zeichenabstand gegen den Uhrzeigersinn unterteilt. Das ist erforderlich, weil sich Buchstaben, die im Uhrzeigersinn geschrieben werden, von der Grundlinie aus nach außen hin ausbreiten, während sich Buchstaben, die gegen den Uhrzeigersinn geschrieben werden, nach innen hin ausbreiten. Daher ist ein größerer Buchstabenabstand erforderlich. (I4b848) - Die
CompositionLocalLocalReduceMotionwurde vereinfacht und gibt jetzt einen booleschen Wert anstelle einesReduceMotion-Objekts zurück. DieReduceMotion-Schnittstelle wurde eingestellt. Bisherige Aufrufe wieLocalReduceMotion.current.enabled()können durchLocalReduceMotion.currentersetzt werden (I4937f). - In
PagerDefaultswurdesnapAnimationSpecinSnapAnimationSpecumbenannt. (I20c9a)
Version 1.5.0-alpha08
15. Januar 2025
androidx.wear.compose:compose-*:1.5.0-alpha08 ist veröffentlicht. Version 1.5.0-alpha08 enthält diese Commits.
API-Änderungen
- Wir haben alle Wear Compose-Bibliotheken in den Modus „explizite API“ aktualisiert. (Iebf9f)
- Wir haben den Parameter für die Snap-Animation des Pagers in
PagerDefaultsaufgenommen. (Ifff64) SwipeToDismissBoxStatewurde ein Offset-Parameter hinzugefügt. (I586bd)
Fehlerkorrekturen
- Die Haptik der drehbaren Plattform wird jetzt für Wear OS-Versionen nach V (Idb03e) aufgerufen.
Version 1.5.0-alpha07
11. Dezember 2024
androidx.wear.compose:compose-*:1.5.0-alpha07 ist veröffentlicht. Version 1.5.0-alpha07 enthält diese Commits.
API-Änderungen
- Mit
TransformingLazyColumnStatelässt sich jetzt der aktuelle Scrollfortschritt anhand von Ankerartikeleinträgen beobachten. (I72b01) - Wir haben Animationen für das Hinzufügen, Entfernen und Verschieben von Elementen in
TransformingLazyColumnhinzugefügt, sofern sie das neueModifier.animateItemhaben. (Iecb9c) TransformingLazyColumnstellt jetzt Werte fürbeforeContentPaddingundafterContentPaddingbereit. (Iccd5f)TransformingLazyColumnbietet jetzt die lokale KompositionLocalTransformingLazyColumnItemScope, die Komponenten (z. B.CardundButtonin Material3) verwenden können, um sich automatisch zu verändern, wenn sie in einemTransformingLazyColumnplatziert werden. Anrufer können das automatische Morphen mit dem neuenTransformExclusion-Wrapper deaktivieren. (I1652f)
Fehlerkorrekturen
- Wir haben die Mindest- und Höchstgeschwindigkeit für das Schleudern bei der Drehung auf Geräten mit Android 13 und höher aktualisiert. (I33559)
- Wir haben einen Absturz behoben, der aufgetreten ist, wenn ein Element in
TransformingLazyColumnkeine Composables enthielt (Idb99d). - Wir haben die Unterstützung für die Dreh-Haptik auf Android Vanilla Ice Cream für
ScrollFeedbackProviderhinzugefügt. (Ibc553) - Wir haben den Touch-Slop bei der Verwendung von
SwipeToRevealerhöht, um die Wahrscheinlichkeit zu verringern, dass beim vertikalen Scrollen versehentlich eine Wischbewegung ausgelöst wird. (Ic0672) - Wir haben
SwipeDismissableNavHostaktualisiert, sodass ab API 35PredictiveBackHandlerverwendet 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 ist veröffentlicht. Version 1.5.0-alpha06 enthält diese Commits.
API-Änderungen
- Wir haben die
ScrollInfoProviderfürPagerStatevereinfacht, indem wir den Parameterorientationentfernt haben, der nicht mehr benötigt wird. Das neue Verhalten ist, dassTimeTextsowohl beim horizontalen als auch beim vertikalen Paging an Ort und Stelle bleibt. (I71767) TransformingLazyColumnwurde in früheren Versionen eingeführt. Wir entfernen jetzt dieLazyColumn-Aliasse von Wear (die anTransformingLazyColumnweitergeleitet wurden) und verwenden stattdessen den neuen NamenTransformingLazyColumn. Außerdem haben wir dieheight-Property vonTransformingLazyColumnVisibleItemInfoentfernt. Verwenden Sie stattdessenmeasuredHeight. (I0ea1e)- Wir haben die
PagerDefaults.snapFlingBehaviorsnapAnimationSpecvon einerTween- zu einerSpring-Spezifikation geändert.(I10d02, b/349781047, b/303807950) - Wir haben die
LocalReduceMotionCompositionLocalauf die stabile Version (Ia6f32) hochgestuft.
Fehlerkorrekturen
- Wir haben
Modifier.rotaryScrollableaktualisiert, damitfocusTargetWithSemanticsfür eine bessere semantische Unterstützung bei Drehbewegungen verwendet wird. (Ief0a0) - Wir haben die Mindest-API-Abhängigkeit für Compose-Bibliotheken auf 1.7.4 aktualisiert. (I88b46)
- Wir haben das Breiten-Morphing in
TransformingLazyColumnals Workaround für einen Clipping-Fehler deaktiviert. (I3dfb8) - Wir haben einen Fehler behoben, der dazu führte, dass Elemente nach dem Overscrollen mit
TransformingLazyColumnverschwanden (Id7668). - Wir haben
LazyLayoutSemanticsfürTransformingLazyColumnhinzugefügt. (Ia8f56)
Version 1.5.0-alpha05
30. Oktober 2024
androidx.wear.compose:compose-*:1.5.0-alpha05 ist veröffentlicht. Version 1.5.0-alpha05 enthält diese Commits.
API-Änderungen
- Wir haben Unterstützung für
animateScrollToaufTransformingLazyColumnStatehinzugefügt, damit das Scrollen zu einem Element animiert werden kann. (I4097d) - Wir haben
requestScrollToaufTransformingLazyColumnStatehinzugefügt, um das Scrollen auf die nächste Messung zu verschieben. (I20a5e) - Wir haben Unterstützung für
contentPaddinginTransformingLazyColumnhinzugefügt. (I3a69c)
Fehlerkorrekturen
- Wir haben einen Fehler bei der Darstellung von
TransformingLazyColumnbehoben, wenn die Inhaltshöhe geringer als die Bildschirmhöhe ist. (I6c3e1) - Der
ScrollInfoProvderfürTransformingLazyColumnerfasst jetzt das erste Element korrekt. (I1e4a3) TransformingLazyColumnStatespeichert jetzt seinen Status (anchorItemIndexundanchorItemScrollOffset). (I3d265)
Version 1.5.0-alpha04
16. Oktober 2024
androidx.wear.compose:compose-*:1.5.0-alpha04 ist veröffentlicht. Version 1.5.0-alpha04 enthält diese Commits.
API-Änderungen
- Wir haben die Wear Compose Foundation
LazyColumninTransformingLazyColumnumbenannt, damit der Unterschied zur Compose FoundationLazyColumndeutlicher wird. (I0608b) - Unterstützung für Drehregler für horizontale/vertikale Pager hinzugefügt, sodass Nutzer Pager mit Drehreglern bedienen können. (I9770d)
- Wir haben die neue
PagerDefaultsaktualisiert, um deutlich zu machen, dass der Pager standardmäßig an der Seite einrastet. (Iff7d0) TransformingLazyColumnItemScrollProgressist jetzt eine Werteklasse, was die Leistung verbessern sollte. (Ic399e)TransformingLazyColumnunterstützt jetzt standardmäßig die Drehung. (I05206)TransformingLazyColumnStateunterstützt jetztscrollToItem. (I507b3)@ExperimentalWearFoundationApiaus derSwipeToRevealAPI entfernt (I34a66)
Version 1.5.0-alpha03
2. Oktober 2024
androidx.wear.compose:compose-*:1.5.0-alpha03 ist veröffentlicht. Version 1.5.0-alpha03 enthält diese Commits.
API-Änderungen
- Wir haben die Unterstützung für bidirektionales Wischen in
SwipeToRevealhinzugefügt, für seltene Fälle, in denen der aktuelle Bildschirm das Schließen durch Wischen nicht unterstützt. . Standardmäßig wird die Funktion weiterhin nur bei Wischbewegungen von rechts nach links angezeigt. Es wird dringend empfohlen, das Standardverhalten beizubehalten, um Konflikte mit der Funktion „Wischen zum Schließen“ zu vermeiden. (Ifac04) - Wir haben
LazyColumnStateaktualisiert, umcanScrollForwardundcanScrollBackwardzu überschreiben. Dadurch wird das Scrollen jetzt beendet, wenn sich das erste oder letzte Element genau in der Mitte des Bildschirms befindet. (Ia77d7) - Wir haben neue
HorizontalPager- undVerticalPager-Komponenten hinzugefügt, die häufige Probleme wie die Fokusverwaltung und die Interaktion mit dem Systemwischen zum Schließen von Apps auf Wear beheben. (I2902b) - Wir haben Unterstützung für
LazyColumnhinzugefügt, um diekeyundcontentTypedes Clients überlayoutItemsverfügbar zu machen. (I1bd9c)
Fehlerkorrekturen
- Wir haben die Animationen für gebogenen Text mithilfe von Paint-Flags optimiert. (I73a15)
- Wir haben die Dokumentation zum Material-Dialogfeld aktualisiert, um darauf hinzuweisen, dass
onDismissRequestnicht aufgerufen wird, nachdem das Flag „show“ auf „false“ gesetzt wurde. (Ifd8d6) - Wir haben einen Fehler mit der Vignettierung im Material-Dialogfeld (I126bf) behoben.
Version 1.5.0-alpha02
18. September 2024
androidx.wear.compose:compose-*:1.5.0-alpha02 ist veröffentlicht. Version 1.5.0-alpha02 enthält diese Commits.
API-Änderungen
- Wir haben Unterstützung für
LazyColumnin Wear Compose mit unseremScreenScaffoldhinzugefügt und eine Implementierung vonScrollInfoProviderfürLazyColumnStatehinzugefügt. (Ib8d29) - Wir haben
viewportSizezuLazyColumnLayoutInfohinzugefügt. (I4187f)
Fehlerkorrekturen
- Wir haben einen Fehler behoben, sodass das Drehen zum Scrollen in
ScalingLazyColumnjetzt deaktiviert ist, wenn dasuserScrollEnabled-Flag auffalsegesetzt ist. (I490ab, b/360295825) - Wir haben einen Fehler behoben, der zu unerwartetem vertikalen Innenabstand bei gebogenem Text führte. Die Höhe des gekrümmten Texts entspricht jetzt genauer dem tatsächlich vom Text verwendeten Platz. Beachten Sie, dass dies wahrscheinlich Screenshot-Tests mit gekrümmtem Text (Iaa6ef) beeinträchtigt.
- Wir haben eine Fehlerkorrektur für
Dialogrückgängig gemacht, bei der deronDismissRequest-Callback aufgerufen wurde, wennshowDialogauf „false“ gesetzt war. In einigen Fällen wurdeonDismissRequestdadurch mehrmals aufgerufen. (I64656)
Version 1.5.0-alpha01
4. September 2024
androidx.wear.compose:compose-*:1.5.0-alpha01 ist veröffentlicht. Version 1.5.0-alpha01 enthält diese Commits.
API-Änderungen
- Wir haben der Wear Compose Foundation-Bibliothek eine neue
LazyColumnmit den zugehörigen APIsLazyColumnStateundLazyColumnScopehinzugefügt. Dies dient als Grundlage für die Erstellung anpassbarer Skalierungs- und Morphing-Effekte mit Wear Compose. (Ib3b22) - Wir haben eine indexierte Version von
itemsIndexedinLazyColumnScopeals Teil der neuenLazyColumnAPI hinzugefügt. (Ib4a57) - Wir haben
LazyColumn-Modifizierer hinzugefügt, um Skalierungs- und Morphing-Verhalten zu unterstützen. (Ie229a) HierarchicalFocusCoordinatorwurde zur stabilen Version hochgestuft. (I31035)- Wir haben Unterstützung für den Zeichenabstand bei gebogenem Text hinzugefügt. (I3c740)
CurvedLayout.curvedComposablewurde der ParameterrotationLockedhinzugefügt, um zu verhindern, dass Komponenten gedreht werden. (I66898)- Die temporäre
LocalUseFallbackRippleImplementationAPI aus wear material und wear material3 wurde entfernt (I62282). WearDevices.SQUAREaus der@WearPreviewDevices-Multivorschau entfernt (I11c02)
Fehlerkorrekturen
- Bei
SwipeToRevealwerden die angezeigten Elemente jetzt im sichtbaren Bereich des Bildschirms positioniert. Das ist hilfreich, wennSwipeToRevealin einer Liste verwendet wird, da die Elemente so immer interaktiv sind und nie außerhalb des Bildschirms liegen. (I38929) SwipeToRevealsetzt jetztlastActionTypeauf „None“ zurück, wennanimatedToabgeschlossen ist. (I59b03)- Die Dokumentation für den neuen Parameter
rotationLockedaufcurvedComposablewurde verbessert. (Ifbd57) - Ein Absturz, der beim Übergeben von
NaNanScalingLazyColumnSnapFlingBehavior’sperformFlingauftrat, wurde behoben. (Ic13da) - Fehler bei Größenmodifikator für gekrümmtes Layout (I0fedf) behoben
- Wir haben Unterstützung für den in „sp“ angegebenen Buchstabenabstand hinzugefügt. (I9f6e3)
- Wir haben einen Fehler im Material2-Dialogfeld behoben, bei dem der
onDismissRequest-Callback nicht aufgerufen wurde, wenn das Dialogfeld unsichtbar wurde (I64656). LayoutCoordinates.introducesFrameOfReferencewurde inLayoutCoordinates.introducesMotionFrameOfReferenceumbenannt, um den Zweck besser widerzuspiegeln. Die zugehörige Funktion zum Berechnen von Koordinaten basierend auf diesem Flag wurde umbenannt. (I3a330)
Version 1.4
Version 1.4.1
12. Februar 2025
androidx.wear.compose:compose-*:1.4.1 ist veröffentlicht. Version 1.4.1 enthält diese Commits.
Fehlerkorrekturen
- Wir haben einen Schutz gegen Abstürze beim Zugriff auf die globale Einstellung „Bewegung reduzieren“ eingebaut, die auf einigen Plattformen ausgelöst wurde, auf denen diese Einstellung nicht verfügbar war. (I01e2c)
Version 1.4.0
4. September 2024
androidx.wear.compose:compose-*:1.4.0 ist veröffentlicht. Version 1.4.0 enthält diese Commits.
Wichtige Änderungen seit Version 1.3.0
ScalingLazyColumnundPickerunterstützen jetzt standardmäßig die Dreheingabe. Es wird empfohlen, die explizite Dreheingabe zu entfernen und das Standardverhalten des Systems zu verwenden. Verwenden Sie bei Bedarf den ParameterrotaryScrollableBehavior, um das Scroll- oder Snap-Verhalten zu konfigurieren. Für das Snap-Verhalten empfiehlt es sich, das Snap-Verhalten und die Touch-Scrolling-Funktionen mit dem ParameterflingBehavioranzugeben.Modifier.rotaryScrollableist ein neuer Modifikator, der Drehknopfereignisse mit scrollbaren Containern verbindet. So können Nutzer auf ihrem Wear OS-Gerät mit einer Krone oder einer drehbaren Lünette scrollen.SwipeDismissableNavHostbietet jetzt eine Einblendanimation für In-App-Übergänge.PositionIndicatorwird jetzt standardmäßig angezeigt, wenn ein Bildschirm zum ersten Mal angezeigt wird.
Weitere Änderungen
- Eine vollständigere Liste der Änderungen in Version 1.3.0 finden Sie in den Versionshinweisen zu Beta01.
Version 1.4.0-rc01
21. August 2024
androidx.wear.compose:compose-*:1.4.0-rc01 ist veröffentlicht. Version 1.4.0-rc01 enthält diese Commits.
- Wir haben die Compose-Abhängigkeiten auf 1.7.0-rc01 aktualisiert und 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 ist veröffentlicht. Version 1.4.0-beta03 enthält diese Commits.
Fehlerkorrekturen
- Wir haben
Modifier.rotaryScrollableaktualisiert und verwenden jetzt „focusTarget“ anstelle von „focusable“, um die Leistung zu verbessern. (Id294b) - Wir haben ein Problem behoben, bei dem die
ProgressIndicatorihre Ankündigung unterTalkBackwiederholt hat. (I94563) - Wir haben die Baseline-Profile der Wear Compose-Bibliothek aktualisiert. (I3cbc3)
Version 1.4.0-beta02
29. Mai 2024
androidx.wear.compose:compose-*:1.4.0-beta02 ist veröffentlicht. Version 1.4.0-beta02 enthält diese Commits.
Fehlerkorrekturen
- Wir haben die an Screenreader übergebene Grenzbreite für gekrümmten Text erhöht, um Probleme mit dem Abschneiden von Text zu beheben (Id865f).
- Wir haben die Grenze des
HorizontalPageIndicator, das an Screenreader übergeben wurde, eingeschränkt. Zuvor hat der Indikator den gesamten Bildschirm eingenommen (Id8d7a).
Version 1.4.0-beta01
14. Mai 2024
androidx.wear.compose:compose-*:1.4.0-beta01 ist veröffentlicht. Version 1.4.0-beta01 enthält diese Commits.
Mit der Version 1.4-beta01 von Compose für Wear OS wird angezeigt, dass diese Version der Bibliothek alle Funktionen enthält und die API gesperrt ist (sofern nicht als experimentell gekennzeichnet). Wear Compose 1.4 enthält die folgenden neuen Funktionen:
- Wir haben
Modifier.rotaryScrollablehinzugefügt, einen neuen Modifikator, der Dreh-Ereignisse mit scrollbaren Containern verknüpft. So können Nutzer auf ihrem Wear OS-Gerät über eine Krone oder eine drehbare Lünette scrollen. Außerdem unterstützenScalingLazyColumnundPickerjetzt standardmäßig die Eingabe über die drehbare Lünette. Mit dem ParameterrotaryScrollableBehaviorkönnen Sie das Scroll- oder Snap-Verhalten konfigurieren. Für das Snap-Verhalten wird empfohlen, das Snapping auch für das Scrollen per Touch über den ParameterflingBehaviorbereitzustellen. SwipeDismissableNavHostbietet jetzt eine Einblendanimation für In-App-Übergänge.PositionIndicatorwird jetzt standardmäßig angezeigt, wenn ein Bildschirm zum ersten Mal angezeigt wird.SelectableChipundSplitSelectableChipwurden als Variante vonToggleChiphinzugefügt. Verwenden Sie diese mitRadioButton, um auswählbare statt umschaltbarer Semantik für die Barrierefreiheit bereitzustellen.ListHeaderunterstützt jetzt Höhenanpassungen, wenn Inhalte aufgrund großer Schriftgrößen mehr Höhe benötigen.
Fehlerkorrekturen
- Wir haben einen Fehler behoben, durch den bei ausgewählten auswählbaren Chips „Doppeltippen, um von der gewählten Option zur anderen zu wechseln“ angesagt wurde. (I7ed88)
Version 1.4.0-alpha08
1. Mai 2024
androidx.wear.compose:compose-*:1.4.0-alpha08 ist veröffentlicht. Version 1.4.0-alpha08 enthält diese Commits.
API-Änderungen
- Wir haben die neue Rotary API folgendermaßen geändert:
Modifier.rotarywurde inModifier.rotaryScrollableumbenannt, dieRotaryBehavior-Schnittstelle inRotaryScrollableBehaviorund ihre FunktionhandleScrollEventinperformScroll. Außerdem wurdeRotaryScrollableAdapterinRotaryScrollableLayoutInfoProviderumbenannt und diescrollableState-Eigenschaft entfernt. (I0c8a6) - Wir haben zusätzliche Änderungen an der Rotary API vorgenommen:
RotaryScrollableLayoutInfoProviderwurde inRotarySnapLayoutInfoProviderumbenannt, da dieser Anbieter nur für die Drehung mit Einrasten erforderlich ist. Außerdem wurde der Typ des ParameterssnapOffsetinRotaryScrollableDefaults.snapBehavior snapOffsetvon „Int“ in „Dp“ geändert. (Iddebe) - Wir haben den Parameter
clickInteractionSourceaufSplitSelectableChipincontainerInteractionSourceumbenannt. (Ia8f84) - Wir haben die Namen der Klick-Callback-Parameter für
SplitSelectableChipaktualisiert: vononClickzuonSelectionClickund vononBodyClickzuonContainerClick. (I32237)
Fehlerkorrekturen
- Wir haben das horizontale Padding für
PositionIndicatorauf 2 dp (vorher 5 dp) aktualisiert, um einen Fehler zu beheben, bei dem sich diePositionIndicator(Scrollleiste) mit scrollbaren Inhalten überschnitten hat. Diese Änderung führt voraussichtlich dazu, dass vorhandene Screenshots, diePositionIndicatorenthalten, nicht mehr funktionieren, da das Padding geändert wurde. (I57472) - Wir haben die Dokumentation für die neue Rotary API verbessert, indem wir die Unterschiede zwischen Drehgeräten mit niedriger und hoher Auflösung beschrieben haben. (I63abe)
- Wir haben eine Ausnahme für den Bereichsüberschreitungsfehler in
SwipeDismissableNavHostbehoben, 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 ist veröffentlicht. Version 1.4.0-alpha07 enthält diese Commits.
API-Änderungen
- Wir haben
Modifier.rotaryhinzugefügt, einen neuen Modifikator, der Dreh-Ereignisse mit scrollbaren Containern verknüpft. So können Nutzer auf ihrem Wear OS-Gerät über eine Krone oder eine drehbare Lünette scrollen. Außerdem unterstützenScalingLazyColumnund die Auswahl jetzt standardmäßig die Dreheingabe. Es gibt neue Überladungen, die den ParameterrotaryBehaviorenthalten, um die Konfiguration von Scrollen oder Einrasten anzugeben. Wenn der ParameterrotaryBehaviorauf „snap“ gesetzt ist, wird empfohlen, „snap“ auch über den ParameterflingBehaviorfür das Scrollen per Touchscreen anzugeben. (I2ef6f) - Die
NestedScroll-Quellen „Drag“ und „Fling“ werden durchUserInputundSideEffectersetzt, um der erweiterten Definition dieser Quellen Rechnung zu tragen, die jetzt Animationen („Side Effect“) sowie Mausrad und Tastatur („UserInput“) umfasst. (I40579) - Wir haben
SelectableChipundSplitSelectableChiphinzugefügt, um die Unterscheidung zwischen Ein/Aus-Schaltflächen wieSwitch/Checkboxund auswählbaren Steuerelementen wieRadioButtonzu verdeutlichen. Dadurch werden die zuvor hinzugefügten Überladungen vonToggleChip/SplitToggleChipmitselectionControl-Parametern ersetzt. (Ia0217) - Der Sichtbarkeitsmodifikator von
IndeterminateStrokeWidthinProgressIndicatorDefaultswurde auf „Öffentlich“ aktualisiert. (I5b5a4)
Version 1.4.0-alpha06
3. April 2024
androidx.wear.compose:compose-*:1.4.0-alpha06 ist veröffentlicht. Version 1.4.0-alpha06 enthält diese Commits.
Fehlerkorrekturen
- Wir haben einen internen Entwurf für die Unterstützung von Drehreglern hinzugefügt. Dies ist Teil der umfassenderen Bemühungen, das Drehreglerverhalten von Horologist zu AndroidX zu migrieren. (I617d1)
- Wir haben einen internen Entwurf für die Unterstützung von Haptik hinzugefügt. Dies ist Teil der Migration des Drehreglerverhaltens von Horologist zu AndroidX. (I5568a)
Version 1.4.0-alpha05
20. März 2024
androidx.wear.compose:compose-*:1.4.0-alpha05 ist veröffentlicht. Version 1.4.0-alpha05 enthält diese Commits.
API-Änderungen
- Wir haben die Properties
initialCenterItemIndexundinitialCenterItemScrollOffsetvonScalingLazyListStateöffentlich gemacht. (I0c616) - Wir haben die
FullScreenStrokeWidthvonProgressIndicatorDefaultsöffentlich gemacht. (Ibea23)
Fehlerkorrekturen
- Wir haben die Leistung von
PositionIndicatorverbessert, indem wir die Anzahl der Aufrufe vonlayoutInfodurchScalingLazyColumnverringert haben. (Idc83d)
Version 1.4.0-alpha04
6. März 2024
androidx.wear.compose:compose-*:1.4.0-alpha04 ist veröffentlicht. Version 1.4.0-alpha04 enthält diese Commits.
API-Änderungen
- Wir haben eine neue Überladung für
ToggleChipundSplitToggleChiphinzugefügt, die anstelle des ParameterstoggleControlden ParameterselectionControlverwendet. Dieses Attribut sollte mit demRadioButton-Steuerelement verwendet werden, um auswählbare statt umschaltbarer Semantik für die Barrierefreiheit bereitzustellen (I1d6d9). - Wir haben die Parameternamen für die neue
selectionControl-Überladung vononSelectedzuonSelectfürToggleChipundSplitToggleChipaktualisiert (I1a971).
Version 1.4.0-alpha03
21. Februar 2024
androidx.wear.compose:compose-*:1.4.0-alpha03 ist veröffentlicht. Version 1.4.0-alpha03 enthält diese Commits.
API-Änderungen
- Die
Modifier.inspectable-Ettiketiereinheit wurde eingestellt. Diese API führt zu mehr ungültigen Modifikationen als nötig. Daher wird von ihrer Verwendung abgeraten. Entwickler sollten die MethodeinspectableProperties()fürModifierNodeElementimplementieren, wenn sie Modifikatorattribute für Tools verfügbar machen möchten. (Ib3236)
Fehlerkorrekturen
- Wir haben einen Dokumentationsfehler für
WearPreview*-Anmerkungen behoben. (Id526d)
Version 1.4.0-alpha02
7. Februar 2024
androidx.wear.compose:compose-*:1.4.0-alpha02 ist veröffentlicht. Version 1.4.0-alpha02 enthält diese Commits.
Fehlerkorrekturen
- Wir haben einen Fehler bei der Funktion „Zum Aufdecken wischen“ behoben. Es war möglich, mit einer bestätigten Aktion für ein Element zu interagieren (und sie abzubrechen), indem man mit dem Wischen für ein anderes Element begann.(Ide059)
- Wir haben
ListHeaderaktualisiert, um Höhenanpassungen zu unterstützen, wenn Inhalte aufgrund großer Schriftgrößen mehr Höhe benötigen. (I7290c, b/251166127)
Version 1.4.0-alpha01
24. Januar 2024
androidx.wear.compose:compose-*:1.4.0-alpha01 ist veröffentlicht. Version 1.4.0-alpha01 enthält diese Commits.
Neue Funktionen
- Wir haben
SwipeDismissableNavHosteine Eingangsanimation für In-App-Übergänge hinzugefügt.(cfeb79a) PositionIndicatorwird jetzt standardmäßig angezeigt, wenn ein Bildschirm zum ersten Mal angezeigt wird. Diese Änderung wurde eingeführt, um die Einhaltung der Wear-Qualitätsrichtlinien zu erleichtern. Das bedeutet leider, dass Screenshot-Tests auf Bildschirmen, diePositionIndicatorenthalten, aktualisiert werden müssen, daPositionIndicatorzuvor nicht angezeigt wurde. (419cef7)
API-Änderungen
- Wir haben in den Bibliotheken
wear:compose-materialundwear:compose-material3eine neue Ripple-API hinzugefügt, die die eingestellterememberRippleersetzt. Außerdem wird ein temporäresCompositionLocal,LocalUseFallbackRippleImplementationhinzugefügt, um die Material-Komponenten auf die Verwendung der verworfenenrememberRipple/RippleTheme-APIs zurückzusetzen. Diese wird in der nächsten stabilen Version entfernt und ist nur als vorübergehende Migrationshilfe für Fälle gedacht, in denen Sie eine benutzerdefinierteRippleThemeangeben. Weitere Informationen zur Migration und Hintergrundinformationen zu dieser Änderung finden Sie unter developer.android.com. (af92b21) - Wir haben
ColorSchemeso aktualisiert, dass es unveränderlich ist. Dadurch sind einzelne Farbaktualisierungen weniger effizient, die häufigere Verwendung von Farben jedoch effizienter. Der Grund für diese Änderung ist, dass das Aktualisieren einzelner Farben für die meisten Apps kein Hauptanwendungsfall ist. Das ist weiterhin möglich, aber es wird mehr neu zusammengesetzt als zuvor. Dadurch wird die Anzahl der Statusabos im gesamten Material-Code deutlich reduziert, was sich auf die Initialisierungs- und Laufzeitkosten von Standardanwendungsfällen auswirkt. (f5c48b7) - Wear-Material- und Wear-Material3-Komponenten, die ein
MutableInteractionSourcein ihrer API verfügbar machen, wurden aktualisiert, sodass sie jetzt ein nullableMutableInteractionSourceverfügbar machen, das standardmäßig auf „null“ gesetzt ist. Es gibt hier keine semantischen Änderungen: Wenn Sie „null“ übergeben, möchten Sie dasMutableInteractionSourcenicht hochziehen. Es wird bei Bedarf innerhalb der Komponente erstellt. Wenn Sie den Wert auf „null“ ändern, kann es sein, dass für einige Komponenten nie einMutableInteractionSourcezugewiesen wird. Außerdem kann es sein, dass für andere Komponenten nur dann eine Instanz erstellt wird, wenn sie benötigt wird. Das verbessert die Leistung dieser Komponenten. Wenn Sie dieMutableInteractionSource, die Sie an diese Komponenten übergeben, nicht verwenden, sollten Sie stattdessen „null“ übergeben. Es wird auch empfohlen, ähnliche Änderungen in Ihren eigenen Komponenten vorzunehmen. (f8fa920) - Wir haben
rememberExpandableStateaktualisiert, um den maximierten Zustand zu speichern. So wird sichergestellt, dass Daten gespeichert werden, wenn Sie zu einem anderen Bildschirm wechseln, und wiederhergestellt werden, wenn Sie zum ursprünglichen Bildschirm zurückkehren. (5c80095)
Fehlerkorrekturen
- Wir haben die Einstellung
ReduceMotionso aktualisiert, dass ein lebenszyklusbezogener Listener verwendet wird. (7c6b122) - Wir haben den Listener von
TouchExplorationStateProviderso aktualisiert, dass er den Lebenszyklus berücksichtigt (be28b01). - Wir haben die Ebene „materialcore“ für
CompactButtonentfernt, um die Leistung zu verbessern (25db8e9). - Wir haben
BasicSwipeToDismissBoxrobuster gegenüber NaN-Offsets gemacht, um Ausnahmen zu vermeiden (b983739). - Wir haben
BasicSwipeToDismissBoxaktualisiert, damit die Alphawerte im Bereich 0,1 liegen. - Wir haben einen Fehler in den
ToggleButton,SplitToggleButton,Checkbox,SwitchundRadioButtonbehoben, sodass Barrierefreiheitsansagen 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 ist veröffentlicht. Version 1.3.1 enthält diese Commits.
Fehlerkorrekturen
- Wir haben einen Fehler in der Funktion „Zum Aufdecken wischen“ behoben. Es war möglich, mit einer bestätigten Aktion für ein Element zu interagieren (und sie abzubrechen), indem man begann, ein anderes Element zu wischen. (Ide059)
Version 1.3.0
24. Januar 2024
androidx.wear.compose:compose-*:1.3.0 ist veröffentlicht. Version 1.3.0 enthält diese Commits.
Wichtige Änderungen seit Version 1.2.0
- Die Klasse
SwipeToDismissBoxState, die EnumerationSwipeToDismissValueund die ErweiterungsfunktionModifier.edgeSwipeToDismisssind jetzt Teil des Paketsandroidx.wear.compose.foundationanstelle des Paketsandroidx.wear.compose.material. Mit dieser aktualisierten Architektur können Sie die Verarbeitung von Gesten unabhängig von anderen Designüberlegungen implementieren. Material Design-Arbeitsabläufe, z. B. das Anwenden von Farben aus einem konfigurierten Design, werden separat behandelt. - Mit den Klassen
SwipeToRevealCardundSwipeToRevealChipkönnen Sie dierecommended swipe-to-reveal guidanceimplementieren. Die KlasseSwipeToRevealSamplezeigt, wie diese Komponenten verwendet werden. Mit Version 1.3.0-alpha02 wurde eine Änderung eingeführt, die dazu führt, dass
Chip- undToggleChip-Objekte in der Höhe wachsen, um die vom Nutzer ausgewählte Schriftartskalierung besser zu unterstützen. Dadurch kann es zu Clipping kommen. Um dieses Problem zu beheben, wird für dielarge-Form fürMaterialThemejetzt ein größerer Eckenradius verwendet (26 dp statt 24 dp). Die ObjekteChipundToggleChipverwenden diesen neuen Eckenradius, um zu verhindern, dass Inhalte an den Ecken von Chip undToggleChipabgeschnitten werden.- Die meisten
ChipsundToggleChipsbleiben unverändert, da sie standardmäßig eine Höhe von 52 dp haben.Chip- undToggleChip-Objekte, die mehrere Zeilen mit primärem oder sekundärem Labeltext enthalten oder deren Höhe überschrieben wurde, können jedoch dazu führen, dass Screenshot-Tests fehlschlagen.
- Die meisten
Weitere Änderungen
Eine vollständigere Liste der Änderungen in Version 1.3.0 finden Sie in den Versionshinweisen zu Beta01.
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 Wischbewegungserkennung, indem Sie
userSwipeEnabledim ComposableSwipeDismissableNavHostauffalsesetzen. Fügen Sie außerdem eine Schaltfläche ein, mit der Nutzer zum vorherigen Bildschirm zurückkehren können. - Wenn Sie Animationen für einen Positionsindikator während des Einblendens und bei Positionsänderungsanimationen in einer Scrollliste deaktivieren möchten, verwenden Sie ein
SnapSpec-Objekt. - Während Sie darauf warten, dass eine Media-App Inhalte für die Wiedergabe lädt, wird ein leeres
Placeholder-Composable angezeigt. - Wenn Sie eine Sammlung von einblendbaren Elementen auf Abruf erstellen möchten, sollten Sie die experimentelle Klasse
ExpandableStateMappingverwenden.
Version 1.3.0-rc01
10. Januar 2024
androidx.wear.compose:compose-*:1.3.0-rc01 ist veröffentlicht. Version 1.3.0-rc01 enthält diese Commits.
Fehlerkorrekturen
-
Wir haben die große Form
MaterialThemeso aktualisiert, dass sie einen abgerundeten Eckenradius von 26 dp verwendet. Dieser wird jetzt von Chip undToggleChipverwendet. Diese Änderung ist erforderlich, um Höhenanpassungen zu unterstützen, wenn Inhalte aufgrund großer Schriftgrößen mehr Höhe benötigen. Andernfalls werden einige Textinhalte durch die vorhandene Stadionform abgeschnitten.Abbildung 1: An den Ecken abgeschnittener Text. Abbildung 2: Text wird nicht abgeschnitten. Diese Änderung kann zu Problemen bei Screenshot-Tests führen. (I2e6ae)
Version 1.3.0-beta02
13. Dezember 2023
androidx.wear.compose:compose-*:1.3.0-beta02 ist veröffentlicht. Version 1.3.0-beta02 enthält diese Commits.
Fehlerkorrekturen
- Wir haben die beabsichtigte Wischbewegung in
BasicSwipeToDismissBoxwiederhergestellt. Dies wurde in einer früheren Version so geändert, dass der Folienübergang erfolgt, während der Finger den Bildschirm berührt. (Id8e76)
Version 1.3.0-beta01
15. November 2023
androidx.wear.compose:compose-*:1.3.0-beta01 ist veröffentlicht. Version 1.3.0-beta01 enthält diese Commits.
Mit der Version 1.3-beta01 von Compose für Wear OS wird angezeigt, dass diese Version der Bibliothek alle Funktionen enthält und die API gesperrt ist (sofern nicht als experimentell gekennzeichnet). Wear Compose 1.3 enthält die folgenden neuen Funktionen:
SwipeToDismissBoxState,SwipeToDismissValueundModifier.edgeSwipeToDismisswurden zusammen mit der zugrunde liegenden Implementierung zum Schließen durch Wischen inBasicSwipeToDismissBoxvonandroidx.wear.compose.materialzuandroidx.wear.compose.foundationmigriert. So kann die Gestensteuerung für „Wischen zum Schließen“ unabhängig von Material Design verwendet werden, z. B. überSwipeDismissableNavHostinandroidx.wear.compose.navigation.SwipeToDismissBoxausandroidx.wear.compose.materialsollte weiterhin mit Material Design verwendet werden, da Farben aus demMaterialThemeabgerufen und die verbleibende Implementierung an dasBasicSwipeToDismissBoxdelegiert wird.SwipeDismissableNavHostunterstützt jetzt einen neuen ParameteruserSwipeEnabled, mit dem die Wischbewegungserkennung für Bildschirme deaktiviert werden kann, auf denen sie nicht erforderlich ist.BasicSwipeToDismissBoxhat die Fokusverwaltung mitHierarchicalFocusCoordinatorverbessert.SwipeToRevealbietet neueSwipeToRevealCard- undSwipeToRevealChip-Composables in Material, die den empfohlenen UX-Richtlinien fürCardundChipentsprechen. Außerdem wird die sekundäre Aktion unterstützt.DefaultTextStyledeaktiviert jetzt das Schriftarten-Padding, um die Konsistenz auf der Android-Plattform zu gewährleisten.ChipundToggleChippassen ihre Höhe jetzt an Inhalte an, die aufgrund großer Schriftarten für die Barrierefreiheit größer geworden sind.- Für
PositionIndicatorgibt es jetzt individuelle Animationsspezifikationen für das Ein- und Ausblenden sowie für Positionsänderungen. Aus Leistungsgründen empfehlen wir, Einblendung und Positionsänderung zu deaktivieren, wenn sie mit scrollbaren Listen verwendet werden. ExpandableStateMappingbietet eine neue Möglichkeit,ExpandableStateszu generieren, wenn sie bei Bedarf und nicht unbedingt mit einem@Composable-Bereich erstellt werden müssen.Placeholderkann jetzt zurückgesetzt werden, wenn der Inhalt nicht mehr bereit ist. Außerdem gilt die Einstellung „Bewegung reduzieren“ jetzt für den Schimmereffekt und die Abwischbewegung aufPlaceholder.
Bekannte Probleme
PositionIndicatorwird nicht angezeigt, wenn ein Bildschirm zum ersten Mal eingeblendet wird. Wir beabsichtigen, in einer frühen Alphaversion von 1.4 eine Änderung vorzunehmen, sodass das Logo anfangs angezeigt wird, aber ohne Animation.
API-Änderungen
- Wir haben die Foundation-Stufe
SwipeToDismissBoxinBasicSwipeToDismissBoxumbenannt. Dadurch wird die Unterscheidung zwischen der Komponente auf Foundation-Ebene und derSwipeToDismissBoxauf Material-Ebene deutlicher. Letztere ruft Farben ausMaterialThemeab, die in Scrims verwendet werden sollen, und delegiert die verbleibende Implementierung anBasicSwipeToDismissBox. (Ibecfc) - Wir haben
rememberExpandableStateMappingals experimentell gekennzeichnet und die Leistung vonexpandableItemverbessert. (I5f6bc) - Wir haben die
SwipeToRevealAction-Klasse in den MaterialSwipeToRevealCard- und Chip-APIs durch eine slotbasierte API mit den ComposablesSwipeToRevealPrimaryAction,SwipeToRevealSecondaryActionundSwipeToRevealUndoActionersetzt. Beispiele für die Verwendung der neuen API finden Sie im Beispielcode. (Ia8943) - Die Animations-Flags
PositionIndicatorwurden durchAnimationSpec-Parameter ersetzt. Die einzelnen Animationen können deaktiviert werden, indem SiesnapalsAnimationSpecübergeben. (I6c523)
Fehlerkorrekturen
- Wir haben einen Fehler behoben, der durch eingeschränkten gekrümmten Text ausgelöst wurde, wenn die Größe begrenzt ist (I50efe).
- Wir haben einen möglichen NaN-Absturz im Zusammenhang mit
curvedComposable(I970eb) behoben. - Wir haben die Entfernung der Hervorhebung von Positionsänderungen auf
PositionIndicatorrückgängig gemacht. (Ieb424) - Wir haben die Material-Core-Ebene für das 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 ist 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,showFadeOutAnimationundshowPositionAnimation. Die vorherige API wird nicht mehr unterstützt und leitet Aufrufe an die neue API weiter. Aus Leistungsgründen und für eine einheitliche Benutzeroberfläche empfehlen wir, die FlagsshowFadeInAnimationundshowPositionAnimationzu deaktivieren, wennPositionIndicatormit einer scrollbaren Liste verwendet wird. WennPositionIndicatorals 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-Komponenten
SwipeToDismissBoxState,SwipeToDismissValueundedgeSwipeToDismisseingestellt, nachdem die Funktion „Wischen zum Schließen“ zuwear.compose.foundationmigriert wurde. Bitte ersetzen Sie sie durch diewear.compose.foundation-Entsprechungen. (Iee8c9)
Fehlerkorrekturen
- Wir haben die Baseline-Profile für die Wear-Compose-Foundation-, Material- und Navigationsbibliotheken aktualisiert. (Idb060)
- Wir haben eine Verhaltensänderung für
PositionIndicatorrückgängig gemacht, die in einem vorherigen CL eingeführt wurde. Dadurch wurdePositionIndicatoranimiert, wenn ein Bildschirm zum ersten Mal angezeigt wurde. Wir beabsichtigen, eine ähnliche Änderung in einer frühen 1.4-Alphaversion vorzunehmen, sodass dasPositionIndicatoranfangs ohne Animation angezeigt wird. (I41843) - Wir haben einige Leistungsprobleme in
PositionIndicatorbehoben. (I1c654, b/302399827) - Wir haben die Leistung der Standardimplementierung des Touch-Exploration-Statusanbieters optimiert, sodass sie auf
State<Boolean>statt auf abgeleitetem Status basiert. (Ieec4d) - Wir haben
systemGestureExclusion-Rechtecke für Android 13 und höher festgelegt. (Ib1f4b)
Version 1.3.0-alpha07
4. Oktober 2023
androidx.wear.compose:compose-*:1.3.0-alpha07 ist veröffentlicht. Version 1.3.0-alpha07 enthält diese Commits.
API-Änderungen
- Wir haben
PositionIndicatoreinzelne Flags hinzugefügt, um verschiedene Animationen zu steuern:showFadeInAnimation,showFadeOutAnimationundshowPositionAnimation. Die vorherige API wird nicht mehr unterstützt und leitet Aufrufe an die neue API weiter. Aus Leistungsgründen und für eine einheitliche Benutzeroberfläche empfehlen wir, die FlagsshowFadeInAnimationundshowPositionAnimationzu deaktivieren, wennPositionIndicatormit einer scrollbaren Liste verwendet wird. WennPositionIndicatorals 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 zum Einblenden verbessert, indem wir dem primären Aktionstext eine Einblendanimation hinzugefügt und die sekundäre Aktion ein- bzw. ausgeblendet oder die Symbolskalierung bei vollständiger Wischexpansion geändert haben. (Ib7223)
- Es wird empfohlen, dass Aktionen vom Typ „Zum Aufdecken wischen“ barrierefrei sind. Wir haben unseren Beispielen für „Zum Aufdecken wischen“ benutzerdefinierte Aktionen für Bedienungshilfen hinzugefügt. (I42224)
- Wir haben die Leistung von
SwipeToDismissBoxverbessert, unter anderem durch Refactoring, damit die ursprüngliche Logik keine Neuzusammenstellung auslöst. DasSwipeToDismissBoxwird jetzt in voller Bildschirmgröße dargestellt. (Ie0aa2) - Wir haben einen Fehler behoben, durch den
PositionIndicatorfälschlicherweise verschwunden ist. (I2091a) - Die Leistung von
PositionIndicatorwurde durch die Optimierung von Recomposition verbessert. Es wurden neue Flags zur Steuerung der Animationen (fadeIn,fadeOutundpositionChange) hinzugefügt (siehe API-Änderungen) (Ifac7d). - Wir haben Microbenchmark-Tests für
PositionIndicatorhinzugefügt. (Idf875)
Version 1.3.0-alpha06
20. September 2023
androidx.wear.compose:compose-*:1.3.0-alpha06 ist veröffentlicht. Version 1.3.0-alpha06 enthält diese Commits.
Fehlerkorrekturen
- Wir haben Unterstützung für
Modifier.edgeSwipeToDismissmitSwipeToRevealhinzugefügt. (I95774, b/293444286) - Wir haben Beispiele für die Materialien
SwipeToRevealChipundSwipeToRevealCardhinzugefü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 ist veröffentlicht. Version 1.3.0-alpha05 enthält diese Commits.
Fehlerkorrekturen
- Wir haben die Funktion „Zum Aufdecken wischen“ so angepasst, dass jeweils nur ein Element gewischt werden kann. (I3cd7a)
- Die Dokumentation von
ScalingLazyColumnDefaultswurde verbessert, um das tatsächliche Verhalten besser abzubilden. (I886d3)
Version 1.3.0-alpha04
23. August 2023
androidx.wear.compose:compose-*:1.3.0-alpha04 ist veröffentlicht. Version 1.3.0-alpha04 enthält diese Commits.
Neue Funktionen
- Wir haben die Unterstützung für das Rückgängigmachen der sekundären Aktion von
SwipeToRevealhinzugefügt. (I7a22d)
API-Änderungen
- Fügen Sie
HorizontalPageIndicatorin der Wear Material3-Bibliothek hinzu. (Ifee99) - Das Wear Compose-Vorschautool wurde aktualisiert, um die
androidx.wear.tooling.preview-Bibliothek zu verwenden. (Ib036e)
Fehlerkorrekturen
- Ein Fehler wurde behoben, bei dem Modifikatoren in runden Schaltflächen nicht richtig verkettet wurden. (I5e162)
Version 1.3.0-alpha03
9. August 2023
androidx.wear.compose:compose-*:1.3.0-alpha03 ist veröffentlicht. Version 1.3.0-alpha03 enthält diese Commits.
API-Änderungen
- Wir haben zwei neue Composables in Material hinzugefügt, mit denen
SwipeToRevealmit Karten und Chips implementiert werden kann. Diese Composables folgen den empfohlenen UX-Richtlinien für die Komponente und erleichtern Entwicklern die Implementierung vonSwipeToRevealmit den vorhandenen Komponenten in Wear Material. (I7ec65) - Wir haben die
FloatRange-Annotationen als API-Einschränkungen aktiviert, die zuvor in Kommentaren angegeben wurden. (Icb401)
Fehlerkorrekturen
- Wir haben die ursprüngliche Scrolllogik von
ScalingLazyColumninonGloballyPositioned()verschoben. (Ic90f1) - Wir verwenden jetzt
drawWithCacheinPositionIndicator,ProgressIndicatorundSelectionControls, um die Zuweisung von Strichen zu optimieren. (I5f225, b/288234617) - Wir haben die Sichtbarkeit von Häkchen in deaktivierten Status behoben. (Ib25bf)
- Wir haben
Placeholderaktualisiert, damit der Platzhalter zurückgesetzt und angezeigt werden kann, wenn sich der Inhalt nicht mehr im Status „Bereit“ befindet. (Ibd820) - Wir haben einige Fehler bei instabilen
Placeholder-Tests behoben (Idb560).
Version 1.3.0-alpha02
26. Juli 2023
androidx.wear.compose:compose-*:1.3.0-alpha02 ist veröffentlicht. Version 1.3.0-alpha02 enthält diese Commits.
API-Änderungen
- Wir haben
ExpandableStateMappingeingeführt, eine neue Möglichkeit zum Generieren vonExpandableStatesfür Fälle, in denen sie bei Bedarf erstellt werden müssen, nicht unbedingt im Rahmen von@Composable(Iff9e0). SwipeToDismissBoxwurde vomandroidx.wear.compose.material-Paket zumandroidx.wear.compose.foundation-Paket migriert. (I275fb)- Die API-Dateien wurden aktualisiert, um die Unterdrückung der Kompatibilität zu annotieren. (I8e87a, b/287516207)
- Wir haben die Höhenkonstanten für
Chip,CompactChipundToggleChipöffentlich gemacht (Idbfde). - Wir haben die horizontalen und vertikalen Abstände für
ChipundCompactChipöffentlich gemacht. (Ieeaf7) - Es wurde eine Funktion hinzugefügt, mit der die Verarbeitung von Wischbewegungen in
SwipeDismissableNavHostüber den neuen ParameteruserSwipeEnableddeaktiviert werden kann. (Id2a0b, b/230865655) - Wir haben die Wear Compose Navigation-Bibliothek aktualisiert, damit sie die neue
SwipeToDismissBoxaus Wear Compose Foundation verwendet. (I4ff8e)
Fehlerkorrekturen
- Wir haben einen Fehler bei der Z-Reihenfolge behoben, bei dem in
expandedItemnicht die richtigen Inhalte angezeigt wurden, nachdem auf das Verhalten einer Schaltfläche geklickt wurde, wenn sie Schaltflächen enthält. (I1899d, b/289991514) - Fokusbehandlung von
SwipeToDismissBox(und damitSwipeDismissableNavHost) mitHierarchicalFocusCoordinatorverbessern (I45362, b/277852486) - Wir haben die Verarbeitung von Gesten in
SwipeableV2korrigiert . (I89737) - Wir haben die Baseline-Profile für unsere Version 1.2 fertiggestellt. (Id5740)
- Nach der Migration von
SwipeToDismissBoxzu Foundation wird die Material-Implementierung vonSwipeToDismissBoxjetzt an Foundation weitergeleitet und liefert Standardfarbwerte aus dem zugehörigen Theme.(If8451) - Wir haben
ListHeaderSemantik für Überschriften hinzugefügt. (Ic5420) ChipundToggleChippassen ihre Höhe jetzt bei Bedarf an Inhalte an, die aufgrund großer Schriftarten für die Barrierefreiheit größer geworden sind. (Iaf302)- Ein Fehler in der semantischen Rolle des tappbaren Bereichs von
SplitToggleChipwurde behoben. (Ieed3a) - Wenn Sie die Einstellung „Bewegung reduzieren“ aktivieren, wird der Schimmereffekt und die Wischbewegung bei Platzhaltern deaktiviert. (I91046)
StepperundInlineSliderunterstützen jetzt wiederholte Klicks bei langem Drücken, sodass Sie den Wert vonStepperundInlineSliderschnell erhöhen oder verringern können, indem Sie die Schaltflächen „+“ oder „–“ gedrückt halten. (I27359)
Version 1.3.0-alpha01
21. Juni 2023
androidx.wear.compose:compose-*:1.3.0-alpha01 ist veröffentlicht. Version 1.3.0-alpha01 enthält diese Commits.
Fehlerkorrekturen
- Wie in
1.2.0-alpha07und1.2.0-alpha10angekündigt, ändern wir jetztDefaultTextStyle, um das Schriftarten-Padding zu deaktivieren und die Android-Plattform zu vereinheitlichen. Damit wird das Abschneiden von Text bei großen Schriftgrößen in einigen Fällen behoben. Außerdem kann sich dies auf das Bildschirm-Layout auswirken, sodass Screenshot-Tests aktualisiert werden müssen. Hier sehen wir beispielsweise, dass Text abgeschnitten wird (Ic6a86).
- Wenn das Schrift-Padding deaktiviert ist, ist es nicht mehr vorhanden:
- Wir haben
wear.compose.foundationals API-Abhängigkeit vonwear.compose.materialaktualisiert (I72004, b/285404743). - Wir haben einen Fehler in
SwipeToDismissBoxbehoben. Hintergrund- und Inhaltsschlüssel werden jetzt an den Remember-Block übergeben, sodass neue Modifizierer erstellt werden, wenn sich der Inhalt oder Hintergrund ändert. (Ib876c, b/280392104) - Wir haben
TimeTextaktualisiert, sodass das Gebietsschema verwendet wird, wenn das Format für die 12- oder 24-Stunden-Zeit ausgewählt wird. (If4a3d) - Wir haben eine Inkonsistenz bei den Standardparametern von
SwipeToDismissBoxcontentScrimColorbehoben. (I2d70f) - Wir haben die Bewegungserkennung in
SwipeToRevealverbessert. (I28fb7)
Bekannte Probleme
- Die Unterstützung von vom Nutzer konfigurierten Schriftgrößen ist eine Bedienungshilfe. Wir wissen, dass mehrzeilige Chips bei großen Schriftgrößen zu abgeschnittenem Text führen können. Daher werden wir den Chip in einer frühen Alphaversion 1.3 aktualisieren, um in diesen Fällen Höhenanpassungen vorzunehmen.
Version 1.2
Version 1.2.1
18. Oktober 2023
androidx.wear.compose:compose-*:1.2.1 ist veröffentlicht. Version 1.2.1 enthält diese Commits.
Fehlerkorrekturen
- Ein Fehler wurde behoben, durch den
PositionIndicatorfälschlicherweise verschwunden ist. (7a167f)
Version 1.2.0
9. August 2023
androidx.wear.compose:compose-*:1.2.0 ist veröffentlicht. Version 1.2.0 enthält diese Commits.
Wichtige Änderungen seit Version 1.1.0
- Stabile Version von Compose for Wear OS 1.2.0 (weitere Informationen)
- Eine Liste der wichtigsten Änderungen in Wear Compose 1.2 finden Sie in den Versionshinweisen zu Compose for Wear OS 1.2 Beta01.
Version 1.2.0-rc01
26. Juli 2023
androidx.wear.compose:compose-*:1.2.0-rc01 ist veröffentlicht. Version 1.2.0-rc01 enthält diese Commits.
Fehlerkorrekturen
- Wir haben die Baseline-Profile für unsere Version 1.2 (Id5740) fertiggestellt.
Version 1.2.0-beta02
7. Juni 2023
androidx.wear.compose:compose-*:1.2.0-beta02 ist veröffentlicht. Version 1.2.0-beta02 enthält diese Commits.
Neue Funktionen
- Wir haben die neue experimentelle Variable
LocalReduceMotionCompositionLocalhinzugefügt, mit der das Skalieren und Einblenden vonScalingLazyColumndeaktiviert wird. (I58024)
Fehlerkorrekturen
- Wir haben die Baseline-Profile für die Wear Compose-Grundlage und die Materialbibliotheken aktualisiert(I4725d).
- Wir haben eine Inkonsistenz bei den Standardwerten für die Parameter
SwipeToDismissBoxcontentScrimColorbehoben (I2d70f). - Wir haben den Standardwert für
DefaultTextStylekorrigiert, der für die EinstellungIncludeFontPaddingverwendet wird (I737ed).
Version 1.2.0-beta01
24. Mai 2023
androidx.wear.compose:compose-*:1.2.0-beta01 ist veröffentlicht. Version 1.2.0-beta01 enthält diese Commits.
Neuerungen in Compose für Wear OS 1.2
Mit der Version 1.2-beta01 von Compose für Wear OS wird angezeigt, dass diese Version der Bibliothek alle Funktionen enthält und die API gesperrt ist (sofern nicht als experimentell gekennzeichnet). Wear Compose 1.2 enthält die folgenden neuen Funktionen:
expandableItemundexpandableItemssind zwei neueFoundation-Komponenten, die das Maximieren von Elementen in einemScalingLazyColumnunterstützen. Verwenden SieexpandableItemfür ein einzelnes minimierbares Element, z. B. Text, bei dem die Anzahl der Zeilen. Verwenden SieexpandableItemsfür eine Gruppe von maximierbaren Elementen undexpandableButton, um das Erstellen einer Schaltfläche zu vereinfachen, die nach dem Maximieren des Inhalts minimiert wird.HierarchicalFocusCoordinator: Mit dieser experimentellen zusammensetzbaren Funktion können Sie Unterbäume der Komposition als fokussierbar oder nicht fokussierbar markieren.Picker: Die API enthält jetztuserScrollEnabled, um zu steuern, ob die Auswahl für das Scrollen durch den Nutzer aktiv ist.PickerGroup: Eine neue zusammensetzbare Funktion zur gemeinsamen Verarbeitung mehrerer Auswahlen. Der Fokus wird mithilfe derHierarchicalFocusCoordinatorAPI zwischen den Auswahlfeldern verschoben und die automatische Zentrierung von Auswahlfeldelementen wird ermöglicht.Placeholder: Wir haben die Animationen für Glanz und „Abwischen“ aktualisiert. Der Abwischeffekt wird jetzt sofort angewendet, wenn die Inhalte bereit sind.ScalingLazyColumn: Wir habenScalingLazyColumnund zugehörige Klassen vonandroidx.wear.compose.material.ScalingLazyColumnzuandroidx.wear.compose.foundation.lazy.ScalingLazyColumnmigriert. Bitte aktualisieren Sie die App auf die VersionFoundation.Lazy.SwipeToReveal: Wir haben experimentelle Unterstützung für die Wischbewegung zum Aufrufen sekundärer Aktionen hinzugefügt, um das bestehende Muster „Langes Drücken“ zu ergänzen.Stepper– hat jetzt eine Überladung mit einem zusätzlichenenableRangeSemantics-Parameter, um das Deaktivieren der Standardbereichssemantik zu ermöglichen.Previews: Wir haben die folgenden benutzerdefinierten Anmerkungen für die Vorschau von Composables auf Wear-Bildschirmen hinzugefügt:WearPreviewSmallRoundzeigt eine Vorschau des Composables auf einem kleinen, runden Gerät an,WearPreviewLargeRoundauf einem großen runden Gerät undWearPreviewSquareauf einem quadratischen Gerät. Außerdem die folgenden Anmerkungen für das Folgen und die Mehrfachvorschau:WearPreviewFontScalesrendert die Composables auf einem Wear-Gerät mit mehreren Schriftgrößen, währendWearPreviewDevicesdie Composables auf verschiedenen Wear-Geräten rendert.- Wir haben Wear Compose ein
DefaultTextStylehinzugefügt, das die PropertyPlatformTextStyle.includeFontPaddingstandardmäßig auf „true“ setzt (das ist die aktuelle Einstellung). So können wir das standardmäßige Deaktivieren des Schriftarten-Padding mit den Compose-Bibliotheken in einer frühen Alphaversion 1.3 synchronisieren. Weitere Informationen finden Sie unter 1.2.0-alpha10.
Neue Funktionen
- Wir haben experimentelle Unterstützung für deaktivierte Skalierungs- und Fading-Animationen hinzugefügt, wenn die Einstellung „reduce_motion“ aktiviert ist. (I58024)
Fehlerkorrekturen
- Verbesserte Dokumentation für
angularWidthDpinCurvedSize.kt(Iab75c) SwipeDismissableNavHostprotokolliert jetzt eine Warnung mit möglichen Ursachen für einen leeren Backstack. Dies soll unerwartete Abstürze verhindern, die durchIllegalArgumentExceptionverursacht wurden, wenn der Backstack leer war. (I04a81, b/277700155)
Version 1.2.0-alpha10
10. Mai 2023
androidx.wear.compose:compose-*:1.2.0-alpha10 ist veröffentlicht. Version 1.2.0-alpha10 enthält diese Commits.
Neue Funktionen
- Wir haben Unterstützung für „Wischen zum Aufdecken“ hinzugefügt, um auf sekundäre Aktionen zuzugreifen. Dieses Muster ergänzt das Muster „Langes Drücken“, mit dem Nutzer bisher (andere) sekundäre Aktionen aufrufen konnten. (I60862)
API-Änderungen
- Wir haben
RevealScopezu Aktions-Composables inSwipeToRevealhinzugefügt, wodurch der Zugriff auf den Offset ermöglicht wird, an dem zusätzliche Aktionen angezeigt werden. (I3fd56)
Fehlerkorrekturen
- Ein Problem wurde behoben, bei dem
ScalingLazyColumnnach dem Übertragen auf Wear API 33 hängen blieb (Ic4599). - Wir haben einige Leistungsverbesserungen an
PositionIndicatorvorgenommen, um Ruckeln zu reduzieren. (I35e92) - Wir haben einen Fehler in Chip und
CompactChipbehoben, bei dem die semantische Rolle nicht mehr aufRole.Buttonfestgelegt wurde. (I93f91, b/277326264)
Bekannte Probleme
Wir haben einen Fehler in Android Studio gefunden, der dazu führt, dass die Vorschau nicht gerendert wird, wenn sie mit @WearPreviewDevices und @WearPreviewFontScales annotiert ist. Eine Korrektur ist für die baldige Veröffentlichung geplant. Die anderen Annotations für die Wear-Vorschau funktionieren in Android Studio Giraffe 2022.3.1 und höher wie vorgesehen.
In Version 1.2.0-alpha07 haben wir DefaultTextStyle zu Wear Compose hinzugefügt und den vorhandenen Wert PlatformTextStyle.includeFontPadding als „true“ beibehalten. Weitere Informationen finden Sie unter Schriftart-Padding in Compose korrigieren. Wir werden den DefaultTextStyle ändern, um das Schriftarten-Padding in einer frühen Alphaversion von 1.3 zu deaktivieren, damit die Android-Plattform einheitlicher wird. Damit werden einige Fälle von Textbeschneidung bei großen Schriftgrößen behoben. Dies kann sich auch auf das Bildschirm-Layout auswirken, sodass Screenshot-Tests aktualisiert werden müssen. Bei großen Schriftgrößen wird der Text beispielsweise abgeschnitten:
- Wenn das Schrift-Padding deaktiviert ist, ist es nicht mehr vorhanden:
Die neue Einstellung kann jetzt übernommen werden, indem Sie die Typografie in Ihrem Theme überschreiben. Beispielcode
Version 1.2.0-alpha09
19. April 2023
androidx.wear.compose:compose-*:1.2.0-alpha09 ist veröffentlicht. Version 1.2.0-alpha09 enthält diese Commits.
API-Änderungen
angularSizeDpderCurvedModifier-API hinzufügen, um die Winkelbreite in DP festzulegen (I89a52)
Fehlerkorrekturen
- Wir haben Probleme mit der Barrierefreiheit in unseren Zeitachsendemos behoben(Id0eb7).
Version 1.2.0-alpha08
5. April 2023
androidx.wear.compose:compose-*:1.2.0-alpha08 ist veröffentlicht. Version 1.2.0-alpha08 enthält diese Commits.
API-Änderungen
- Wir haben
ExpandableItemsStateinExpandableStateumbenannt. (If85ea) - Wir haben
expandableButtonhinzugefügt, um das Erstellen einer Schaltfläche zu vereinfachen, die minimiert wird, wenn der Inhalt maximiert wird. Außerdem haben wir die Beispiele für Expandable-Anzeigen aktualisiert. (Iae309)
Fehlerkorrekturen
- Die maximierbaren Beispiele wurden verbessert, um mehr Möglichkeiten zu zeigen. Die Animation von
expandableItemwurde so geändert, dass der Inhalt während der Animation zentriert bleibt. (I2f637) ToggleControlswurde aktualisiert, um zusätzliche Neuzusammenstellungen zu vermeiden, wenn die Farben manuell mit „State“ animiert werden. (I5d319)
Version 1.2.0-alpha07
22. März 2023
androidx.wear.compose:compose-*:1.2.0-alpha07 ist veröffentlicht. Version 1.2.0-alpha07 enthält diese Commits.
API-Änderungen
- Wir haben die Komponenten für erweiterbare Elemente (in Version 1.2.0-alpha06 hinzugefügt) von „material“ zu „foundation“ verschoben, da sie keinen sinnvollen Bezug zum
MaterialThemehatten. (Ib0525)
Fehlerkorrekturen
- Wir haben einen Absturz behoben, der auf einem Bildschirm mit
PickerGroupaufgetreten ist. Dazu haben wir dafür gesorgt, dassPickerGroupden Fokus richtig verarbeitet, wenn kein Picker den Fokus hat. Außerdem wurde die Unterstützung für das Scrollen mit dem RSB in unseren Picker-Demos hinzugefügt. (If8c19) - Wir haben die Übergänge zwischen den Dialogen verbessert. Der Intro-Übergang ist jetzt flüssiger und passt besser zum Outro-Übergang. (Ib5af9)
- Wir haben Wear Compose ein
DefaultTextStylehinzugefügt, das die PropertyPlatformTextStyle.includeFontPaddingstandardmäßig auf „true“ setzt (das ist die aktuelle Einstellung). So können wir das standardmäßige Deaktivieren des Schriftarten-Paddings in Zukunft mit den Compose-Bibliotheken synchronisieren. Weitere Informationen finden Sie unter Fix font padding in Compose. (I2aee8) - Eine
UpsideDownCake-Vorschaubereitstellung über „activity-compose“ wurde rückgängig gemacht, die die Veröffentlichung von Apps im Google Play Store blockiert hat. (I6443d)
Version 1.2.0-alpha06
8. März 2023
androidx.wear.compose:compose-*:1.2.0-alpha06 ist 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 platziert werden. (I29200) - Erweiterbare Elemente hinzugefügt: Zwei neue Komponenten, die entweder eine Gruppe von erweiterbaren Elementen in einem
ScalingLazyColumnoder ein einzelnes erweiterbares Element wie Text unterstützen, bei dem sich die Anzahl der Zeilen erhöht. (I95dd5) - Wir haben die folgenden benutzerdefinierten Anmerkungen für die Vorschau von Composables auf Wear-Bildschirmen hinzugefügt:
WearPreviewSmallRoundzeigt eine Vorschau des Composables auf einem kleinen, runden Gerät an,WearPreviewLargeRoundauf einem großen runden Gerät undWearPreviewSquareauf einem quadratischen Gerät. Außerdem die folgenden Anmerkungen für das Folgen und die Mehrfachvorschau:WearPreviewFontScalesrendert die Composables auf einem Wear-Gerät mit mehreren Schriftgrößen, währendWearPreviewDevicesdie Composables auf verschiedenen Wear-Geräten rendert. Um diese Vorabversionen zu verwenden, benötigen Sie die aktuelle Version von Android Studio (Giraffe Canary 6) oder höher. Wenn diese Anmerkungen nicht Ihren Anforderungen entsprechen, können Sie die Vorschau trotzdem verwenden und sie über Parameter anpassen. (I397ff) - Wir haben
HierarchicalFocusCoordinatorals experimentell markiert, da es aufgrund seiner breiten Anwendbarkeit in die Compose-Kernbibliotheken verschoben werden soll. (I3a768)
Fehlerkorrekturen
- Ein Fehler bei
HierarchicalFocusCoordinatorwurde behoben. Wenn die für den ParameterfocusEnabledübergebene Lambda-Funktion geändert wird, wird jetzt die neue Funktion verwendet. (Icb353) - Wir haben die Standardfarbe für deaktivierte Inhalte in
Button,CompactButton,Chip,CompactChipundToggleButtonauf „Hintergrund“ aktualisiert, wenn Primärfarben als Hintergrund verwendet werden. Dadurch wird der Kontrast für eine bessere Barrierefreiheit erhöht. (I527cc)
Version 1.2.0-alpha05
22. Februar 2023
androidx.wear.compose:compose-*:1.2.0-alpha05 ist veröffentlicht. Version 1.2.0-alpha05 enthält diese Commits.
API-Änderungen
- Die
PickerGroupAPI wurde aktualisiert, um die Weitergabe der Mindestanforderungen an die Komponente optional zu ermöglichen. Wenn „true“ festgelegt ist, sind die Mindestbeschränkungen, die von der übergeordneten zusammensetzbaren Funktion übergeben werden, für diePickerGroupzulässig. Wenn auf „false“ gesetzt, werden die Mindestanforderungen fürPickerGroupzurückgesetzt. (I3e046) - Wir haben der Picker API
animateScrollToOptionhinzugefügt, um die programmatische Animation einer bestimmten Picker-Option (I6fe67) zu unterstützen.
Fehlerkorrekturen
- Wir haben
HorizontalPageIndicatoraktualisiert, um linksläufige Layouts zu unterstützen. (Ia4359) - Screenshot-Tests für das rechtsläufige Layout in
HorizontalPageIndicatorwurden hinzugefügt (I6fbb8). SwipeDismissableNavHostTestwurden weitere Tests hinzugefügt, dieTestNavHostControllerverwenden (I61d54).
Version 1.2.0-alpha04
8. Februar 2023
androidx.wear.compose:compose-*:1.2.0-alpha04 ist veröffentlicht. Version 1.2.0-alpha04 enthält diese Commits.
Neue Funktionen
PickerGroupzum gleichzeitigen Verarbeiten mehrerer Auswahlfelder mit der Focus API. Sie verwaltet den Fokus zwischen den verschiedenen Auswahlfeldern, ermöglicht die automatische Zentrierung der Auswahlfelder basierend auf Parametern und ermöglicht Entwicklern, den Fokus zwischen verschiedenen Auswahlfeldern zu ändern, während die Ereignisse aus der Gruppe verarbeitet werden. Im Talkback-Modus wird der Talkback-Fokus durchPickerGroupverwaltet, 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
enableRangeSemantics-Parameter hinzugefügt, um das Deaktivieren der Standardbereichssemantik (Ia61d4) zu ermöglichen.
Fehlerkorrekturen
ScalingLazyColumndarf in einer horizontal scrollenden Seite verschachtelt werden (Iec3f8, b/266555016)- Verbesserung der Stepper-Kdocs und Bereinigung der
StepperTest-Tests. (Ic118e) - Die
androidx.navigation-Abhängigkeit wurde auf Version 2.5.3 aktualisiert (If58ed).
Version 1.2.0-alpha03
25. Januar 2023
androidx.wear.compose:compose-*:1.2.0-alpha03 ist veröffentlicht. Version 1.2.0-alpha03 enthält diese Commits.
API-Änderungen
- Wir haben
ScalingLazyColumn(und zugehörige Klassen) vonandroidx.wear.compose.material.ScalingLazyColumnzuandrdoidx.wear.compose.foundation.lazy.ScalingLazyColumnmigriert. Hier finden Sie ein Beispiel für die Migration. Diese neue Position entspricht eher der voncompose.foundation.lazy.LazyColumnund ist natürlicher, da es sich nicht um eine meinungsbasierte Material-Komponente handelt. Die Änderung erfolgt jetzt in Vorbereitung auf eine neue Material3-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 MaterialScalingLazyColumnausgerichtet sind, wurden eingestellt. Bitte aktualisieren Sie aufFoundation.Lazy ScalingLazyColumn. Außerdem wurdeScalingLazyListLayoutInfodas FeldanchorTypehinzugefügt. (I29d95)ScalingLazyColumnwurde im Wear Compose Material-Paket (I16d34) als veraltet markiert.- Wir haben den Modifier
ScrollAwayso aktualisiert, dass erScalingLazyListStateaus Wear ComposeFoundation.Lazyverwendet. Die Überladung, dieScalingLazyListStateaus Wear Compose Material verwendet hat, ist jetzt veraltet. (Ifc42c) - Wir haben die Dialog-APIs so aktualisiert, dass sie
ScalingLazyListStateanstelle vonFoundation.Lazyverwenden. Außerdem haben wir die Überladungen eingestellt, die MaterialScalingLazyListState(Ic8960) verwendet haben. - Wir haben die Picker APIs aktualisiert, sodass sie
ScalingParamsausFoundation.Lazyverwenden. Die Überladungen, die MaterialScalingParamsverwendet haben, sind jetzt veraltet. (Idc3d8)
Fehlerkorrekturen
- Wir haben einen Fehler behoben, der unnötige Neuzusammenstellungen in
ScalingLazyListState.centerItemIndexverursacht hat. Jetzt werden nur noch Updates gesendet, wenn sich der Wert tatsächlich ändert (Ia9f38). - Wir haben die Leistung von
SwipeToDismissBox(I3933b) verbessert. - Benchmark-Tests für
ScalingLazyColumnin Wear Compose Foundation hinzugefügt (Ie00f9) - Wir haben einige interne
ScalingLazyColumn-Klassenmethoden in Material aktualisiert, damit sie ihre Entsprechungen ausFoundation.Lazyverwenden (I38aab). - Wir haben einige Probleme in Picker-Tests behoben und weitere Tests zum Prüfen des Scrollens mit Offset hinzugefügt (I6ac34).
- Wir haben die
ScalingLazyColumn-Integrationsdemos so migriert, dass sie vonFoundation.Lazyanstelle von MaterialScalingLazyColumn(Ic6caa) abhängen. - Wir haben unserer
DatePicker-Demo (I961cd) optionalefromDate/toDate-Parameter hinzugefügt.
Version 1.2.0-alpha02
11. Januar 2023
androidx.wear.compose:compose-*:1.2.0-alpha02 ist 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 Leerlauf zu wechseln (z.B. über
waitForIdle). Dies kann sich auf Tests auswirken, die einzelne Frames von Layoutanimationen bestätigen. (I8ea08, b/222093277) - Der Parameter
minLineswurde zu Wear Text hinzugefügt, um ein einheitliches Verhalten mitBasicTextzu ermöglichen. (I24874) CompactChipTapTargetPaddingwurde öffentlich gemacht, damit es in der Dokumentation angezeigt wird (If1e70, b/234119038)
Fehlerkorrekturen
- Multiplattform-Builds für
wear.compose-Pakete deaktivieren (Iad3d7) - Kdocs für
scrollToOptionkorrigieren (I6f9a0) PlaceholderState.rememberPlaceholderState()wurde aktualisiert, umrememberUpdatedStatezu verwenden, damit der Status aktualisiert wird, wenn dieonContentReady-Lambda-Funktion ausgeführt wird. (I02635, b/260343754)- Wir haben ein Problem mit Text-Jittering in der Komponente
Pickerbehoben, indem wir die neue Compositing-Strategie vonModifier.graphicsLayergenutzt haben. (I99302) - Wir haben einen Fehler behoben, der in unserer
DatePicker-Demo (I660bd) zu Flimmern geführt hat. - Wir haben die Barrierefreiheit für die 12‑Stunden-Auswahlfelder für Datum und Uhrzeit (I05e12) verbessert.
- Wir haben unsere Demos für die Zeit- und Datumsauswahl aktualisiert, sodass die Auswahlfelder 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 ist veröffentlicht. Version 1.2.0-alpha01 enthält diese Commits.
Neue Funktionen
- Wir haben die experimentelle Platzhalterfunktion aktualisiert. Der „Wipe Off“-Effekt wird jetzt sofort angewendet, wenn die Inhalte bereit sind, anstatt auf den Beginn der nächsten Animationsschleife zu warten. Außerdem haben wir die Animationen für das Einblenden und Abwischen überarbeitet. (I5a7f4)
API-Änderungen
- Wir haben eine
HierarchicalFocusCoordinator-Composable-Funktion hinzugefügt, mit der Unterbäume der Komposition als „fokusfähig“ oder „fokusdeaktiviert“ markiert werden können.(I827cb) - Wir haben eine neue Property hinzugefügt, mit der die semantische Rolle für
ToggleButtonüberschrieben werden kann.(I67132) - Wir haben
TimeTextDefaults.TimeFormat12Hoursaktualisiert, um AM/PM inTimeTextzu entfernen. Dadurch wird der Standardwert vontimeSource-Parametern in derTimeTextAPI geändert. (I1eb7f) - Wir haben die Picker API erweitert, um die Barrierefreiheit für Bildschirme mit Mehrfachauswahl zu verbessern. Es gibt ein neues Attribut
userScrollEnabled, mit dem gesteuert wird, ob die Auswahl für das Scrollen durch den Nutzer aktiv ist. (I3c3aa)
Fehlerkorrekturen
- Die Standardbreite des Rahmens für ein
OutlinedButton/OutlinedCompactButtonwurde von 2 dp auf 1 dp geändert, um den endgültigen UX-Spezifikationen zu entsprechen. (Icf84d) - Um den Effekt zu verringern, dass das erste Element, das einer leeren
ScalingLazyColumnhinzugefügt wird, so aussieht, als würde es an seinen Platz scrollen, haben wir eine geschätzteautoCentering topPaddinghinzugefügt, wenn der Inhalt leer ist. Bei dieser Änderung wird der erforderliche obere Innenabstand berechnet, indem von einem ersten Element mit einer Höhe von 0 dp ausgegangen wird. BeiScalingLazyListAnchorType.ItemStartwird der richtige obere Abstand berechnet. BeiScalingLazyListAnchorType.ItemCenterist die Berechnung falsch, da die Höhe der Elemente erforderlich ist, um die Inhalte richtig zu dimensionieren. Dies führt zu einem kleinen Scroll-in-Place-Effekt basierend auf der tatsächlichen Höhe der Elemente.(I239a4) - Wir haben den Hintergrund-Scrim, der auf die
SwipeToDismiss-Animation angewendet wird, an die Wear-Plattform angepasst. (I9003e) - Wir haben die
PositionIndicator-Verarbeitung vonLazyListStateundScalingLazyListStatefür Listenelemente 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 sind veröffentlicht. Version 1.1.2 enthält diese Commits.
Fehlerkorrekturen
- Wir haben einen Fehler behoben, der unnötige Neuzusammenstellungen in
ScalingLazyListState.centerItemIndexverursacht hat. Jetzt werden nur noch 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 sind veröffentlicht. Version 1.1.1 enthält diese Commits.
Fehlerkorrekturen
PlaceholderState.rememberPlaceholderState()wurde aktualisiert, umrememberUpdatedStatezu verwenden, damit der Status aktualisiert wird, wenn dieonContentReady-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 sind veröffentlicht. Version 1.1.0 enthält diese Commits.
Wichtige Änderungen seit Version 1.0.0
- Stabile Version von Compose for Wear OS 1.1.0 (weitere Informationen)
- Eine Liste der wichtigsten Änderungen in Wear Compose 1.1 finden Sie in den Versionshinweisen zu Compose for Wear OS 1.1 Beta01.
Neue Funktionen
- Wir haben die experimentelle Platzhalterfunktion aktualisiert. Der „Wipe Off“-Effekt wird jetzt sofort angewendet, wenn die Inhalte bereit sind, anstatt auf den Beginn der nächsten Animationsschleife zu warten. Außerdem haben wir die Animationen für das Einblenden und Abwischen überarbeitet. (I5a7f4)
Fehlerkorrekturen
- Die Standardbreite des Rahmens für ein
OutlinedButton/OutlinedCompactButtonwurde von 2 dp auf 1 dp geändert, um den endgültigen UX-Spezifikationen zu entsprechen. (Icf84d) - Um den Effekt zu verringern, dass das erste Element, das einer leeren
ScalingLazyColumnhinzugefügt wird, so aussieht, als würde es an seinen Platz scrollen, haben wir eine geschätzteautoCentering topPaddinghinzugefügt, wenn der Inhalt leer ist. Bei dieser Änderung wird der erforderliche obere Innenabstand berechnet, indem von einem ersten Element mit einer Höhe von 0 dp ausgegangen wird. BeiScalingLazyListAnchorType.ItemStartwird der richtige obere Abstand berechnet. BeiScalingLazyListAnchorType.ItemCenterist die Berechnung falsch, da die Höhe der Elemente erforderlich ist, um die Inhalte richtig zu dimensionieren. Dies führt zu einem kleinen Scroll-in-Place-Effekt basierend auf der tatsächlichen Höhe der Elemente.(I239a4) - Wir haben den Hintergrund-Scrim, der auf die
SwipeToDismiss-Animation angewendet wird, an die Wear-Plattform angepasst.(I9003e) - Wir haben die
PositionIndicator-Verarbeitung vonLazyListStateundScalingLazyListStatefür Listenelemente 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 sind veröffentlicht. Version 1.1.0-rc01 enthält diese Commits.
Fehlerkorrekturen
- Wir haben Regeln für das Baseline-Profil für
Placeholders,ScrollAway,RadioButton,Switch,Checkbox,OutlinedButton,OutlinedCompactButton,OutlinedChipundOutlinedCompactChiphinzugefügt. (I8249c) - Wir haben einen Fehler in
Modifier.scrollAwaybehoben. Wenn der angegebeneitemIndexungültig ist (z. B. wenn der Artikelindex außerhalb des zulässigen Bereichs liegt), wird derTimeTextjetzt trotzdem angezeigt. (I2137a) - Wir haben die
SwipeToDismissBox-Animation an die Plattformimplementierung angepasst. Nach der ersten Squeeze-Animation wird der Bildschirm jetzt nach rechts geschoben, sobald das Schließen ausgelöst wurde. (I41d34) - Zur Optimierung haben wir
Modifier.scrollAwayso aktualisiert, dass nurscrollStateinnerhalb des Messblocks gelesen wird. So wird der Modifier nicht nach jeder erneuten Messung neu zusammengesetzt. (I4c6f1) - Wir haben Dokumentation und ein Beispiel für Platzhalter hinzugefügt, um die richtige Reihenfolge für
Modifier.placeholderundModifier.placeholderShimmerzu zeigen, wenn sie auf dasselbe Composable angewendet werden. (Ie96f4, b/256583229) - Die Standardbreite des Rahmens für ein
OutlinedCompactChip/OutlinedChipwurde von 2 dp auf 1 dp geändert, um den endgültigen UX-Spezifikationen zu entsprechen. (Ib3d8e) - Wir haben einen Fehler in
rememberPickerStatebehoben, bei dem aktualisierte Eingaben nicht gespeichert wurden, sodass Composables nach Änderungen an den Eingaben nicht aktualisiert wurden. (I49ff6, b/255323197) - Wir haben einige Änderungen an der Benutzeroberfläche der Platzhalter vorgenommen: 1) Der Shimmer-Verlauf ist jetzt 1,5-mal so groß wie der Bildschirm. 2) Der Shimmer-Verlauf wird jetzt mit einer kubischen Bézierkurve beschleunigt. 3) Die Wipe-off-Animation wurde beschleunigt (250 ms). (Id29c1)
- Wir haben einen UI-Fehler im Platzhaltereffekt „WipeOff“ behoben, bei dem Chip- und Kartenhintergründe etwas zu früh ausgeblendet wurden, da die Position der Komponente auf dem Bildschirm nicht berücksichtigt wurde. (I2c7cb)
- Wir haben die Darstellung des Platzhalterhintergrunds aktualisiert, um Farben nach Möglichkeit zusammenzuführen, anstatt sie übereinander zu legen. So wird das Risiko verringert, dass die verschiedenen zugeschnittenen Ebenen durch Alpha-Blending dazu führen, dass die darunter liegenden Farben an den Rändern des Platzhalterhintergrunds durchscheinen. (I2ea26)
- Wir haben die Berechnung von
ScalingLazyListState.centerItemIndex/centerItemOffsetkorrigiert. Wenn sich zwei Artikel auf beiden Seiten der Mittellinie des Viewports befinden, wird der Artikel, der am nächsten ist, alscenterItembetrachtet. (I30709, b/254257769) - Wir haben einen Fehler in
ScalingLazyListState.layoutInfo.visibleItemsInfobehoben, der während der Initialisierung vonScalingLazyColumnzu falschen Offsets führte. Jetzt wird eine leere Liste zurückgegeben, bis alle Listenelemente sichtbar sind und die richtigen Offsets haben. Wenn Sie nachScalingLazyListState.layoutInfo.visibleItemsInfo.isNotEmpty()suchen, wird bestätigt, dass die Initialisierung vonScalingLazyColumnabgeschlossen ist und Elemente sichtbar sind. (I3a3b8)
Version 1.1.0-beta01
24. Oktober 2022
androidx.wear.compose:compose-foundation:1.1.0-beta01, androidx.wear.compose:compose-material:1.1.0-beta01 und androidx.wear.compose:compose-navigation:1.1.0-beta01 sind veröffentlicht. Version 1.1.0-beta01 enthält diese Commits.
Was ist in Compose für Wear OS 1.1 enthalten?
Mit der Version 1.1.0-beta01 von Compose für Wear OS wurde darauf hingewiesen, dass diese Version der Bibliothek alle Funktionen enthält und die API gesperrt ist.
- Die Version 1.1 von Wear Compose enthält die folgenden neuen Funktionen:
- Auswahl: Verbesserungen bei der Bedienungshilfe für die Auswahl, sodass Bildschirme mit mehreren Auswahlmöglichkeiten mit Screenreadern navigiert werden können und die Inhaltsbeschreibung zugänglich ist
- Der Parameter „Picker“
contentDescriptionwird jetzt nur für die ausgewählte Picker-Option verwendet und akzeptiert einen String, der null sein kann. Im vorherigen Commit musste eine Zuordnung von der Option zur Inhaltsbeschreibung übergeben werden, aber nur die ausgewählte Option wurde verwendet. - Auswahlelemente sind jetzt immer zentriert ausgerichtet. Damit wird ein Fehler behoben, bei dem das Festlegen von
gradientRatioauf null die Ausrichtung geändert hat. Chip/ToggleChip: Die Standardverläufe fürChip/ToggleChipwurden aktualisiert, um sie an die aktuelle UX-Spezifikation anzupassen.ChipDefaults.gradientBackgroundChipColorsbeginnt jetzt bei 50% der Primärfarbe anstatt bei 32,5%.Chip/ToggleChip– Überladungen zum Ändern von Chip-Formen hinzugefügtChip/Button/ToggleButton: Für Chips und Schaltflächen wurde ein neuer Stil mit Umrisslinie hinzugefügt. Außerdem gibt es neueOutlinedChip- undOutlinedButton-Composables, die ein transparentesChip/Buttonmit einem dünnen Rahmen bieten.- Karte: Die Standard-Farbverläufe für Karten wurden aktualisiert, um sie an die aktuelle UX-Spezifikation anzupassen.
CardDefaults.cardBackgroundPainterbeginnt jetzt bei 30% der primären Farbe und endet bei 20% vononSurfaceVariant(zuvor 20% bis 10% vononSurfaceVariant).ToggleChip.toggleChipColorsändert sich von einem linearen Farbverlauf von 75% der Hintergrundfarbe zu 32,5% der primären Farbe zu 0% der Hintergrundfarbe zu 50% der primären Farbe. Button/ToggleButton: Es wurden Eigenschaften zum Ändern von Schaltflächenformen hinzugefügt.- Design: Eine Reihe der Standardfarben in der
MaterialThemewurden aktualisiert, um die Barrierefreiheit zu verbessern. Die ursprünglichen Farben hatten nicht genügend Kontrast, sodass Nutzer Schwierigkeiten hatten, Chip-, Karten- und Schaltflächenhintergründe von der Hintergrundfarbe des Designs zu unterscheiden. InlineSlider/Stepper– Schaltflächenrollen wurden hinzugefügt, damitTalkbacksie als Schaltflächen erkennen kann.- Gerüst –
PositionIndicatorwird jetzt so positioniert und skaliert, dass nur der benötigte Platz eingenommen wird. Das ist beispielsweise nützlich, wenn semantische Informationen hinzugefügt werden. TalkBack erhält dann die richtigen Grenzen desPositionIndicatorauf dem Bildschirm. CurvedText/TimeText:Modifier.scrollAwaywurde hinzugefügt. Damit wird ein Element basierend auf dem Scrollstatus vertikal in den sichtbaren Bereich oder aus dem sichtbaren Bereich gescrollt (mit Überladungen für die Verwendung mitColumn,LazyColumnundScalingLazyColumn).ScrollAwaywird in der Regel verwendet, um einTimeTextaus dem sichtbaren Bereich zu scrollen, wenn der Nutzer beginnt, eine Liste von Elementen nach oben zu scrollen.CurvedText/TimeText: Unterstützung fürfontFamily,fontStyleundfontSynthesisinCurvedTextStylehinzugefügt, nutzbar aufcurvedTextundbasicCurvedTextCurvedText/TimeText–fontWeightwurde dem Konstruktor und der Kopiermethode fürCurvedTextStylehinzugefügt.ToggleControls: Es wurden animierte Ein/Aus-Schaltflächen fürCheckbox,SwitchundRadioButtonzur Verwendung mitToggleChipundSplitToggleChiphinzugefügt. Diese können anstelle der statischen Symbole verwendet werden, die vonToggleChipDefaultsbereitgestellt werden (switchIcon,checkboxIconundradioIcon).- Platzhalter – Unterstützung für experimentelle Platzhalter hinzugefügt. Dieser Effekt besteht aus drei verschiedenen visuellen Elementen, die zusammenwirken.
- Erstens ein Platzhalter-Hintergrundpinsel-Effekt, der in Containern wie Chips und Karten verwendet wird, um den normalen Hintergrund zu überzeichnen, während auf das Laden von Inhalten gewartet wird.
- Zweitens ein Modifikator (
Modifier.placeholder()), um ein Platzhalter-Widget in Stadionform über den geladenen Inhalten zu zeichnen. - Drittens ein Modifikatorgradient bzw. Schimmereffekt (
Modifier.placeholderShimmer()), der über die anderen Effekte gezeichnet wird, um Nutzern anzuzeigen, dass wir auf das Laden von Daten warten.- Alle diese Effekte sind so konzipiert, dass sie koordiniert und auf orchestrierte Weise schimmern und abgewischt werden.
- Core Compose-Abhängigkeiten von 1.2 auf 1.3 aktualisiert
API-Änderungen
- Schriftparameter (
fontFamily,fontWeight,fontStyleundfontSynthesis) können jetzt direkt als Parameter voncurvedText(Idc422) angegeben werden.
Fehlerkorrekturen
curveTextundbasicCurvedTextfunktionieren jetzt richtig mit TalkBack. Sie haben einen entsprechend großen und platzierten (aber leeren) Compose-UI-Knoten, der mit ihnen verknüpft ist und den Text als Inhaltsbeschreibung verwendet. (I7af7c, b/210721259)- Fehlerkorrektur für
PickerbeiPickerState.repeatedItems = false, um eine explizite Einstellung der autoCentering-Parameter für die interneScalingLazyColumnvon Pickers hinzuzufügen, damit die Option mit dem Index 0 in der Mitte der Ansicht platziert 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 sind veröffentlicht. Version 1.1.0-alpha07 enthält diese Commits.
Neue Funktionen
- Wir haben die Unterstützung für experimentelle Platzhalter hinzugefügt. Dieser Effekt besteht aus drei verschiedenen visuellen Elementen, die zusammenwirken. Erstens ein Platzhalter-Hintergrundpinsel-Effekt, der in Containern wie Chips und Karten verwendet wird, um den normalen Hintergrund zu überzeichnen, während auf das Laden von Inhalten gewartet wird. Zweitens ein Modifikator (
Modifier.placeholder()), um ein Platzhalter-Widget in Stadionform über den geladenen Inhalten zu zeichnen. Drittens ein Modifikatorgradient bzw. Schimmereffekt (Modifier.placeholderShimmer()), der über die anderen Effekte gezeichnet wird, um Nutzern anzuzeigen, dass wir auf das Laden von Daten warten. Alle diese Effekte sind so konzipiert, dass sie koordiniert und auf orchestrierte Weise schimmern und abgewischt werden. (I3c339)
API-Änderungen
- Unterstützung für
fontWeight,fontFamily,fontStyleundfontSynthesisinCurvedTextStylehinzugefügt, nutzbar aufcurvedTextundbasicCurvedText. Mit diesen Parametern können Sie die Schriftart und den Stil für den gekrümmten Text angeben.(Iaa1a8),(I72759) - Der Offset-Parameter von
Modifier.scrollAwaywurde zur besseren Konsistenz mitModifier.offsetauf „Dp“ aktualisiert (zuvor wurde er in Pixeln angegeben). Außerdem wurde sie zur Effizienzsteigerung alsLayoutModifierumgestaltet. (I9f94b) - Im Rahmen der neuen API für Ein/Aus-Schalter haben wir
RadioButton’s circleColorinringColorumbenannt. (I28fa9) - Wir haben animierte
Checkbox-,Switch- undRadioButton-Schaltflächen für die Verwendung mitToggleChipundSplitToggleChiphinzugefügt. Diese können anstelle der statischen Symbole verwendet werden, die vonToggleChipDefaultsbereitgestellt werden (switchIcon,checkboxIconundradioIcon). (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 sind veröffentlicht. Version 1.1.0-alpha06 enthält diese Commits.
Neue Funktionen
- Wir haben
Modifier.scrollAwayhinzugefügt, mit dem ein Element basierend auf dem Scrollstatus vertikal in den sichtbaren Bereich oder aus dem sichtbaren Bereich gescrollt wird (mit Überladungen für die Verwendung mitColumn,LazyColumnundScalingLazyColumn).ScrollAwaywird in der Regel verwendet, um einTimeTextaus dem sichtbaren Bereich zu scrollen, wenn der Nutzer beginnt, eine Liste von Elementen nach oben zu scrollen. (I61766)
Fehlerkorrekturen
- Das
PositionIndicatorwird 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 Grenzen desPositionIndicatorauf 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 sind veröffentlicht. Version 1.1.0-alpha05 enthält diese Commits.
Fehlerkorrekturen
InlineSliderundStepperwurden Schaltflächenrollen hinzugefügt, damit Talkback sie als Schaltflächen erkennen kann. (Icb46c, b/244260275)- Wir haben die Z-Reihenfolge der Positions- und Seitenindikatoren im Scaffold korrigiert. Die Anzeigen werden jetzt über der Vignette platziert und sind daher nicht verdeckt, wenn 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 sind veröffentlicht. 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 nicht genügend Kontrast, sodass Nutzer Schwierigkeiten hatten, Chip-, Karten- und Schaltflächenhintergründe von der Hintergrundfarbe des Designs zu unterscheiden. Die aktualisierten Farben sind „surface“ (0xFF202124->0xFF303133), „onPrimary“ (0xFF202124->0xFF303133), „onSecondary“ (0xFF202124->0xFF303133), „primaryVariant“ (0xFF669DF6->0xFF8AB4F8) und „onError“ (0xFF202124->0xFF000000). Die Farbänderungen sind zwar relativ gering, können sich aber auf vorhandene Screenshot-Tests auswirken. (81ab09)
Fehlerkorrekturen
- Ein Logikfehler in
ScalingLazyColumnwurde behoben, der dazu führen konnte, dass Listen mit einer kleinen (in der Regel genau zwei) Anzahl von Listenelementen nicht 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 sind veröffentlicht. Version 1.1.0-alpha03 enthält diese Commits.
Neue Funktionen
- Wir haben einen neuen umrissenen Stil für
ChipsundButtonssowie neueOutlinedChip- undOutlinedButton-Composables hinzugefügt, die ein transparentesChip/Buttonmit einem dünnen Rahmen bieten. (Id5972)
API-Änderungen
- Überladungen zum Ändern von Schaltflächenformen hinzugefügt (Icccde)
Fehlerkorrekturen
- Wir haben die Größe des Ein/Aus-Schalterbereichs von
ToggleChipkorrigiert, da sie nicht der UX-Spezifikation entsprach. Laut UX-Spezifikation ist ein 4 dp großer Abstand zwischen dem Label und einem 24 × 24 dp großen Ein/Aus-Schaltersymbolbereich erforderlich, was einer Gesamtbreite von 28 dp entspricht. Bei der Implementierung wird jedoch fälschlicherweise ein Umschaltbereich von 36 × 24 dp angegeben. Dadurch werden 8 dp des nutzbaren Textlabelbereichs entfernt. HINWEIS: Durch diesen Fehlerbehebungs-Patch wird zusätzlicher Platz für das Textlabel geschaffen. Dies kann sich (positiv) auf das Textlayout bei überlaufendem Text auswirken. Wenn Sie Screenshot-Tests mitToggleChipshaben, 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 sind veröffentlicht. Version 1.1.0-alpha02 enthält diese Commits.
Neue Funktionen
- Wir haben die Compose for Wear OS-Abhängigkeiten von den Core-Compose-Bibliotheken von Version 1.2.0 auf Version 1.3.0-alpha0X umgestellt.
API-Änderungen
- Überladungen zum Ändern von Chipformen hinzugefügt (I02e87)
Fehlerkorrekturen
- Wir haben die Sichtbarkeit der Vignette beim Einblenden/Ausblenden von Dialogen animiert, um sie an die vorhandene Skalierungsanimation anzupassen. (Ida33e)
- Wir haben einen Fehler behoben, der bei einigen Wischvorgängen beim Scrollen zu einer Division durch Null führen konnte. (I86cb6)
- Ein Fehler in
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 sind veröffentlicht. Version 1.1.0-alpha01 enthält diese Commits.
API-Änderungen
- Der Parameter
contentDescriptionder Auswahl wird jetzt nur für die ausgewählte Auswahloption verwendet und akzeptiert einen String, der Nullwerte zulässt. Zuvor war es erforderlich, eine Zuordnung von der Option zur Inhaltsbeschreibung zu übergeben, aber nur die ausgewählte Option wurde verwendet. (Ife6a7) - Wir haben die Barrierefreiheit der Auswahl verbessert, sodass Bildschirme mit Mehrfachauswahl mit Screenreadern navigiert werden können und die Inhaltsbeschreibung zugänglich ist (I64edb).
Fehlerkorrekturen
- Wir haben die mit der Wear Compose-Bibliothek (I9c694) bereitgestellten Regeln für das Baseline-Profil aktualisiert.
- Wir haben die Richtung des Verlaufs für Chips im Rechts-nach-links-Modus korrigiert. Die Richtung wurde von oben links –> unten rechts zu oben rechts –> unten links geändert. (Ic2e77)
- Wir haben die Standardverläufe für
Chip/ToggleChip/Cardaktualisiert, um sie an die neuesten UX-Spezifikationen anzupassen.ChipDefaults.gradientBackgroundChipColorsbeginnt jetzt bei 50% der Primärfarbe anstatt bei 32,5%.CardDefaults.cardBackgroundPainterwurde aktualisiert und beginnt bei 30% der Primärfarbe und endet bei 20% vononSurfaceVariant(zuvor 20% bis 10%onSurfaceVariant).ToggleChip.toggleChipColorsändert sich von einem linearen Farbverlauf von 75% der Hintergrundfarbe zu 32,5% der Primärfarbe zu 0% der Hintergrundfarbe zu 50% der Primärfarbe. (I43bbd) - Wir haben hinter
Chip/ToggleChipsmit Verlaufs-Hintergründen eine Hintergrundfarbe (MaterialTheme.color.surface) eingefügt, damit sie auch dann gut sichtbar sind, wenn eine helle Farbe als Hintergrund verwendet wird. (Ibe1a4, b/235937657) - Auswahlelemente sind jetzt immer zentriert ausgerichtet. Damit wird ein Fehler behoben, bei dem das Festlegen von
gradientRatioauf null die Ausrichtung geändert hat. (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 sind veröffentlicht. Version 1.0.2 enthält diese Commits.
Fehlerkorrekturen
- Wir haben die Z-Reihenfolge der Positions- und Seitenindikatoren im Scaffold korrigiert. Die Anzeigen werden jetzt über der Vignette platziert und sind daher nicht verdeckt, wenn 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 sind veröffentlicht. Version 1.0.1 enthält diese Commits.
Fehlerkorrekturen
- Ein Logikfehler in
ScalingLazyColumnwurde behoben, der dazu führen konnte, dass Listen mit einer kleinen (in der Regel genau zwei) Anzahl von Listenelementen nicht 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 sind veröffentlicht. Version 1.0.0 enthält diese Commits.
Wichtige Funktionen von Version 1.0.0
- Dies ist die erste stabile Version von Compose für Wear OS (weitere Informationen).
- Compose für Wear OS basiert auf den Compose-Kernbibliotheken und bietet zusätzliche tragbare Komponenten sowie gegebenenfalls alternative Implementierungen von Compose-Kernkomponenten, die auf Wearables zugeschnitten sind.
- Eine Liste der wichtigsten Komponenten in Wear Compose finden Sie in den Versionshinweisen für Compose for Wear OS Beta01.
Fehlerkorrekturen
- Wir haben die Sichtbarkeit der Vignette beim Einblenden/Ausblenden von Dialogen animiert, um sie an die vorhandene Skalierungsanimation anzupassen. (Ida33e)
- Wir haben einen Fehler behoben, der bei einigen Wischvorgängen beim Scrollen zu einer Division durch Null führen konnte. (I86cb6)
- Ein Fehler in
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 sind veröffentlicht. Version 1.0.0-rc02 enthält diese Commits.
Fehlerkorrekturen
- Wir haben die Richtung des Farbverlaufs für Karten im RTL-Modus (von rechts nach links) korrigiert. Bisher war es oben links –> unten rechts, jetzt ist es oben rechts –> unten links. (Ic2e77)
- Wir haben die Standardverläufe für
Chip/ToggleChip/Cardaktualisiert, damit sie der aktuellen UX-Spezifikation entsprechen.ChipDefaults.gradientBackgroundChipColorsbeginnt jetzt bei 50% des Primärwerts anstatt bei 32,5%.CardDefaults.cardBackgroundPainterwurde aktualisiert und beginnt jetzt bei 30% der primären Farbe und endet bei 20% vononSurfaceVariant(zuvor 20% bis 10% aufSurfaceVariant).ToggleChip.toggleChipColorsändert sich von einem linearen Farbverlauf von 75% Oberfläche zu 32,5% primär zu 0% Oberfläche zu 50% primär. (I43bbd) - Wir haben hinter
Chip/ToggleChipsmit Verlaufs-Hintergründen eine Hintergrundfarbe (MaterialTheme.color.surface) eingefügt, damit sie auch dann gut sichtbar sind, wenn eine helle Farbe als Hintergrund verwendet wird. (Ibe1a4, b/235937657) - Wir haben die mit der Wear Compose-Bibliothek (I9c694) bereitgestellten Regeln für das Baseline-Profil aktualisiert.
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 sind veröffentlicht. Version 1.0.0-rc01 enthält diese Commits.
API-Änderungen
- Schnittstellen in Compose-Bibliotheken werden jetzt mit JDK8-Standard-Schnittstellenmethoden erstellt (I5bcf1).
Fehlerkorrekturen
- Wir haben den expliziten Aufruf von
fillMaxWidth()in der Listenüberschrift entfernt, da er nicht erforderlich ist und zu Problemen führen kann, wenn einScalinglazyColumneine Mischung ausListHeader()- undChip()-Komponenten enthält. Die Breite wird dann tendenziell größer oder kleiner, wennListHeader-Elemente ein- oder ausgeblendet werden. (I37144, b/235074035) - Wir haben einen Fehler in der
ScalingLazyColumnbehoben, der dazu führen konnte, dass die Listenelemente erst nach dem Scrollen richtig gerendert wurden, wenn das 0. Listenelement groß genug war (einschließlich Padding) (Ic6159, b/234328517). - Wir haben die
ScalingLazyColumn-Funktion leicht angepasst, wenn Elemente den Bildschirmrand erreichen, um den UX-Spezifikationsupdates zu entsprechen. Alte WerteCubicBezierEasing(0.25f, 0.00f, 0.75f, 1.00f)–> neue WerteCubicBezierEasing(0.3f, 0f, 0.7f, 1f). Wenn Sie das alte Verhalten beibehalten möchten, können Sie diescalingParamsvonScalingLazyColumn(Ie375c) überschreiben. - Wir haben dem
CompactChipeinen Innenabstand hinzugefügt, damit die Größe des Tippbereichs mindestens 48 dp beträgt und die Material-Richtlinien für Bedienungshilfen eingehalten werden. Das kann sich auf alle Layouts auswirken, in denen SieCompactChipsverwenden, da diese zusätzlichen Platz beanspruchen. (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 sind veröffentlicht. Version 1.0.0-beta03 enthält diese Commits.
Neue Funktionen
- Wir haben dafür gesorgt, dass
ScalingLazyColumnim Modus „Compose@Preview“ funktioniert. (I3b3b6, b/232947354)
API-Änderungen
- Wir haben den Standardwert für die Eigenschaft
ScalingLazyColumn.horizontalAlignmentvon „Start“ inCenterHorizontallygeändert, damit Listenelemente, die nicht die gesamte Breite der Spalte ausfüllen, für maximale Sichtbarkeit ausgerichtet werden. So wechseln Sie zurück zum vorherigen VerhaltenssatzhorizontalAlignment = Alignment.Start: (I9ed4b)
Bekannte Probleme
- Die Tipp-/Berührungshöhe von „CompactChip“ ist kleiner als in den Material-Richtlinien für Bedienungshilfen angegeben. Dies wird im nächsten Release (15. Juni) korrigiert. Wenn Sie CompactChip verwenden, wirkt sich das auf Ihre Layouts aus, da CompactChips jetzt oben und unten zusätzlichen Abstand haben. Passen Sie Ihre Layouts an und testen Sie sie oder sehen Sie sich die Fehlerkommentare an, um eine Problemumgehung für das bisherige Verhalten zu finden. (b/234332135)
Fehlerkorrekturen
- Neue Demo zum Animieren des Hinzufügens oder Entfernens eines Starttexts in einem
TimeText. (I16d75) - Tests für
HorizontalPageIndicator.PagesStatehinzufügen (I64ed0) TimeTextwird näher an die UX-Spezifikationen angepasst (Ib7ea1)
Version 1.0.0-beta02
18. Mai 2022
androidx.wear.compose:compose-foundation:1.0.0-beta02, androidx.wear.compose:compose-material:1.0.0-beta02 und androidx.wear.compose:compose-navigation:1.0.0-beta02 sind veröffentlicht. Version 1.0.0-beta02 enthält diese Commits.
Neue Funktionen
- Die Auswahl reagiert jetzt immer auf Scroll-Ereignisse, auch wenn sie sich im schreibgeschützten Modus befindet. So müssen Nutzer nicht erst auf eine Auswahl tippen, bevor sie scrollen können. Im schreibgeschützten Modus werden andere Optionen als die aktuell ausgewählte durch ein Shim in
gradientColorverdeckt. (I72925) - Wir haben das UX-Verhalten von
Chip/ToggleChip/CompactChip/SplitToggleChipgeändert, damitfillMaxWidthnicht mehr standardmäßig ausgeführt wird. Stattdessen werden sie an ihren Inhalt angepasst. Wenn Sie das bisherige Verhalten beibehalten möchten, fügen Sie einfachmodifier = Modifier.fillMaxWidth()(I60a2c, b/232206371) hinzu.
Fehlerkorrekturen
- Der
CurvedTextStyle-Konstruktor, der einTextStyleakzeptiert, berücksichtigt jetzt auchfontWeight. (Dies kann in zukünftigen Überarbeitungen der API dem Konstruktor und den Kopiermethoden hinzugefügt werden.) (Ieebb9) - Verbesserungen beim Wischen vom Displayrand. Wenn
Modifier.edgeSwipeToDismissverwendet wird und ein Wischen nach links vom Randbereich aus ausgelöst wird, wird das Schließen durch Wischen nicht mehr ausgelöst, wenn sich die Wischrichtung nach rechts ändert. Bisher war es möglich, das Schließen durch Wischen auszulösen, indem man zuerst nach links und dann nach rechts wischte.(I916ea) HorizontalPageIndicatorzeigt jetzt bis zu 6 Seiten auf dem Bildschirm an. Wenn es insgesamt mehr als sechs Seiten gibt, wird links oder rechts ein halb so großer Indikator mit einem sanften Übergang zwischen den Seiten angezeigt.(I2ac29)- Verbessertes Standardverhalten beim Einrasten auf
ScalingLazyColumnundPicker(I49539) - Verbesserungen beim Wischen vom Displayrand. Wenn
Modifier.edgeSwipeToDismissverwendet wird, wird das Schließen durch Wischen nur ausgelöst, wenn die erste Berührung am Rand erfolgt und nach rechts gewischt wird. Zuvor war es möglich, das Schließen durch Wischen auszulösen, indem man von einem beliebigen Teil des Bildschirms aus wischte, wenn ein Scrollen den Anfang erreichte.(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 sind veröffentlicht. Version 1.0.0-beta01 enthält diese Commits.
Compose für Wear OS 1.0
Die 1.0.0-beta01 von Compose for Wear OS ist ein wichtiger Meilenstein, da die Bibliothek alle Funktionen bietet und die API gesperrt ist.
Die Wear Compose Material-Komponenten in Version 1.0 umfassen:
- Material-Theme: Wird als Ersatz für
MaterialThemevon Compose for Mobile verwendet und bietet die Farben, Formen und Typografie zum Erstellen von Komponenten auf Wearables, die die UX-Richtlinien von Wear Material Design sofort implementieren. Button,CompactButtonundToggleButton: Die Schaltfläche bietet einen einzelnen Slot für ein Symbol, ein Bild oder einen kurzen Text (maximal 3 Zeichen). Kreisförmig mit empfohlenen Größen für Standard-, große oder kleine Schaltflächen.CompactButtonbietet einen einzelnen Slot für beliebige Inhalte (Symbol, Bild oder Text) und ist kreisförmig mit einer sehr kleinen Hintergrundgröße.CompactButtonhat optional einen transparenten Innenabstand um den Hintergrund, der den anklickbaren Bereich vergrößert.ToggleButtonist eine Schaltfläche, die einen einzelnen Slot für beliebige Inhalte (kurzer Text, Symbol oder Bild) bietet und Ein/Aus-Zustände (aktiviert/deaktiviert) mit Farben und verschiedenen Symbolen hat, um anzuzeigen, ob sie aktiviert ist oder nicht.- Karten: Dienen zur Anzeige von Informationen zu Anwendungen, z. B. Benachrichtigungen. Flexibles Design für verschiedene Anwendungsfälle mit
AppCardundTitleCard, die unterschiedliche Layouts und Unterstützung für Bilder als Karteninhalte oder Hintergründe bieten. - 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 aktivierten/deaktivierten Zustand und einem zusätzlichen
ToggleControl-Slot, in dem ein Symbol wie ein Schalter oder ein Optionsfeld angezeigt wird, um den aktivierten Zustand der Komponente zu kennzeichnen. Außerdem hat dasSplitToggleChipzwei Bereiche, die durch Tippen aktiviert werden können: einen, der angeklickt werden kann, und einen, der umgeschaltet werden kann. - CircularProgressIndicator – Wear Material-Fortschrittsanzeige mit zwei Varianten. Die erste gibt den Anteil des Abschlusses einer laufenden Aufgabe an und unterstützt eine Lücke auf der kreisförmigen Linie zwischen Start- und Endwinkel. Die zweite zeigt einen unbestimmten Fortschritt für eine nicht angegebene Wartezeit an.
- „curvedText“ ist Teil der DSL zur Beschreibung von
CurvedLayoutszusammen mitcurvedRowundcurvedColumn, um Komponenten auf runden Geräten anzuordnen. Weitere Informationen zuCurvedLayoutundCurvedModifierfinden Sie unten unter „Wear Component Foundation“. Sie spielen eine ähnliche Rolle wie Modifiers in der nicht gekrümmten Welt und ermöglichen die Konfiguration verschiedener Aspekte von Layout, Padding, Verläufen usw. - Dialog, Warnung und Bestätigung: Im Dialog wird ein Vollbilddialogfeld angezeigt, das über allen anderen Inhalten liegt und durch Wischen geschlossen werden kann. Es wird ein einzelner Slot verwendet, der Wear Material-Dialoginhalte wie „Alert“ oder „Confirmation“ enthalten soll. „Alert“ ist ein Dialogfeld mit Meinungsäußerungen und Platzhaltern für Symbol, Titel und Nachricht. Es gibt Überladungen für zwei nebeneinander angezeigte negative und positive Schaltflächen oder einen Slot für einen oder mehrere vertikal gestapelte Chips. Bestätigungen sind Dialoginhalte, die eine Nachricht für einen bestimmten Zeitraum anzeigen. Sie hat einen Platzhalter für ein Symbol oder Bild (das animiert sein kann).
- „HorizontalPageIndicator“: Zeigt die horizontale Seitenposition in einer für den Wearable-Formfaktor geeigneten Weise an. Für das gesamte Display konzipiert und zeigt auf runden Geräten einen gebogenen Indikator an. Kann mit dem Accompanist-Seitenbetrachter verwendet werden.
- Symbol: Eine Wear-Implementierung von „Icon“, bei der Farbe und Alpha aus dem Wear Material-Design übernommen werden. Informationen zu klickbaren Symbolen finden Sie unter „Schaltfläche“ oder „Chip“.
- Auswahlfeld: Hier wird eine scrollbare Liste mit Elementen angezeigt, aus denen Sie auswählen können. Standardmäßig werden Elemente in beide Richtungen „unendlich“ wiederholt. Kann im Lesemodus angezeigt werden, um nicht ausgewählte Optionen auszublenden.
- PositionIndicator: Zeigt die Scrollposition oder eine andere Positionsangabe in einer für Wearables geeigneten Form an. Für den Vollbildmodus konzipiert und zeigt auf runden Geräten einen gebogenen Indikator an.
- Scaffold: Implementiert die grundlegende visuelle Layoutstruktur von Wear Material Design. Diese Komponente bietet eine API, mit der mehrere Wear Material-Komponenten (z. B.
TimeText,PositionIndicatorundVignette) zusammengestellt werden können, um den Bildschirm zu erstellen. Außerdem wird eine geeignete Layoutstrategie für die Komponenten festgelegt und es werden die erforderlichen Daten erhoben, damit die Komponenten richtig zusammenarbeiten. - „ScalingLazyColumn“: Eine scrollbare Liste mit Skalierungs-/Fischaugeneffekt, die einen wichtigen Teil der Wear Material Design-Sprache bildet. Bietet Skalierungs- und Transparenzeffekte für die Inhaltselemente.
ScalingLazyColumnist so konzipiert, dass potenziell große Mengen an Inhaltselementen verarbeitet werden können, die nur bei Bedarf materialisiert und zusammengesetzt werden. - Schieberegler: Damit können Nutzer einen Wert aus einem Wertebereich auswählen. Der Auswahlbereich wird als Balken dargestellt, der optional mit Trennzeichen angezeigt werden kann.
- Stepper: Eine Vollbildkomponente, mit der Nutzer aus einer Reihe von Werten auswählen können. Dazu verwenden sie die Schaltflächen zum Erhöhen/Verringern oben und unten auf dem Bildschirm. In der Mitte befindet sich ein Slot für Text oder einen Chip.
- SwipeToDismissBox: Verarbeitet die Wischgeste zum Schließen. Es wird ein einzelner Slot für den Hintergrund (wird nur während der Wischbewegung angezeigt) und die Vordergrundinhalte verwendet. Kann optional mit der androidx-Navigationsbibliothek kombiniert werden, indem
SwipeDismissableNavHostverwendet wird (siehe Wear Compose Navigation-Bibliothek unten). - Text: Eine Wear-Implementierung der Compose Material Text-Komponente, bei der Farbe und Alpha aus dem Wear Material-Design übernommen werden.
- „TimeText“: Eine Komponente, mit der oben auf dem Bildschirm die Uhrzeit und der Anwendungsstatus angezeigt werden. Passt sich an die Bildschirmform an, indem auf runden Bildschirmen gebogener Text verwendet wird.
Vignette: Eine Bildschirmbehandlung für die Verwendung im Scaffold, bei der der obere und untere Bildschirmrand verschwommen dargestellt werden, wenn scrollbare Inhalte verwendet werden.
Die folgenden Komponenten sind ebenfalls in Wear Compose Foundation enthalten:
„CurvedLayout“ – Wear Foundation
CurvedLayoutist ein Layout-Composable, mit dem untergeordnete Elemente in einem Bogen platziert und bei Bedarf gedreht werden. Dies ähnelt einem Zeilenlayout, das in ein Segment eines Kreisrings gekrümmt ist. Der Inhalt vonCurvedLayoutist keine zusammensetzbare Lambda-Funktion, sondern eine domänenspezifische Sprache (DSL). Alle Elemente in der DSL von CurvedLayout unterstützen einen optionalen Modifikatorparameter, der ausCurvedModifiererstellt wird.basicCurvedText: ein Element in der
CurvedLayout-DSL. MitbasicCurvedTextkönnen Entwickler ganz einfach gebogenen Text schreiben, der der Krümmung eines Kreises folgt (normalerweise am Rand eines runden Displays).basicCurvedTextkann nur innerhalb vonCurvedLayouterstellt werden, um eine optimale Nutzererfahrung zu gewährleisten. So kann beispielsweise die Positionierung angegeben undCurvedModifiersverwendet werden. In den meisten Fällen sollte stattdessen „curvedText“ verwendet werden, da es Material-Theming nutzt.curvedComposable: umschließt normalen zusammensetzbaren Inhalt, damit er mit
CurvedLayoutverwendet werden kann. WenncurvedComposablemehrere Elemente enthält, werden sie übereinander gezeichnet (wie bei einem Feld). Wenn Sie mehrere Composables entlang einer Kurve platzieren möchten, umschließen Sie jedes mitcurvedComposable.curvedRow und curvedColumn: Ähnlich wie bei Row und Column können
curvedRowundcurvedColumnin einemCurvedLayoutverschachtelt werden, um Elemente nach Bedarf anzuordnen. Für eincurvedRowkönnen die Richtung des Winkellayouts und die radiale Ausrichtung angegeben werden. Für eincurvedColumnkönnen die Winkelausrichtung und die radiale Richtung angegeben werden.CurvedModifier: Alle gebogenen Komponenten akzeptieren einen „modifier“-Parameter, der mit
CurvedModifiererstellt werden kann. „background“, „size“, „weight“ und „padding“ werden unterstützt.Die folgende Komponente ist ebenfalls in Wear Compose Navigation enthalten:
SwipeDismissableNavHost: Bietet einen Ort in der Compose-Hierarchie für die eigenständige Navigation. Die Rückwärtsnavigation erfolgt durch eine Wischbewegung. Der Inhalt wird in einem
SwipeToDismissBoxangezeigt, das die aktuelle Navigationsebene enthält. Bei einer Wischgeste zum Schließen wird die vorherige Navigationsebene (falls vorhanden) im Hintergrund angezeigt.Weitere Informationen zu den einzelnen Alpha-Releases finden Sie in den vorherigen Versionshinweisen.
API-Änderungen
CurvedModifier.padding*-Funktionen hinzugefügt Mit diesen Attributen wird zusätzlicher Abstand um eine gekrümmte Komponente angegeben. (I4dbb4)- Interne Klasse
CompositionLocal(I42490) entfernt - Wir haben konstante Werte für die Symbolgrößen
Button,CompactButtonundToggleButtonals Richtlinie hinzugefügt (I57cab). - Fügen Sie den Parameter „enabled“ zu
AppCardundTitleCardhinzu. Sie haben jetzt eine ähnliche API wieandroidx.compose.material-Karten. Wenn der Parameter auf „false“ gesetzt ist, ist die Karte nicht anklickbar. (Idc48d, b/228869805)
Fehlerkorrekturen
- Der Stepper deaktiviert jetzt die Schaltflächen zum Verringern und Erhöhen, wenn die Unter- bzw. Obergrenze erreicht wurde, und wendet „ContentAlpha.disabled“ auf „iconColor“ an (I4be9f).
- Wir haben um die Picker-Inhalte herum, die mit einem Farbverlauf gezeichnet werden, ein Padding von 1 dp hinzugefügt, um Ruckeln bei Text zu verhindern, das beim Wischen zu sehen ist. (I0b7b9)
- Screenshot-Tests für
PositionIndicator(I5e8bc) hinzufügen - Weitere Tests für
AppCardundTitleCardhinzufü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 sind veröffentlicht. Version 1.0.0-alpha21 enthält diese Commits.
Neue Funktionen
- Es wurden neue gebogene Modifizierer hinzugefügt, um den Hintergrund eines gebogenen Elements anzugeben:
CurvedModifier.background,.radialGradientBackgroundund.angularGradientBackground(I8f392) - Es kann ein Überlaufmodus für gekrümmten Text angegeben werden („clip“ / „ellipsis“ / „visible“). (I8e7aa)
- Der Modifikator
CurvedModifier.weightwurde hinzugefügt, ähnlich dem in Compose. Diese Eigenschaft kann für untergeordnete Elemente von „curvedRow“ und „CurvedLayout“ (für die Breite) sowie für untergeordnete Elemente von „curvedColumn“ (für die Höhe) verwendet werden. (I8abbd) - Die Modifikatoren
CurvedModifier.size,.angularSizeund.radialSizewurden hinzugefügt, um die Größe eines gekrümmten Elements anzugeben. (I623c7)
API-Änderungen
- Parameter neu anordnen, damit der Hintergrund in der Wear Compose API immer vor der Farbe steht (I43208)
- Die Parameter „clockwise“ und
insideOutwurden entfernt und durch aussagekräftigere Konstanten in neuen Klassen ersetzt. Die Richtung des gekrümmten Layouts kann jetztLayoutDirection-abhängig sein und wird übernommen, wenn sie nicht angegeben ist (If0e6a). - Wir haben
autoCenter: BooleandurchautoCenter: AutoCentringParamsersetzt, um ein API-Problem mit derScalingLazyColumnzu beheben. (Ia9c90) - Wir haben
iconTintColorundtoggleControlTintColorin der gesamten API (Chip/ToggleChip/Dialog/Slider/Stepper/...) iniconColorundtoggleControlColorumbenannt, da die Farbe auf den Slot für das Symbol/die Umschaltsteuerung angewendet wird. (Ied238) PageIndicatorStyle-Enum in Wertklasse umschreiben (I2dc72)- Wir haben einigen Slots in unseren Composables
RowScope/ColumnScope/BoxScopehinzugefügt, um Entwicklern die Layoutvoraussetzungen zu verdeutlichen. 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 AppCard/TitleCard vorgenommen, sodasstimeColorundappColorstandardmäßig aufcontentColorfestgelegt sind. Diese Eigenschaften können bei Bedarf weiterhin einzeln überschrieben werden. (I26b59) SwipeToDismissBoxState.Companion-Objekt auf privat gesetzt (I39e84)- Reihenfolge der Parameter für
InlineSliderundStepperkorrigiert. Eine einfache Änderung zur Einhaltung der API-Richtlinien (I11fec) - Wir haben das Saver-Objekt für
SwipeToDismissBoxStateentfernt, da es nicht verwendet wurde. (Ifb54e) - Wir haben
CompactChipaktualisiert, damit es der aktuellen UX-Spezifikation entspricht. Das Padding wurde auf horizontal = 12.dp und vertikal = 0.dp reduziert. Die Schriftart für das Label wurde von „button“ zu „caption1“ geändert. Die empfohlenen Symbolgrößen sind 20 × 20 Pixel, wenn sowohl Symbol als auch Label vorhanden sind, und 24 × 24 Pixel für einen kompakten Chip mit Symbol. Für den Anwendungsfall mit nur dem Symbol haben wir auch dafür gesorgt, dass das Symbol zentriert ausgerichtet ist. (Iea2be) - Wir haben
ScalingLazyListLayoutInfoeine Reihe neuer Felder hinzugefügt, damit Entwickler den Betrag voncontentPaddingundautoCenteringPaddingkennen, der angewendet wurde. Diese können für Entwickler bei der Berechnung von Fling/Scroll (I7577b) nützlich sein. - Wir haben Ein- und Ausblendungen für Dialog implementiert. Es wurde ein
showDialog-Parameter hinzugefügt und das Dialogfeld steuert jetzt seine eigene Sichtbarkeit. So können Intro- und Outro-Animationen ausgeführt werden, wenn das Dialogfeld ein- oder ausgeblendet wird. Die Outro-Animation wird nicht ausgeführt, wenn der Nutzer den Dialog durch Wischen schließt. Außerdem haben wir dem kürzlich hinzugefügtenSwipeToDismissBox-Overload einen Standardwert für „state“ hinzugefügt. (I682a0) - Zur besseren Unterstützung von Internationalisierung (i18n) und Barrierefreiheit (a11y) haben wir
ToggleChipundSplitToggleChipso geändert, dass sie keinen Standardwert mehr für dentoggleControl-Slot haben. Wir haben auchToggleChipDefaultsgeä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:SwitchIcon()->switchIcon(),CheckboxIcon->checkboxIcon()undRadioIcon()->radioIcon(). So können Entwickler eigeneIcon()-Composables mit einem geeignetencontentDescription-Set erstellen. (I5bb5b) - Wir haben
SwipeDismissableNavHosteinenSwipeDismissableNavHostState-Parameter hinzugefügt. Dadurch wird die Verwendung von Wischgesten am Displayrand auf Bildschirmen unterstützt, die als Navigationsziele verwendet werden, daSwipeToDismissBoxStatejetzt hochgezogen und verwendet werden kann, um sowohlSwipeDismissableNavHostStateals auchModifier.edgeSwipeToDismissauf Bildschirmen zu initialisieren, die Wischgesten am Displayrand erfordern. (I819f5, b/228336555)
Fehlerkorrekturen
- Achten Sie darauf, dass gekrümmte Layouts bei Bedarf aktualisiert werden. (Ie8bfa, b/229079150)
- Fehlerkorrektur für https://issuetracker.google.com/issues/226648931 (Ia0a0a, b/226648931)
- Unnötige experimentelle Anmerkungen wurden 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 sind veröffentlicht. Version 1.0.0-alpha20 enthält diese Commits.
Neue Funktionen
- Fügen Sie den Modifikator
edgeSwipeToDismissfürSwipeToDismisshinzu. Ermöglicht, dassswipeToDismissnur am linken Rand des Darstellungsbereichs aktiv ist. Wird verwendet, wenn der Mittelpunkt des Displays horizontales Paging unterstützen muss, z. B. beim zweidimensionalen Scrollen einer Karte oder beim horizontalen Wischen zwischen Seiten.(I3fcec, b/200699800)
API-Änderungen
- Basisimplementierung von
CurvedModifiers. Dadurch wird die Möglichkeit geschaffen, gebogene Inhalte anzupassen. Es sind jedoch noch keineCurvedModifiersverfügbar und die Möglichkeit, benutzerdefinierte Modifikatoren zu erstellen, ist möglicherweise erst später verfügbar. (I9b8df) - Die Dokumentation für
EdgeSwipe-Modifikatoren und die Standardwerte wurden aktualisiert, um das Verständnis zu verbessern .(I6d00d) - Fügen Sie den
PageIndicator-Slot in das Scaffold ein. Wenn wirPageIndicatordirekt in Scaffold einfügen, können wir dafür sorgen, dass es auf runden Geräten richtig angezeigt wird. (Ia6042) - Entfernen Sie Standardsymbole aus
InlineSlider- und Stepper-Parametern. So können Entwickler die Anforderungen an die Lokalisierung und Barrierefreiheit besser berücksichtigen. Die Verwendung von Standardsymbolen wurde in Demos und Beispielen gezeigt. (I7e6fd) - Trailing- und Leading-Parameternamen durch „Start“ und „End“ in TimeText ersetzen (Iaac32)
- Wir haben eine
SwipeToDismissBox-Überladung mit einemonDismissed-Parameter hinzugefügt, um die gängige Verwendung des Auslösens eines Navigationsereignisses nach Abschluss der Wischbewegung zu unterstützen. (I50353, b/226565726) ExperimentalWearMaterialApi-Anmerkungen aus derTimeText-Nutzung entfernt (Ide520)- Wir haben die
ScalingLazyList/Column-Bereichs- und ‑Informationsschnittstellen als versiegelt markiert, da sie nicht für die Implementierung durch externe Entwickler vorgesehen sind. So können wir in Zukunft neue Elemente hinzufügen, ohne binäre Änderungen vornehmen zu müssen. (I7d99f) - Wir haben dem Picker das neue Attribut
flingBehaviourund die MethodePickerDefaults.flingBehaviour()hinzugefügt, um das Fling-Verhalten zu konfigurieren, z. B. um die RSB-Unterstützung hinzuzufügen.PickerStateimplementiert jetzt dieScrollableState-Schnittstelle. (Ib89c7)
Fehlerkorrekturen
- ART-Baseline-Profilregeln für Wear Compose-Bibliotheken aktualisieren ART kann Profilregeln auf Geräten nutzen, um ein bestimmtes Subset der Anwendung vorab zu kompilieren und so die Leistung der Anwendung zu verbessern. Beachten Sie, dass dies keine Auswirkungen auf debugfähige Anwendungen hat. (Iaa8ef)
- Dokumentation verbessern (I2c051)
Version 1.0.0-alpha19
23. März 2022
androidx.wear.compose:compose-foundation:1.0.0-alpha19, androidx.wear.compose:compose-material:1.0.0-alpha19 und androidx.wear.compose:compose-navigation:1.0.0-alpha19 sind veröffentlicht. Version 1.0.0-alpha19 enthält diese Commits.
API-Änderungen
CurvedRowwurde inCurvedLayoutumbenannt und als Bereich mit einer DSL neu konzipiert. Mit dieser DSL können komplexere gekrümmte Layouts mit einer Reihe von verschachteltencurvedRow- undcurvedColumn-Elementen angegeben werden. Das sind die gekrümmten Layout-Entsprechungen von „Row“ und „Column“. In diesen Layoutelementen können drei Elemente verwendet werden:curvedComposable(zum Hinzufügen eines beliebigen @Composable),basicCurvedText(gekrümmter Text der Foundation) undcurvedText(gekrümmter Text, der das Material der Smartwatch berücksichtigt). (Ib776a)- Machen Sie die Seite für
PositionIndicatorkonfigurierbar. Die Position des einfachen PositionIndicator kann jetzt auf „End“ (layoutrichtungsabhängig), „OppositeRsb“ (berücksichtigt die Bildschirmdrehung, um sich gegenüber der physischen RSB zu positionieren) oder die absoluten Werte „Left“ und „Right“ konfiguriert werden. (I2f1f3) - Für
SwipeToDismissBoxhaben wirSwipeDismissTarget.Original inSwipeToDismissValue.DefaultundSwipeDismissTarget.DismissalinSwipeToDismissValue.Dismissedumbenannt. Außerdem haben wirSwipeToDismissBoxDefaults.BackgroundKeyundSwipeToDismissBoxDefaults.ContentKeyinSwipeToDismissKeys.Backgroundbzw.SwipeToDismissKeys.Contentverschoben. (I47a36) - Wir haben der Auswahl einen schreibgeschützten Modus hinzugefügt, der für Bildschirme mit mehreren Auswahlen gedacht ist, bei denen jeweils nur eine Auswahl bearbeitet werden kann. Wenn die Auswahl schreibgeschützt ist, wird die aktuell ausgewählte Option und ein Label (falls angegeben) angezeigt. (I879de)
SwipeToDismissBoxStatewurde umgestaltet, um den Bereich vonExperimentalWearMaterialApiaufModifier.swipeableundSwipeableStatezu beschränken, die jetzt intern verwendet werden.SwipeToDismissBoxStatehat jetzt die MitgliedercurrentValue,targetValue,isAnimationRunningundsnapTozur Unterstützung gängiger Anwendungsfälle. Bitte teilen Sie uns mit, wenn Sie weitere Eigenschaften benötigen. Außerdem wurde das Verhalten vonSwipeableStatebehoben, wenn der Wisch-Offset innerhalb eines Rundungsfehlers eines Ankers liegt. (I58302)
Fehlerkorrekturen
- Vereinfachter und korrigierter Code, um zu erkennen, ob der Inhalt eines
ScalingLazyColumngescrollt werden kann (wird verwendet, um zu entscheiden, ob eine Scrollleiste angezeigt wird oder nicht) (I7bce0) - Ein Fehler bei der Positionsanzeige wurde behoben, der auftrat, wenn sie mit mehr als einem Status verwendet wurde und zwischen den Status gewechselt wurde (I320b5).
- Wir haben die Typografie/Schriftarten des Standarddesigns für Compose for Wear OS an unsere aktuellen UX-Richtlinien angepasst. Die Schriftgrößen für display1 (40.sp) und display2 (34.sp) sind jetzt kleiner als die vorherigen Werte. Außerdem wurden verschiedene kleinere Änderungen an der Zeilenhöhe und dem Zeilenabstand vorgenommen. (Ie3077)
- Wir haben
SwipeToDismissBoxeinen Widerstand hinzugefügt, sodass Bewegungen nur beim Wischen zum Schließen und nicht in der entgegengesetzten Richtung erfolgen. (Ifdfb9) - Wir haben einige der Standardparameterwerte für die
CircularProgressIndicator-Funktionen geändert, um sie an die UX-Richtlinien für Wear Material Design anzupassen. Bei der Version mit Spinner/unbestimmtem Fortschritt wurden die Größe (40 –> 24 dp), die Farbe des Indikators (primär –> onBackground), die Transparenz der Spurfarbe (30 % –> 10%) und die Strichstärke (4 –> 3 dp) aktualisiert. Bei der Version „Fortschritt/Bestimmt“ wurde die Transparenz von „trackColor“ (30 % –> 10%) aktualisiert. (I659cc) - Wir haben die Standardskalierungsparameter von
ScalingLazyColumnan die neuesten Wear Material Design-UX-Spezifikationen angepasst. Visuell führt dies dazu, dass Listenelemente näher an der Listenmitte skaliert werden, aber am Listenrand weniger skaliert werden als zuvor. (Ica8f3) - Einige Anpassungen an
ScalingLazyColumnDefaults.snapFlingBehaviorzur Verbesserung des Endes der Animation (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 sind veröffentlicht. Version 1.0.0-alpha18 enthält diese Commits.
API-Änderungen
- Mehrere Verbesserungen an PositionIndicator: ShowResult wurde in PositionIndicatorVisibility umbenannt. Einige Leistungsverbesserungen, um Neuberechnungen zu vermeiden, wenn sie nicht erforderlich sind (Iaed9d)
- Die empfohlene Farbgebung für
SplitToggleChipwurde aktualisiert. „SplitToggleChip“-Komponenten haben jetzt einen einfarbigen Hintergrund, wenn sie aktiviert oder deaktiviert sind. Die Farbe des „ToggleControl“-Elements ist der primäre Hinweis darauf, ob die Komponente aktiviert ist oder nicht. Wir haben ein neuesToggleDefaults.splitToggleChipColors()hinzugefügt, um das neue Farbschema zu unterstützen. Außerdem haben wir dietoggleChipColors()-Methoden vereinfacht und die Methode „splitBackgroundOverlayColor“ (I7e66e) entfernt. - Wir haben „unadjustedSize“ zum
ScalingLazyListItemInfohinzugefügt, da es aufgrund der Gleitkomma-Mathematik nicht sicher ist, die ursprüngliche Artikelgröße anhand der skalierten Größe und des Skalierungsfaktors zu berechnen. (I54657, b/221079441) - Fügen Sie
HorizontalPageIndicatorhinzu. Sie stellt eine Gesamtzahl von Seiten und eine ausgewählte Seite dar. Kann je nach Form des Geräts linear oder gebogen sein. Außerdem wird die benutzerdefinierte Form von Indikatoren unterstützt, mit der festgelegt wird, wie die einzelnen Indikatoren visuell dargestellt werden. (Iac898) - Wir haben
PickerStateaktualisiert, damit die numberOfOptions aktualisiert werden kann. Dies unterstützt Anwendungsfälle wieDatePicker, wenn 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 die
PositionIndicatoraus, wenn es sich um eine Scrollleiste handelt und nicht gescrollt werden kann. (Id0a7f) - Aus Gründen der Konsistenz mit Scaffold wird in unserer Dialogkomponente im Vollbildmodus jetzt ein
PositionIndicatorund einVignetteangezeigt. Außerdem verwenden wir jetztScalingLazyColumnanstelle vonColumn. Das bedeutet, dass sich der Dialoginhalt jetzt inScalingLazyListScopebefindet und in der Regel von „item { /* content */ }“ umschlossen werden muss. Der Parameter „verticalArrangement“ wird entsprechend unterstützt. (Idea13) - Wir haben den Namen der
ToggleChip- undSplitToggleChip-Eigenschaft „toggleIcon“ in „toggleControl“ geändert, um sie besser an Material Design anzupassen und Designern und Entwicklern die Verwendung der API zu erleichtern. (If5921, b/220129803) - Wir haben der Wear Material Theme Typology den neuen Eintrag „caption3“ hinzugefügt. „Caption3“ ist eine kleine Schriftart, die für sehr lange Texte wie Rechtstexte verwendet wird. (I74b13, b/220128356)
Fehlerkorrekturen
- Die Einrastanimation soll beendet werden, wenn wir am Ziel sind. (Idb69d)
- Änderungen in PositionIndicator animieren. (I94cb9)
- Aufgrund von UI/UX-Feedback haben wir die automatische Zentrierung
ScalingLazyColumnso geändert, dass nur so viel Platz zur Verfügung gestellt wird, dass die Elemente mit dem IndexScalingLazyListState.initialCenterItemIndexoder höher vollständig in die Mitte des Viewports gescrollt werden können. So können Entwickler ein oder zwei Elemente, die nicht scrollbar sind, in die Mitte platzieren. Das bedeutet, dass einScalingLazyColumnmit autoCenter nicht über dasinitialCenterItemIndex/initialCenterItemScrollOffset(I22ee2) hinaus gescrollt werden kann. - Wir haben eine Demo für eine Datumsauswahl hinzugefügt und einen Fehler in
PickerStatebehoben, bei dem „initiallySelectedOption“ erst angewendet wurde, nachdem die Auswahl angezeigt wurde. (Id0d7e) - Um das Abschneiden breiterer
ScalingLazyColumn-Elemente auf runden Displays zu reduzieren, haben wir den standardmäßigen horizontalen Inhaltsabstand von 8 auf 10 dp erhöht. (I0d609) - Achten Sie darauf, dass
PositionIndicatorbeim 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 sind veröffentlicht. Version 1.0.0-alpha17 enthält diese Commits.
Neue Funktionen
- Wir haben die Unterstützung für Snaps hinzugefügt, die mit
ScalingLazyColumnverwendet werden können. Legen SieflingBehavior = ScalingLazyColumnDefaults.flingWithSnapBehavior(state)fest, um die Snap-Unterstützung zu aktivieren. (I068d3, b/217377069) - Wir haben Demos für die Auswahl hinzugefügt, mit der eine Uhrzeit im 24- oder 12-Stunden-Format ausgewählt werden kann. (Ie5552)
API-Änderungen
- Problem mit benutzerdefinierten Schriftarten und Stilen auf quadratischen Geräten behoben (Iea76e)
TimeText ScalingLazyListLayoutInfohat jetztreverseLayout-,viewportSize- und Ausrichtungseigenschaften, die denen vonLazyListLayoutInfoentsprechen (I4f258, b/217917020).ScalingLazyColumnhat jetzt eineuserScrollEnabled-Property, die der vonLazyListentspricht (I164d0, b/217912513).- Auswahlfelder haben jetzt standardmäßig einen Farbverlauf oben und unten (Iab92a).
Fehlerkorrekturen
- Wir haben
ScalingLazyColumnso geändert, dass nicht mehr der gesamte verfügbare Platz im übergeordneten Element eingenommen wird. Stattdessen wird die Größe anhand der Größe des Inhalts bestimmt. Dadurch wird das Verhalten vonLazyColumnangepasst. Wenn Sie das alte Verhalten wiederherstellen möchten, übergeben SieModifier.fillMaxWidth()/width()/widthIn()anScalingLazyColumn(I51bf8). - Wir haben die Fehlermeldung in
SwipeDismissableNavHost.ktverbessert, 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 sind veröffentlicht. Version 1.0.0-alpha16 enthält diese Commits.
Neue Funktionen
- Fügen Sie
CircularProgressIndicatorhinzu. Fortschrittsanzeigen geben die Dauer eines Prozesses oder eine nicht angegebene Wartezeit an. Unterstützt einen Ausschnitt für TimeText oder andere Komponenten, wenn sie im Vollbildmodus verwendet werden. (Iab8da)
API-Änderungen
- Auswahlfelder haben jetzt einen
flingBehavior-Parameter. Der Standardwert sorgt dafür, dass sie beim Scrollen/Wischen an der nächstgelegenen Option einrasten. (I09000) - Zusätzliche Integer-API für InlineSlider und Stepper (I1b5d6)
Fehlerkorrekturen
- Wir haben den Standardwert für „initialCenterItemIndex“ für
ScalingLazyListStatevon 0 in 1 geändert. Das bedeutet, dass das zweite Listenelement (index == 1) bei der Initialisierung in der Mitte des Viewports platziert wird, sofern es nicht beim Erstellen des Status mitScalingLazyListState.rememberScalingLazyListState(initialCenterItemIndex =)überschrieben wird. Das erste Element (index == 0) wird davor platziert. So wird standardmäßig ein besserer visueller Effekt erzielt, da der Großteil des Darstellungsbereichs mit Listenelementen gefüllt wird. (I0c623, b/217344252) - Wir haben den Standardwert für
ScalingLazyColumnvonextraPaddingauf 10 % reduziert, damit genügend Listenelemente zur Verfügung stehen, aus denen ausgewählt werden kann (auch wenn einige von ihnen in der Größe reduziert werden). So wird vermieden, dass zusätzliche Listenelemente erstellt werden, die möglicherweise nicht im sichtbaren Bereich angezeigt werden. Wenn nicht standardmäßige „scalingParams“ verwendet werden (z. B. eine extremere Skalierung), kann der Entwickler das zusätzliche Padding mitviewportVerticalOffsetResolveranpassen. (I76be4) - Problem mit TimeText in mehreren Zeilen auf quadratischem Gerät behoben (Ibd3fb)
- Wir haben
ScalingLazyColumnso geändert, dass nicht mehr der gesamte verfügbare Platz im übergeordneten Element eingenommen wird. Stattdessen wird die Größe anhand der Größe des Inhalts bestimmt. Dadurch wird das Verhalten vonLazyColumnangepasst. Wenn Sie das alte Verhalten wiederherstellen möchten, übergeben SieModifier.fillMaxSize()anScalingLazyColumn. 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 sind veröffentlicht. Version 1.0.0-alpha15 enthält diese Commits.
API-Änderungen
- Wir haben der
ScalingLazyColumndie neue PropertyautoCenteringhinzugefügt. Wenn „true“ (Standard) festgelegt ist, kann für alle Elemente, einschließlich des ersten und letzten, gescrollt werden, sodass sie in der Mitte des Darstellungsbereichs der Liste sichtbar sind. Wenn Sie die automatische Zentrierung verwenden, sollten Sie die vertikale Inhaltsauffüllung auf 0 dp festlegen. Wenn sowohl „autoCentering“ als auch „verticalContentPadding“ angegeben werden, wird vor dem ersten und nach dem letzten Listenelement zusätzlicher Platz eingefügt, sodass sie noch weiter gescrollt werden können. (I2a282, b/214922490) - Wir haben eine
Dialog-Komponente hinzugefügt, mit der für jedes Composable ein Vollbilddialogfeld ausgelöst werden kann, das über anderen Inhalten angezeigt wird. Wenn das Dialogfeld angezeigt wird, kann es durch Wischen geschlossen werden. Während der Wischbewegung werden die Inhalte des übergeordneten Elements im Hintergrund angezeigt. Der Dialoginhalt sollteAlertoderConfirmationsein (umbenannt von den früheren KomponentenAlertDialogundConfirmationDialog).Alert,ConfirmationundDialogbefinden sich alle im Paketandroidx.wear.compose.material.dialog. „Benachrichtigung“ und „Bestätigung“ können als Navigationsziele verwendet werden. Außerdem wurde ColumnScope bei Bedarf zu den Parametern „Benachrichtigung“ und „Bestätigung“ hinzugefügt. (Ia9014) - Wir haben
onSurfaceVariant2aus den Material-Designfarben für Compose für WearOS entfernt und die Verwendung in der Bibliothek durchonSurfaceVariantersetzt. (Icd592) - Es wurde eine Methode zum programmatischen Auswählen einer Option für das
PickerStatehinzugefügt. Die anfänglich ausgewählte Option kann jetzt auch beim Erstellen einesPickerStateangegeben werden. (I92bdf) - Wir haben die Möglichkeit hinzugefügt, das Fling-Verhalten von
ScalingLazyColumnanzupassen. (I1ad2e, b/208842968) - Wir haben
NavController.currentBackStackEntryAsState()derWear.Compose.Navigation-Mediathek hinzugefügt. (If9028, b/212739653) Modifier.onRotaryScrollEvent()undModifier.onPreRotaryScrollEvent()für Wear-Geräte mit drehbarer Seitentaste 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 sind veröffentlicht. Version 1.0.0-alpha14 enthält diese Commits.
Neue Funktionen
Wir haben
ScalingLazyListStateeine Reihe von Methoden hinzugefügt, damit Entwickler das Scrollen zu bestimmten Listenelementen steuern und das anfängliche Listenelement und den Offset festlegen können.Im Rahmen dieser Änderung haben wir auch die ScalingLazyList so angepasst, dass sie sich am Mittelpunkt des Darstellungsbereichs der ScalingLazyList orientiert und nicht am Anfang.
Der
ScalingLazyListwurde die neue PropertyanchorType: ScalingLazyListAnchorType = ScalingLazyListAnchorType.ItemCenterhinzugefügt, mit der gesteuert werden kann, ob der Mittelpunkt (ScalingLazyListAnchorType.ItemCenter) oderEdge(ScalingLazyListAnchorType.ItemStart) an der Mittellinie des Viewports ausgerichtet werden soll.Daher haben sich
ScalingLazyListItemInfo.offsetundScalingLazyListItemInfo.adjustedOffsetgeändert. Sie geben jetzt den Offset des Elements in Bezug auf die Position des Listenelements und denanchorTypeder Liste an. Für einScalingLazyColumnmitanchorTypevonItemCenterund einem Listenelement, das mit seinem Mittelpunkt auf der Mittellinie des Viewports positioniert ist, wäre der Offset0.Die neuen Methoden sind
scrollTo,animatedScrollTo,centerItemIndexundcenterItemOffset. (I61b61)Wir haben
SwipeDismissableNavHosteinen Handler für die Schaltfläche „Zurück“ hinzugefügt, sodass durch Drücken der Schaltfläche „Zurück“ zur vorherigen Ebene in der Navigationshierarchie gewechselt wird. (I5b086, b/210205624)
Version 1.0.0-alpha13
15. Dezember 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha13, androidx.wear.compose:compose-material:1.0.0-alpha13 und androidx.wear.compose:compose-navigation:1.0.0-alpha13 sind veröffentlicht. Version 1.0.0-alpha13 enthält diese Commits.
API-Änderungen
- Wir haben
RangeIconsintern gemacht (wird intern vonInlineSliderundStepperreferenziert). (I927ec)
Fehlerkorrekturen
Es wurde ein Problem behoben, bei dem
SwipeDismissableNavHostein Ziel der Compose-Hierarchie hinzufügte, bevor es denCREATED-Lebenszyklusstatus erreicht hatte, was zu einemIllegalStateExceptionführte. Diese Korrektur war eine Voraussetzung für die Aktualisierung der Abhängigkeit vonnavigation-composeauf2.4.0-beta02und höher. (I40a2b, b/207328687)Es wurde eine Drawables-Enum-Klasse zum Abrufen von Drawable-Ressourcen in der Wear Compose-Bibliothek hinzugefügt, sodass keine Reflektion mehr erforderlich ist. Ein Fehler wurde behoben, bei dem Bibliotheks-Drawables entfernt wurden, wenn
minifyEnabled=trueodershrinkResources=trueverwendet wurde. (Ib2a98)Tests für
Stepperin Wear Compose hinzugefügt (I2d03a)Es wurden Beispiele für
SwipeDismissableNavHostin Wear Compose Navigation 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 sind veröffentlicht. Version 1.0.0-alpha12 enthält diese Commits.
Neue Funktionen
Wir haben eine Stepper-Komponente hinzugefügt, mit der Nutzer eine Auswahl aus einem Wertebereich treffen können. Der Stepper ist ein Vollbild-Steuerelement mit Schaltflächen zum Erhöhen und Verringern oben und unten sowie einem Slot in der Mitte, in dem entweder ein Chip oder Text angezeigt wird. Die Schaltflächensymbole können bei Bedarf angepasst werden. (I625fe)
Wir haben zwei neue Composables zum Anzeigen von Dialogfeldern hinzugefügt: AlertDialog wartet auf eine Antwort des Nutzers und zeigt einen Titel, ein Symbol, eine Nachricht und entweder a) zwei Schaltflächen für einfache positive/negative Entscheidungen oder b) vertikal gestapelte Chips oder Umschalt-Chips für flexiblere Entscheidungen an. ConfirmationDialog zeigt eine Bestätigung mit einem Zeitlimit an. Dieser einfache Dialog hat Slots für einen Titel und ein (animiertes) Symbol. (Ic2cf8)
API-Änderungen
- Einheiten (Millisekunden) für vorgeschlagene Werte für die Dialogdauer hinzugefügt. (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 sind veröffentlicht. Version 1.0.0-alpha11 enthält diese Commits.
Neue Funktionen
- Wir haben eine Auswahlkomponente hinzugefügt, mit der Nutzer ein Element aus einer scrollenden Liste auswählen können. Standardmäßig wird die Liste der auswählbaren Elemente in beide Richtungen „unendlich“ wiederholt, um den Eindruck eines rotierenden Zylinders zu erwecken, der von der Seite betrachtet wird. In späteren Versionen werden zwei Funktionen hinzugefügt: das Einrasten auf einem Wert nach einem Wischen/Fling und das Hinzufügen einer Funktion zu PickerState zum Festlegen/Scrollen zum aktuellen Wert. (I6461b)
API-Änderungen
- Es wurden ein ScalingLazyItemScope und einige neue Modifikatoren (fillParentMaxSize, fillParentMaxWidth, fillParentMaxHeight) hinzugefügt, damit die Größe von Listenelementen auf der Grundlage der Größe des übergeordneten Containers festgelegt werden kann. Elemente können so eingestellt werden, dass sie die gesamte Größe des übergeordneten Elements oder nur einen Teil davon ausfüllen. Dadurch werden Funktionen verfügbar, die bereits in LazyRow/Column (I4612f) verfügbar sind.
- Es wurde Unterstützung für ScalingLazyColumn hinzugefügt, damit Elemente einen Schlüssel haben können. Außerdem wurden praktische Methoden zum Hinzufügen von Elementen aus Arrays und Listen hinzugefügt. (Ic1f89)
Fehlerkorrekturen
- Zusätzliche Beispiele für TimeText (I8cb64)
Version 1.0.0-alpha10
3. November 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha10, androidx.wear.compose:compose-material:1.0.0-alpha10 und androidx.wear.compose:compose-navigation:1.0.0-alpha10 sind veröffentlicht. Version 1.0.0-alpha10 enthält diese Commits.
Neue Funktionen
InlineSlider für Wear Compose hinzugefügt. Mit InlineSlider können Nutzer einen Wert 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 Makrobenchmark hat jetzt einen
minSdkVersionvon23. (If2655)
Fehlerkorrekturen
- Übergangsbehandlung in SwipeDismissableNavHost in einem SideEffect aktualisieren (I04994, b/202863359)
- Übergangsbehandlung in SwipeDismissableNavHost aktualisieren (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 sind veröffentlicht. Version 1.0.0-alpha09 enthält diese Commits.
Neue Funktionen
- Wir haben die Developer Preview von Compose für Wear OS eingeführt. In unserem Blogpost werden die wichtigsten Composables vorgestellt und es werden Links zu weiteren Ressourcen bereitgestellt, damit Sie sie verwenden können.
API-Änderungen
- Entwickler können jetzt alle Farben im Wear Material Design-Farbschema anpassen. (I4759b, b/199754668)
Fehlerkorrekturen
- Beispiele für „SwipeToDismissBox“ hinzugefügt, die den Status beibehalten (Ibaffe)
- In der KDoc-Dokumentation für CurvedText, TimeText und SwipeToDismissBox wurden Links zu Anleitungen auf developer.android.com hinzugefügt. (I399d4)
- SwipeDismissableNavHost löst jetzt einen Fehler aus, wenn kein aktuelles Ziel vorhanden ist. Das weist darauf hin, dass der NavGraph nicht mit der Hilfsfunktion 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 sind veröffentlicht. Version 1.0.0-alpha08 enthält diese Commits.
API-Änderungen
- Wir haben die
body-Attribute von AppCard und TitleCard incontentumbenannt und sie ans Ende der Attributliste verschoben, damit sie als nachgestellte Lambda-Funktion bereitgestellt werden können. Außerdem wurdebodyColorincontentColorumbenannt, um die Konsistenz mit den neuen Slot-Namen zu wahren. (I57e78)
Fehlerkorrekturen
- Es wurden Links zu developer.android.com-Leitfäden aus KDocs für die Komponenten „Schaltfläche“, „Karte“, „Chip“, „Design“, „Positionsanzeige“ und „Skalierung der Lazy Column“ hinzugefügt. (I22428)
- Problem behoben, bei dem WearOS SwipeToDismissBox manchmal keine Wischbewegungen verarbeitet hat. (I9387e)
- Beispiele für Button, CompactButton, Chip, CompactChip, AppCard, TitleCard, ToggleButton, ToggleChip und SplitToggleChip 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 sind veröffentlicht. Version 1.0.0-alpha07 enthält diese Commits.
Neue Funktionen
- Wir haben in Material eine CurvedText-Komponente hinzugefügt, mit der Entwickler ganz einfach gebogenen Text schreiben können, der der Krümmung eines Kreises folgt (normalerweise am Rand eines runden Displays). (I19593)
API-Änderungen
- Tests für TimeText (Idfead) hinzugefügt
- ArcPaddingValues in eine Schnittstelle umwandeln. (Iecd4c)
- Animation für „SwipeToDismissBox“ hinzugefügt (I9ad1b)
- Der API „SwipeToDismissBox“ wurde der Parameter „hasBackground“ hinzugefügt, damit die Wischbewegung deaktiviert werden kann, wenn keine Hintergrundinhalte angezeigt werden. (I313d8)
rememberNavController()akzeptiert jetzt eine optionale Gruppe vonNavigator-Instanzen, die dem zurückgegebenenNavControllerhinzugefügt werden, um optionale Navigatoren wie die aus Accompanist Navigation Material besser zu unterstützen. (I4619e)- Verweise auf NamedNavArgument aus navigation-common und entferne die Kopie aus wear.compose.navigation. (I43af6)
Fehlerkorrekturen
- Die Instabilität des CurvedRow-Tests auf kleineren Geräten wurde behoben. (If7941)
- Mögliches Flackern in CurvedRow bei Inhaltsaktualisierungen behoben und dafür gesorgt, dass die gekrümmte Zeile neu gemessen wird (Ie4e06)
- ChipDefaults.gradientBackgroundChipColors() wurde gemäß den Änderungen der UX-Spezifikation 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 aktuellen UX-Spezifikationen für Wear Material Design entsprechen. Wenn sie ausgewählt sind, haben ToggleChips jetzt einen Farbverlaufshintergrund von MaterialTheme.color.surface @ 0% Alpha (oben links) bis MaterialTheme.color.primary @ 32% Alpha (unten rechts) über einem Hintergrund von MaterialTheme.color.surface @ 75% Alpha. Dadurch ist der Unterschied zwischen ausgewählt und nicht ausgewählt beim ToggleChip weniger deutlich. (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 sind veröffentlicht. Version 1.0.0-alpha06 enthält diese Commits.
Neue Funktionen
- Wir haben ein Composable für die Anwendung auf oberster Ebene hinzugefügt, das eine Struktur für die Verarbeitung der Position von PositionIndicators (z. B. Scroll oder Volume), einen Bereich oben auf dem Bildschirm für die Anzeige der Uhrzeit und des Anwendungsstatus sowie eine Vignette zum Weichzeichnen des oberen und unteren Bildschirmrands für scrollbare Inhalte bietet. Im Hauptbereich des Gerüsts werden die Anwendungsinhalte platziert. (I5e0bf)
- TimeText-Implementierung für Wear Compose hinzugefügt (I5654c)
Wear Compose Navigation Library
Wir haben die erste Version der Wear Compose Navigation-Bibliothek hinzugefügt, die die Integration zwischen den Wear Compose- und Androidx Navigation-Bibliotheken ermöglicht. Sie bietet eine einfache Möglichkeit, zwischen @Composable-Funktionen als Zielen in Ihrer Anwendung zu wechseln.
Diese erste Version bietet:
- Eine
SwipeDismissableNavHost-Composable, die einen Navigationsgraphen hostet und die Rückwärtsnavigation über Wischbewegungen ermöglicht. NavGraphBuilder.composable-Erweiterung zum Erstellen von NavigationsdiagrammenrememberSwipeDismissableNavController(), um das Hoisting des Status zu ermöglichen
- Eine
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") } } }Wear Compose Navigation ist als separate Bibliothek verpackt, sodass einfache Wear Compose-Anwendungen, die ihre eigene Navigation implementieren, nicht von der AndroidX Navigation-Bibliothek abhängig sein müssen.
API-Änderungen
SwipeDismissableNavHostwurde aktualisiert, umrememberSaveablezu unterstützen. Dazu wurde die Schlüsselidentität für Hintergrund und Inhalt (I746fd) festgelegt.- 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 die Unterstützung für reverseLayout hinzugefügt. Dadurch kann die Richtung des Scrollens und des Layouts umgekehrt werden (I9e2fc).
- Die Methoden
performGestureundGestureScopewurden verworfen und durchperformTouchInputundTouchInjectionScopeersetzt. (Ia5f3f, b/190493367) - Wir haben VignetteValue in VignettePosition und VignetteValue.Both in VignettePosition.TopAndBottom umbenannt. (I57ad7)
- Wir haben ScalingLazyColumnState in ScalingLazyListState, ScalingLazyColumnItemInfo in ScalingLazyListItemInfo, ScalingLazyColumnLayoutInfo in ScalingLazyListLayoutInfo und ScalingLazyColumnScope in ScalingLazyListScope umbenannt, falls wir uns entscheiden, in Zukunft eine ScalingLazyRow-Implementierung hinzuzufügen. (I22734)
Fehlerkorrekturen
- Die Dokumentation zu „CompactChip“ 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)
- Der Abstand zwischen Titel und Text auf Titelkarten wurde von 8 dp auf 2 dp reduziert.
- Die Schriftart der Überschrift der Titelkarte wurde von „body“ in „title3“ geändert.
- Der Farbverlauf des Kartenhintergrunds wurde geändert, damit der Hintergrund dunkler wirkt.
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 sind veröffentlicht. Version 1.0.0-alpha05 enthält diese Commits.
API-Änderungen
- ArcPaddingValues als @Stable markieren (I57deb)
- ScalingLazyColumnState implementiert jetzt die ScrollableState-Schnittstelle, sodass Entwickler programmatisch auf das Scrollen der Komponente zugreifen können. (I47dbc)
Fehlerkorrekturen
- Wir haben den Abstand zwischen Symbol und Text in Chip und ToggleChip verringert, um sie an die Aktualisierungen der UX-Spezifikation 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 sind veröffentlicht. Version 1.0.0-alpha04 enthält diese Commits.
Neue Funktionen
- Es wurde ein SwipeToDismissBox- und ein swipeable-Modifier hinzugefügt, mit denen die Wischgeste zum Schließen von links nach rechts unterstützt werden kann. Obwohl unabhängig von Navigationskomponenten, wird dies voraussichtlich verwendet, um einen Bildschirm zu verlassen und zu einem anderen zu navigieren. Es wurden Integrationstests hinzugefügt, um das Schließen durch Wischen zu demonstrieren. (I7bbaa)
- Wir haben der Klasse „ScalingLazyColumnState“ die Schnittstellen „ScalingLazyColumnItemInfo“ und „ScalingLazyColumnLayoutInfo“ hinzugefügt, damit Entwickler die tatsächlichen Positionen und Größen von Elementen in der „ScalingLazyColumn“ nach der Skalierung kennen. Außerdem haben wir einen Fehler bei der Berechnung der Skalierung behoben, wenn für die ScalingLazyColumn das Padding für den oberen Rand angewendet wurde. (I27c07)
API-Änderungen
- Fügen Sie die Klasse „CurvedTextStyle“ hinzu, um Optionen für die Formatierung von gekrümmtem Text festzulegen. Ähnlich wie „TextStyle“, unterstützt aber nur „color“, „fontSize“ und „background“. In Zukunft werden weitere Formatierungsoptionen hinzugefügt. (I96ac3)
- Wir haben der Klasse „ScalingLazyColumnState“ die Schnittstellen „ScalingLazyColumnItemInfo“ und „ScalingLazyColumnLayoutInfo“ hinzugefügt, damit Entwickler die tatsächlichen Positionen und Größen von Elementen in der „ScalingLazyColumn“ nach der Skalierung kennen. Außerdem haben wir einen Fehler bei der Berechnung der Skalierung behoben, wenn für die ScalingLazyColumn das Padding für den oberen Rand angewendet wurde. (I27c07)
@ExperimentalWearMaterialApiwurde zurSwipeDismissTarget-Enumeration hinzugefügt, die Teil derSwipeToDismissBoxAPI 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 sind veröffentlicht. Version 1.0.0-alpha03 enthält diese Commits.
API-Änderungen
- Die Komponente „CurvedText“ wurde hinzugefügt. Mit ihr können Entwickler ganz einfach Text schreiben, der der Krümmung eines Kreises folgt (in der Regel am Rand eines runden Displays). (Id1267)
- Wir haben
CardDefaults.imageBackgroundPainter()inCardDefaults.imageWithScrimBackgroundPainter()umbenannt, um deutlich zu machen, dass das Hintergrundbild mit einem Scrim überzogen wird. (I53206) - Die Komponente „ScalingLazyColumn“ wurde hinzugefügt. Sie bietet eine Listenkomponente für Wear Material, die eine Fisheye-Ansicht mit dem Listeninhalt bietet. Die Größe des Inhalts wird verringert und er wird transparent, wenn er sich zum Rand der Komponente hin skaliert. (I7070c)
Fehlerkorrekturen
- Wir haben die Standardfarbe des Inhalts „appName“ in „AppCard“ aufgrund einer Aktualisierung der UX-Spezifikation geändert. Die Standardfarbe für den App-Namen ist jetzt
MaterialTheme.colors.onSurfaceVariant. Außerdem wurde eine fehlende Parameterdokumentationsbeschreibung für den Titelslot 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 sind veröffentlicht. Version 1.0.0-alpha02 enthält diese Commits.
Neue Funktionen
- Der Klasse „CurvedRow“ wurde eine neue Klasse hinzugefügt, um Composables in einem Bogen anzuordnen (I29941).
- Es wurde ein neuer Kartentyp für die Verwendung in Anwendungen hinzugefügt (TitleCard). Außerdem wird jetzt die Verwendung von Bildern als Hintergrund für Karten unterstützt, um deren Inhalt hervorzuheben (I53b0f).
API-Änderungen
- Unterstützung für die radiale Ausrichtung für CurvedRow hinzugefügt (ähnlich der vertikalen Ausrichtung in einer Zeile) (Id9de5)
- Neue Klasse „CurvedRow“ für Composables hinzufügen, die in einem Bogen angeordnet sind (I29941)
- Es wurde ein neuer Kartentyp für die Verwendung in Anwendungen hinzugefügt (TitleCard). Außerdem wird jetzt die Verwendung von Bildern als Hintergrund für Karten unterstützt, um deren Inhalt hervorzuheben (I53b0f).
- Den ToggleChipDefaults wurden Umschaltsymbole (Kästchen, Schalter und Optionsfelder) hinzugefügt, um die Konfiguration von ToggleChip und SplitToggleChips zu vereinfachen (I7b639).
- Das Start- und End-Content-Padding für Chips wurde aktualisiert, sodass es unabhängig davon, ob ein Symbol vorhanden ist oder nicht, immer 14 dp beträgt (zuvor 12 dp, wenn ein Symbol vorhanden war, und 14 dp, wenn nicht) (I34c86).
Fehlerkorrekturen
- Tests für CurvedRow hinzufügen (I93cdb)
- Wear Compose-Abhängigkeiten an Compose 1.0.0-rc01 binden (Ie6bc9)
- Die Verarbeitung des Hintergrundbildes in Karten und Chips wurde geändert. Das Bild wird jetzt zugeschnitten und nicht mehr gestreckt, um die Bildproportionen beizubehalten. (I29b41)
- Es wurden weitere Demos und Integrationstests für Button und ToggleButton hinzugefügt. (5e27ed2)
- Es wurden weitere Chip-Tests 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 sind veröffentlicht. Version 1.0.0-alpha01 enthält diese Commits.
Neue Funktionen
Wear Compose ist eine auf Kotlin und Compose basierende Bibliothek, die Wear Material Design unterstützt, eine Erweiterung von Material Design für WearOS-Wearables. Diese erste Alphaversion enthält frühe, funktionale Implementierungen der folgenden Elemente:
- Material-Theme: Konfiguriert die Farben, Typografie und Formen einheitlich für alle Komponenten, die aus dieser Bibliothek verwendet werden.
- Chip, CompactChip: Chips sind stadionförmig. Es gibt Varianten, die Symbole, Labels und sekundäre Labels enthalten können.
- – ToggleChip, SplitToggleChip: Ein spezieller Chip, der einen Slot für ein Symbol für einen zweistufigen Schalter wie ein Optionsfeld oder ein Kästchen enthält. Außerdem hat der SplitToggleChip zwei Bereiche, die angetippt werden können: einen, der angeklickt werden kann, und einen, der umgeschaltet werden kann.
- Button, CompactButton: Schaltflächen sind kreisförmig und haben einen einzelnen Inhaltsbereich für ein Symbol oder minimalen Text (maximal 3 Zeichen).
- ToggleButton: Eine Schaltfläche, mit der eine Aktion aktiviert oder deaktiviert wird. Sie hat einen einzelnen Slot für ein Symbol oder minimalen Text (maximal 3 Zeichen).
- Karte, AppCard: rechteckig mit abgerundeten Ecken und Slots für Inhalte wie App-Symbol, Uhrzeit, Titel und Text.
In zukünftigen Versionen wird das Widget-Set erweitert und es werden Wear Material Design-Auswahlfelder, ‑Schieberegler, ‑Listen, ‑Seitenindikatoren, ‑Dialogfelder, ‑Scrollleistenindikatoren, ‑Benachrichtigungen und mehr unterstützt.
Außerdem werden weitere Wearable-spezifische Funktionen wie gekrümmte Layouts und Text sowie Scaffolding unterstützt, um Entwicklern die Entwicklung von Wearable-Apps und ‑Overlays zu erleichtern.
Wear Compose Material wurde nach denselben Prinzipien wie Compose Material entwickelt, ist aber für Wearables vorgesehen. Die Wear Compose Material-Bibliothek sollte anstelle der Compose Material-Bibliothek verwendet werden, wenn Sie für ein Wearable entwickeln.
Die beiden „Material“-Bibliotheken sollten sich gegenseitig ausschließen und nicht in derselben App verwendet werden. Wenn Entwickler die Compose Material-Bibliothek in ihre Abhängigkeiten aufnehmen, deutet das darauf hin, dass entweder a) Komponenten in der Wear Compose Material-Bibliothek fehlen. Bitte teilen Sie uns mit, was Sie benötigen, oder b) eine Komponente verwendet wird, die wir für die Verwendung auf einem Wearable nicht empfehlen.