Wear Compose
| Letzte Aktualisierung | Stabile Release | Releasekandidat | Beta-Release | Alpha-Release |
|---|---|---|---|---|
| 07. Oktober 2026 | 1.7.1 | - | - | 1.8.0-alpha01 |
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 Google-Repository bei Maven.
Fügen Sie die Abhängigkeiten für die benötigten Artefakte der Datei build.gradle für Ihre App oder Ihr Modul hinzu:
Groovy
dependencies { implementation "androidx.wear.compose:compose-foundation:1.7.1" // For Wear Material Design UX guidelines and specifications implementation "androidx.wear.compose:compose-material:1.7.1" // For integration between Wear Compose and Androidx Navigation libraries implementation "androidx.wear.compose:compose-navigation:1.7.1" // For Wear preview annotations implementation("androidx.wear.compose:compose-ui-tooling:1.7.1") // 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.7.1") // For Wear Material Design UX guidelines and specifications implementation("androidx.wear.compose:compose-material:1.7.1") // For integration between Wear Compose and Androidx Navigation libraries implementation("androidx.wear.compose:compose-navigation:1.7.1") // For Wear preview annotations implementation("androidx.wear.compose:compose-ui-tooling:1.7.1") // 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. Wenn Sie neue Probleme entdecken oder Ideen zur Verbesserung dieser Bibliothek haben, lassen Sie es uns wissen. Bevor Sie ein neues Problem erstellen, sollten Sie sich jedoch die bereits gemeldeten Probleme in dieser Bibliothek ansehen. Wenn Sie sich einer Problemmeldung anschließen möchten, klicken Sie auf den Button mit dem Stern.
Weitere Informationen finden Sie in der Dokumentation zum Issue Tracker.
Version 1.8
Version 1.8.0-alpha01
07. Oktober 2026
androidx.wear.compose:compose-*:1.8.0-alpha01 ist veröffentlicht. Version 1.8.0-alpha01 enthält diese Commits.
API-Änderungen
- Neue
AppScaffold- undScreenScaffold-Überladungen ohne den ParametertimeTexthinzugefügt, um die empfohlene Richtung für die Migration von Wear Compose 1.8 zur neuen Systemstatusleiste festzulegen. Bei älteren Builds ohne Systemstatusleiste wird für diese neuen Überladungen standardmäßigTimeTextverwendet. Die vorhandenen Überlastungen werden jetzt standardmäßig in die Systemstatusleiste migriert, sofern keine explizite benutzerdefiniertetimeTextangegeben ist. (I40a5e) - Die Hilfs-Composable
StatusBarSuppressionwurde hinzugefügt, um die Systemstatusleiste in Vollbild- und Overlay-Komponenten zu unterdrücken. (I387c3) - Der Modifier.
curveToEdgewurde eingeführt. Er verwendet einen Shader, um eine Komponente um das Zentrum herum an den Rand des übergeordneten Containers zu krümmen. Der Container wird dabei immer als Kreis behandelt. Bekannte Probleme: Anklickbare Komponenten haben falsche anklickbare Grenzen undTalkBackhebt Komponenten nicht richtig hervor. (I8bbaa) PullToRefreshBoxundPullToRefreshStatewurden zu Wear Compose Material 3 hinzugefügt. Die Ziehabstände und Aktualisierungsschwellen sind auf Wear OS-Geräte zugeschnitten.(Iee9a5)PullToRefreshBox,PullToRefreshDefaultsundPullToRefreshStatewurden in Wear Compose Material 3 zu stabilen öffentlichen APIs hochgestuft. (I079b6)- Fügt eine Überladung von
SwipeToRevealmit einem Transformationsparameter hinzu, um Containertransformationen inTransformingLazyColumnzu unterstützen. (I328ce) - Bibliotheken sind jetzt auf Kotlin 2.2 ausgerichtet und erfordern kotlinc 2.2 (I82396, b/498369605)
- Das experimentelle Funktions-Flag
WearComposeFoundationFlags.isTransformingLazyColumnClickableThresholdEnabledwurde entfernt. Der klickbare Schwellenwert inTransformingLazyColumnist jetzt immer aktiviert. (Ib68c8) - Das experimentelle Flag
WearComposeFoundationFlags.isTransformingLazyColumnPinnableContainerEnabledwurde entfernt. (Ibad2e)
Fehlerkorrekturen
- Ein Fehler in Wear Compose Foundation
HorizontalPagerwurde behoben, bei dem die Gestenverarbeitung nicht richtig zwischen Paging und Wischen zum Schließen priorisiert wurde. (I54caf) Modifier.testTag("time_text")wurde zuTimeTexthinzugefügt, damit es in Testläufen erkannt werden kann, in denen die Systemstatusleiste auf eine standardmäßigeTimeText-Composable zurückgreift. (Iacb09)- Der Fehler
IllegalStateExceptioninOneHandedGestureModifier.updateCompositionLocalswurde behoben, der durch den Zugriff auf Knoten vor dem Anhängen verursacht wurde. (I662271) - Unterstützung für die
AlertDialog-Geste hinzugefügt, sodass das Scrollen nach unten und das Klicken auf die SchaltflächeConfirmstandardmäßig möglich sind. (I51f81) - Das Flackern in der App
TimeTextbeim Übergang zur geerbten Statusleiste wurde behoben, indem die Logik zur Unterdrückung der Sichtbarkeit inScreenContentverbessert wurde. (I12dd01) - Ein Problem wurde behoben, bei dem Komponenten, die die Systemstatusleiste unterdrücken (z. B. „Stepper“), auf die Darstellung eines
TimeTextin der App zurückgegriffen haben. (I86830) StatusBarSuppression()wurde so korrigiert, dassLocalStatusBarEnabledberücksichtigt wird, wenn die globale Statusleiste deaktiviert ist. Dadurch werden unnötige Layoutdurchläufe in Dialogfeldern vermieden. (I4f77f6)- Ein Problem in Wear Material3
Scaffoldwurde behoben, bei demcurrentScrollInfoProvidernicht von zugrunde liegenden Bildschirmen übernommen wurde, wenn der obere Bildschirm „null“ bereitgestellt hat. (I97874) - Unterstützung für das Ausblenden der Statusleiste
Dialogund für verschachtelteScreenScaffolds in Wear Material3-Scaffold hinzugefügt. (I01772) - Ein Problem in
AppScaffoldwurde behoben, bei dem das Overlay der Statusleiste beim Scrollen wieder angezeigt wurde, wenn das obere Anker-Element sichtbar war. (I421b3) - Ein Problem wurde behoben, durch das der obere Innenabstand von
ScreenScaffoldbeim Öffnen von Bildschirmen mit deaktiviertem Statusleistenmodus reduziert wurde. (I7cf4f) - Unterstützung für die Orchestrierung der Statusleiste im Mehrfenstermodus für Wear Compose Material3-Scaffolds hinzugefügt, sodass Dialogfelder und separate Fenster eigene Systemstatusleisten-Controller verwenden können. (Ibf82c)
TransformingLazyColumnwurde robuster gegenüber negativen Elementabständen gemacht (I99ac7).- Die Anzeige von optimierten Gesten wurde verbessert, indem der Hintergrund des Indikatorzeigers in den Ressourcen durch Canvas-Funktionen mit Pfaden ersetzt wurde. (Iee2b7)
- Die Anzeige von Gesten wurde optimiert, indem primäre und schließende AVDs in den Ressourcen durch Zeichenfunktionen mit Pfaden ersetzt wurden. (Ib2d05)
- Die
androidx.lifecycle:lifecycle-runtime-Abhängigkeit wurde auf 2.10.0 aktualisiert. Diese Version ist erforderlich, damit gebündelte Lint-Prüfungen für den Lebenszyklus mit AGP-Version 9.5.0-alpha04 oder höher ausgeführt werden können. (I99bfd, b/556807521) - Aktualisierte Baseline-Profile für die Bibliotheken Wear Compose Foundation, Material3 und Navigation3. (I9b0a3)
Version 1.7
Version 1.7.1
07. Oktober 2026
androidx.wear.compose:compose-*:1.7.1 ist veröffentlicht. Version 1.7.1 enthält diese Commits.
Fehlerkorrekturen
- Flackern der
OneHandedGestureHintScrollIndicator-Animation behoben (I650c6) - Entfernen Sie die Bildlauf-Sperre aus
OneHandedGestureScrollIndicatorund verwalten Sie die Sichtbarkeit des Indikators inScreenScaffoldmit einem lokalen Kompositionswert (I13050). - Fehler bei
IllegalStateExceptioninModifier.oneHandedGesturebeheben (I35151)
Version 1.7.0
23. September 2026
androidx.wear.compose:compose-*:1.7.0 ist veröffentlicht. Version 1.7.0 enthält diese Commits.
Wichtige Änderungen seit Version 1.6.0:
- Es wurde eine neue API für Einhandgesten eingeführt, die aus Gesten-Handlern für die primäre Aktion (Doppel-Pinch) und die Schließen-Aktion (Drehen des Handgelenks) sowie animierten Anzeigen für Klicken/Scrollen/Paging besteht, die zeigen, wann die Gesten verfügbar sind.
PinnableContainer-Unterstützung fürTransformingLazyColumnhinzugefügt, um ein Element im Arbeitsspeicher zu behalten, anstatt es zu verwerfen, wenn es aus dem Darstellungsbereich gescrollt wird.TransformingLazyColumnunterstützt jetzt das Animieren von Elementen, wenn sie aus dem Darstellungsbereich verschwinden. So können sie sanft aus dem Bildschirm gleiten, anstatt auszublenden.firstLayoutItemProviderwurdeTransformingLazyColumnals optionale Anpassung für das erste Layout-Element hinzugefügt. Wenn angegeben, definiert der Anbieter das Element und seine Kante, die als anfängliche Platzierungsreferenz verwendet werden. Das ist nützlich, um die Richtung der Inhaltsverschiebung zu steuern, wenn Elemente dynamisch aktualisiert werden.- Verbesserungen an
SwipeToRevealzur Unterstützung von verschachteltem Scrollen, schnellen Wischbewegungen, einer zweiten Haptik im Zustand der teilweisen Offenlegung undactionContentSpacingfür den Abstand zwischen dem Hauptinhalt und den Aktionsschaltflächen. - Die Annotationen
@FrequentlyChangingValueund@RememberInCompositionwurden eingeführt, um Lint-Warnungen auszugeben und so Leistungsprobleme zu verhindern, die durch das Lesen von häufigen Statusaktualisierungen oder das Vergessen von Objekten während der Komposition verursacht werden.
Fehlerkorrekturen
- Die
androidx.lifecycle:lifecycle-runtime-Abhängigkeit wurde auf 2.10.0 aktualisiert. Diese Version ist erforderlich, damit gebündelte Lint-Prüfungen für den Lebenszyklus mit AGP-Version 9.5.0-alpha04 oder höher ausgeführt werden können. (If8e16)
Version 1.7.0-rc01
9. September 2026
androidx.wear.compose:compose-*:1.7.0-rc01 ist veröffentlicht. Version 1.7.0-rc01 enthält diese Commits.
- In dieser Version wird Compose for Wear OS 1.7.0 auf einen Release-Kandidaten aktualisiert. Ansonsten gibt es keine wesentlichen Änderungen gegenüber der Version 1.7.0-beta02.
Version 1.7.0-beta02
26. August 2026
androidx.wear.compose:compose-*:1.7.0-beta02 ist veröffentlicht. Version 1.7.0-beta02 enthält diese Commits.
Fehlerkorrekturen
- Aktualisierte Baseline-Profile für die Bibliotheken Wear Compose Foundation, Material3 und Navigation3. (I9b0a3)
- Flimmern der Animationshinweise für Gesten in
OneHandedGestureScrollIndicatorbeheben. (6e0c1cb)
Version 1.7.0-beta01
12. August 2026
androidx.wear.compose:compose-*:1.7.0-beta01 ist veröffentlicht. Version 1.7.0-beta01 enthält diese Commits.
Mit der Version 1.7.0-beta01 von Compose für Wear OS wird angezeigt, dass diese Version der Bibliothek alle Funktionen enthält und die API gesperrt ist. Wear Compose 1.7.0-beta01 enthält die folgenden neuen Funktionen:
- Unterstützung von Einhandgesten, bestehend aus Gesten-Handlern für die primäre Aktion (z. B. Doppeltippen mit zwei Fingern) und die Schließen-Aktion (z. B. Drehen des Handgelenks) sowie animierten Anzeigen, die zeigen, wann die Gesten für anklickbare UI-Elemente (z. B. Schaltflächen und Karten), scrollbare Listen und Pager verfügbar sind.
PinnableContainer-Unterstützung fürTransformingLazyColumnhinzugefügt, um ein Element im Arbeitsspeicher zu behalten, anstatt es zu verwerfen, wenn es aus dem Darstellungsbereich gescrollt wird.TransformingLazyColumnunterstützt jetzt das Animieren von Elementen, wenn sie aus dem Darstellungsbereich verschwinden. So können sie sanft aus dem Bildschirm gleiten, anstatt auszublenden.firstLayoutItemProviderwurdeTransformingLazyColumnals optionale Anpassung für das erste Layout-Element hinzugefügt. Wenn angegeben, definiert der Anbieter das Element und seine Kante, die als anfängliche Platzierungsreferenz verwendet werden. Das ist nützlich, um die Richtung der Inhaltsverschiebung zu steuern, wenn Elemente dynamisch aktualisiert werden.- Verbesserungen an
SwipeToRevealzur Unterstützung von verschachteltem Scrollen, schnellen Wischbewegungen, einer zweiten Haptik im Zustand der teilweisen Offenlegung undactionContentSpacingfür den Abstand zwischen dem Hauptinhalt und den Aktionsschaltflächen. - Die Annotationen
@FrequentlyChangingValueund@RememberInCompositionwurden eingeführt, um Lint-Warnungen auszugeben und so Leistungsprobleme zu verhindern, die durch das Lesen von häufigen Statusaktualisierungen oder das Vergessen von Objekten während der Komposition verursacht werden.
API-Änderungen
GestureActionwurde inOneHandedGestureAction,GesturePriorityinOneHandedGesturePriorityundGestureIndicatorSizeinOneHandedGestureIndicatorSizeumbenannt (Ifc7f4, b/522761843)
Fehlerkorrekturen
- Ein Problem in
ScrollInfoProviderwurde behoben, das dazu führte, dassTimeTextblinkte oder verschwand, wenn sich Listenelemente änderten oder die Größe angepasst wurde. (Ief762, b/537433564)
Version 1.7.0-alpha07
29. Juli 2026
androidx.wear.compose:compose-*:1.7.0-alpha07 ist veröffentlicht. Version 1.7.0-alpha07 enthält diese Commits.
API-Änderungen
- Die
OneHandedGesture-APIs wurden überarbeitet. Der boolesche Indikatorstatus (der nach dem Anzeigen des Indikators zurückgesetzt werden musste) wurde durch eine Suspend-Funktion ersetzt, um die Animation auszuführen. Jeder Indikatortyp hat jetzt eine eigene Indikatorstatusklasse, die die Animationslogik für diesen Indikator kapselt. InGestureConfigurationwurdekeyingestureIdumbenannt. (I7974f, b/522761843) CompactButtonÜberlastung von Inhalten mit nur einem Slot hinzufügen (Idaffc, b/527889640)- Unterstützung für
PinnableContainerinTransformingLazyColumnhinzufügen (Id3dc9, b/492418172)
Fehlerkorrekturen
- Dokumentation auf Modulebene für Wear Compose Foundation, Material 3 und Navigation 3 wurde hinzugefügt und aktualisiert. (I111d7, b/498153783)
- Ein Problem in
ScreenScaffoldwurde behoben, bei dem durch Neuzusammenstellungen nicht gespeicherteScrollInfoProviderden Status der Scroll-Erfassung zurücksetzen konnten. (I8be02, b/524620765) - Der Fehler
IllegalArgumentException: maxWidth must be >= than minWidth, der durch große horizontale Abstände verursacht wurde, wurde behoben (I014e8, b/531192734). - Problem mit der
EdgeButton-Animation bei schnellem Fling behoben. (I9657f, b/512700520)
Version 1.7.0-alpha06
15. Juli 2026
androidx.wear.compose:compose-*:1.7.0-alpha06 ist veröffentlicht. Version 1.7.0-alpha06 enthält diese Commits.
API-Änderungen
- Verschieben Sie die Composables
ButtonContent,AppCardContentundTitleCardContentfür Material3 in die ObjekteButtonDefaultsbzw.CardDefaults. (I8d589, b/527889640) - Standardwert aus dem Parameter
Modifier.oneHandedGesturegestureLabelentfernen (Ica100, b/527068051) - Benenne
gestureLabelinModifier.oneHandedGestureinonGestureLabelum und mache es auf Null setzbar, um die Konsistenz mit anderencontentDescription-Parametern (I952a8, b/527068051) zu wahren. - Führen Sie
OneHandedGestureIndicatorStateein, um die Sichtbarkeit und Animation zwischenModifier.oneHandedGesture()und den Gestenanzeigen zu koordinieren. Ersetzen SieInteractionSourcedurch diesen zustandsorientierten Ansatz, um den Lebenszyklus besser zu steuern. DerwrapAround-Parameter wirdOneHandedGestureDefaults.scrollToNextPagehinzugefügt, um die Konsistenz mit anderen Standardfunktionen für das Scrollen per Geste zu wahren. (I9e1e3, b/522761843)
Fehlerkorrekturen
- Dokumentation für
interactionSourcefürModifier.oneHandedGesturewurde aktualisiert, um anzugeben, welche Interaktionen ausgegeben werden (I2dc8d) - Die Unterstützung von Einhandgesten in
AlertDialogwurde aufgrund von Problemen mit der Abhängigkeit vom Wear SDK bei Verbrauchern, die das Wear SDK oder Einhandgesten nicht verwenden, vorübergehend entfernt. (Ib19e0, b/503841738) TransformingLazyColumnwurde verbessert, um Platzierungsanimationen für Elemente zu unterstützen, die aus dem Sichtfeld verschwinden. So können sie vom Bildschirm gleiten, anstatt auszublenden. Außerdem wurde ein visuelles Einrastproblem behoben, bei dem dynamisch skalierte Elemente während der Platzierungsanimationen sofort auf ihre Zielhöhe einrasteten (I89d84, b/525071281).- Verwenden Sie indexbasierte
ItemInfoinfirstVisibleItemLayoutItemInfo. (I256e3, b/527881678) - Das Animationsverhalten von
TimePickerwurde korrigiert, wenn die Option „Weniger Bewegung“ aktiviert ist. (Ic9150, b/467288916)
Version 1.7.0-alpha05
01. Juli 2026
androidx.wear.compose:compose-*:1.7.0-alpha05 ist veröffentlicht. Version 1.7.0-alpha05 enthält diese Commits.
API-Änderungen
Die
TransformingLazyColumnFirstLayoutItemProvider-Schnittstelle wurde in Foundation hinzugefügt, um die Anpassung von Inhalten zu ermöglichen, die sich bei Inhaltsaktualisierungen ändern. Außerdem wurden sofort einsatzbereiterememberTransformingLazyColumnFirstLayoutItemProvider- undrememberTransformingLazyColumnFirstVisibleItemProvider-Implementierungen in Material3 hinzugefügt. (I54814, b/503353428)Der Fallback-Parameter wurde in
TransformingLazyColumnFirstLayoutItemProvidervoncurrentincenterItemumbenannt. Die ErweiterungenTransformingLazyColumnStatefirstVisibleItemLayoutItemInfoundlayoutItemInfoOfwurden hinzugefügt undrememberTransformingLazyColumnFirstLayoutItemProviderwurde aktualisiert, um eine saubere, parameterbasierte Lambda-Funktion zu verwenden. (I9a8d9, b/503353428)Überladungen für Material3-Button- und ‑Karteninhalte mit mehreren Slots für die Verwendung mit Einhandgesten hinzugefügt. (I74ccb, b/515718015, b/490343658)
Unterstützung von Bedienungshilfen für Einhand-Gesten hinzugefügt (I0054d, b/519085906)
OneHandedGestureDefaults.scrollToNextItem()inOneHandedGestureDefaults.scrollDownToNextItemumbenennen und ParameterwrapAroundzu den ScrollfunktionenOneHandedGestureDefaultshinzufügen (I940ce, b/509639667)Fügen Sie
Modifier.oneHandedGesture()hinzu, wenn der Entwickler den Schlüssel manuell angeben möchte. (I191e1, b/504712626)Benenne die
offsetOfAPI inRevealStateinpositionOfum. (I2675f, b/522387997)Der Parameter
actionContentSpacingwurde inSwipeToRevealeingeführt, damit Entwickler den Abstand zwischen Aktionsfeldern und dem Inhalt anpassen können. (I2abaf, b/507073912)
Fehlerkorrekturen
- Ein Problem in
ScreenScaffoldwurde behoben, bei dem durch Neuzusammenstellungen nicht gespeicherteScrollInfoProviderden Status der Scroll-Erfassung zurücksetzen konnten. (I98f6d, b/524620765) TransformingLazyColumnDie Farbe der Scrollleiste entspricht während der Anzeigeanimation der Hintergrundfarbe der Gestenanzeige (I353fb, b/524915104).- Der Standardwert für
OneHandedGestureIndicatorwurde vongestureIndicatorTintzuLocalContentColorgeändert (I1abd3, b/524228063) - Die Inhaltsbeschreibung der Tages- und Jahresauswahl von
DatePickerparametrisieren, um die Lokalisierung zu unterstützen. (I5dcd9, b/430563857) - Adaptive Anzeigefrequenzen für
GestureIndicatorseinführen, je nachdem, ob ein Indikator innerhalb oder außerhalb der Host-UI-Komponente gerendert wird. (Ic618f, b/515071642) - Problem mit der Nebenläufigkeit beim Auslösen von Einhandgesten behoben (I7b95f, b/512086558)
Version 1.7.0-alpha04
3. Juni 2026
androidx.wear.compose:compose-*:1.7.0-alpha04 ist veröffentlicht. Version 1.7.0-alpha04 enthält diese Commits.
API-Änderungen
- Die Methoden
RevealState.drag() undSwipeToRevealDragScopewurden hinzugefügt und benutzerdefinierteflingBehaviorinSwipeToRevealwurden verfügbar gemacht, um die programmatische Steuerung von Wischgesten, Offsets und Animationsende zu ermöglichen. (Ibfe56, [b/484185090] - Die
OneHandedGestureIndicatorwurde erweitert, um sowohl primäre als auch Schließen-Aktionen zu unterstützen. Die Bindungsarchitektur wurde zuInteractionSourcemigriert, um die automatisierte Lebenszyklusverwaltung zu ermöglichen. (I7e893, [b/512836472] - Es wurde eine neue gestenbasierte Scrollfunktion für Komponenten, die auf ScalingLazyColumn basieren, und für Benachrichtigungsdialogfelder hinzugefügt. Mit diesem Update wird standardmäßig ein Scrollen des Bildschirms um 50% eingeführt, um die Vorhersagbarkeit zu verbessern. Außerdem ist ein optionaler Modus zum Einrasten an Elementen für eine präzise Navigation verfügbar. (Ie9cfb, [b/509639667]
- Ersetzen Sie das
isOneHandedGesturesInAlertDialogEnabled-Flag von Wear Compose Material3 durchLocalOneHandedGestureEnabledCompositionLocal. Damit lassen sich Einhandgesten in der gesamten Komponentenhierarchie deaktivieren. (Ib9240, [b/516777416] ButtonDefaultseingestellt.ExtraSmallIconSizeundButtonDefaults.SmallIconSize. Diese Standardeinstellungen galten nur fürCompactButtonund wurden zuCompactButtonDefaultsverschoben.ExtraSmallIconSizeundCompactButtonDefaults.SmallIconSize. (Id747c, [b/513588028]
Fehlerkorrekturen
- Problem mit der
EdgeButton-Animation bei schnellem Fling behoben. (I88215, [b/512700520] - Beheben Sie, dass
AppScaffoldTimeTextbei der Neuzusammenstellung nicht aktualisiert wird. (Iecea5, [b/512439755] ScreenScaffoldsollte explizit die von der Lambda-Funktion für den inneren Inhalt bereitgestelltePaddingValuesverwenden. (I20d71, [b/512355364]- Die Annotationen @
FrequentlyChangingValueund @RememberInCompositionwurden eingeführt, um Lint-Warnungen auszugeben und so Leistungsprobleme zu vermeiden, die durch das Lesen von Statusaktualisierungen mit hoher Häufigkeit oder durch das Vergessen von Objekten während der Komposition verursacht werden. (I955f4, [b/409488336] - Achten Sie darauf, dass der Welleneffekt vom Mittelpunkt des Buttons ausgeht, wenn für
Button-Composables eine Einhandbewegung ausgelöst wird. (Ie61ec, [b/514600304] - Ein Problem mit Schlüsselkollisionen in
Modifier.oneHandedGesturewurde behoben, indem die Geste und die Priorität in den automatisch generierten Schlüssel aufgenommen wurden. (I49760, [b/517045657]
Version 1.7.0-alpha03
19. Mai 2026
androidx.wear.compose:compose-*:1.7.0-alpha03 ist veröffentlicht. Version 1.7.0-alpha03 enthält diese Commits.
API-Änderungen
- Fügen Sie
Modifier.oneHandedGesture()hinzu, wenn der Entwickler den Schlüssel manuell angeben möchte. (I191e1, b/504712626) - Entfernen von Gestenanzeigen aus
OneHandedGestureDefaultsund Hinzufügen von Farbsupport für Einhandgesten (I7934f, b/505009712, b/504712626) - In
AlertDialogwurde eine explizite Verarbeitung von Einhand-Schließgesten hinzugefügt. (Id71e8, b/509675781) DeferredTargetAnimationist nicht mehr experimentell. Entfernen Sie die Aktivierung. (I1e4ae, b/500030165)
Fehlerkorrekturen
- Problem mit der Nebenläufigkeit beim Auslösen von Einhandgesten behoben (I7b95f, b/512086558)
- Die Einhandgesten-Anzeigen werden jetzt basierend auf der Ausrichtung des Handgelenks und nicht auf
LayoutDirectiongespiegelt. (I6db5d, b/512003346) - Problem mit der Darstellung von Rahmen bei TLC-Elementen behoben (I0c3c1, b/510772213)
- Inline-Bildvorschauen für Beispiele in Kdoc für
SurfaceTransformation.kt,SwitchButton.kt undTextButton.kt hinzugefügt. Diese Bilder werden jetzt in der Dokumentation für Wear Compose Material 3-DAC-Seiten gerendert und bieten Entwicklern sofort einen visuellen Kontext für jede Schaltflächenvariante und jedes Beispiel. (Ib53ae, b/484905061) - Für alle Beispiele in Kdoc von Button.kt wurden Inline-Bildvorschauen hinzugefügt. Diese Bilder werden jetzt direkt in der Dokumentation auf den DAC-Seiten zu Wear Compose Material 3 gerendert. Entwickler erhalten so sofort einen visuellen Kontext für jede Schaltflächenvariante und jedes Beispiel. (Ie2fb5, b/484905061)
- Inline-Bildvorschauen für Beispiele in KDoc in
Card.kt,IconButton.kt,LevelIndicator.ktundListHeader.kthinzugefügt. Diese Bilder werden jetzt in der Dokumentation für Wear Compose Material 3-DAC-Seiten gerendert. (I371bc, b/484905061) - Inline-Bildvorschauen für Beispiele in KDoc für
Picker,SegmentedCircularProgressIndicator,SliderundStepperhinzugefügt. Diese Bilder werden jetzt in der Dokumentation für Wear Compose Material 3-DAC-Seiten gerendert und bieten Entwicklern einen sofortigen visuellen Kontext für diese Komponenten und Beispiele. (I6c6ef, b/484905061) - Inline-Bildvorschauen für Beispiele in KDoc für
CheckboxButton,SplitCheckboxButton,CircularProgressIndicator,ConfirmationDialog,SuccessConfirmationDialog,FailureConfirmationDialogundcurvedTextwurden hinzugefügt. Diese Bilder werden jetzt in der Dokumentation für Wear Compose Material 3-DAC-Seiten gerendert und bieten Entwicklern einen sofortigen visuellen Kontext für diese Komponenten und Beispiele. (Ie4662, b/484905061) Fix AlertDialogScreenshotTest test(I9be58, b/508678506)- Inline-Bildvorschauen für Beispiele in KDoc für
NonClickableCard,OpenOnPhoneDialog,VerticalPageIndicator,VerticalPagerScaffoldundRadioButtonhinzugefügt. Diese Bilder werden jetzt in der Dokumentation für Wear Compose Material 3-DAC-Seiten gerendert und bieten Entwicklern einen sofortigen visuellen Kontext für diese Komponenten und Beispiele. (I2aa2d, b/484905061)
Version 1.7.0-alpha02
6. Mai 2026
androidx.wear.compose:compose-*:1.7.0-alpha02 ist veröffentlicht. Version 1.7.0-alpha02 enthält diese Commits.
Fehlerkorrekturen
- Die Größe von
GestureIndicatorinAlertDialogswurde korrigiert. (I0c16e, b/504912009) - Angepasste
LeftRevealed/RightRevealed-Anker vonSwipeToRevealfür die Positionierung außerhalb des Bereichs. (Id84ff, b/498681589) - Statusbeschreibung für
CheckboxundSwitchhinzufügen (Iba12e, b/485098874) - Ein visueller Fehler in
FadingExpandingLabelwurde behoben, bei dem alter Text aufblitzte, wenn die Anzahl der Zeilen abnahm. (Ia40c9, b/503709020) - Standardunterstützung für Einhandbedienung für
Material3 AlertDialoghinzufügen (I5848e, b/479098589) - Die integrierte Sichtbarkeitslogik für die Einhandbedienung wurde entfernt (I8c602, b/502903320)
Version 1.7.0-alpha01
8. April 2026
androidx.wear.compose:compose-*:1.7.0-alpha01 ist veröffentlicht. Version 1.7.0-alpha01 enthält diese Commits.
API-Änderungen
- Es wurde eine neue API für Einhandgesten eingeführt, in der priorisierte Rückrufe für primäre und Schließen-Aktionen registriert werden können. Das System identifiziert automatisch das relevanteste Ziel auf dem Bildschirm, damit Gesten und ihre Indikatoren nur für Elemente ausgelöst werden, die der Nutzer gerade sehen und mit denen er interagieren kann. Fügen Sie
Modifier.oneHandedGesturedem Composable hinzu, das mit der Geste verknüpft ist (z.B. „Button“), und verwenden SieOneHandedGestureDefaults.GestureIndicator, um dem Nutzer anzuzeigen, wann die Geste verfügbar ist. Scrollen und Paging können auch mit der primären Geste ausgelöst werden. Dabei solltenOneHandedGestureDefaults.scrollDownundOneHandedGestureDefaults.scrollToNextPagein den Callbacks verwendet werden.OneHandedGestureDefaults.ScrollGestureIndicatorundOneHandedGestureDefaults.VerticalPageGestureIndicatorwerden als Alternativen zuScrollIndicatorbzw.PageIndicatorbereitgestellt, um dem Nutzer vorübergehend eine Gestenanzeige zu präsentieren. (Ic6324, b/479098447, b/485488443) requestAnchorItemwurde zuTransformingLazyColumnStatehinzugefügt undTransformingLazyColumnAnchorTypewurde eingeführt, um Entwicklern eine präzise Steuerung der Richtung der Elementerweiterung und der Layoutverankerung zu ermöglichen. (I0c1e6, b/494301025)- Das Flag
isSwipeToRevealDualFlingThresholdEnabledwurde hinzugefügt. Es ist standardmäßig aktiviert, kann aber deaktiviert werden, wenn Fehlerkorrekturen für das Wischverhalten inSwipeToRevealin dieser Version zu einer Regression führen. In diesem Fall melden Sie bitte so schnell wie möglich einen Fehler (Ie6db6, b/497743775).
Fehlerkorrekturen
- Verbesserte
SwipeToRevealzur Unterstützung von schnellen Wischbewegungen, sodass Nutzer Aktionen unabhängig von der Wischdistanz vollständig aufdecken können. Diese Änderung kann deaktiviert werden, indem das Flag „isSwipeToRevealDualFlingThresholdEnabled“ deaktiviert wird. (I833fd, b/490728860) - Das
SwipeToReveal-Ereignis wird jetzt ausgelöst, wenn über 75% der Bildschirmbreite gewischt wird. Diese Änderung kann durch Deaktivieren desisSwipeToRevealDualFlingThresholdEnabled-Flags deaktiviert werden. (Id5604, b/490728860) - Es wurde ein zweites haptisches Feedback für
SwipeToRevealhinzugefügt, wenn der Wischvorgang den Status „Teilweise einblenden“ erreicht (diese Änderung kann durch Deaktivieren des FlagsisSwipeToRevealDualFlingThresholdEnableddeaktiviert werden). (Ic27e3, b/492273799) - Ein Problem in
TransformingLazyColumnwurde behoben, bei dem Elementanimationen (Modifier.animateItem) nicht mehr funktionierten. (I904ec, b/493167084) - Ein Fehler in
PickerGroup(und damit auch inDatePicker) wurde behoben, um zu verhindern, dass durch mehrere Berührungen das beabsichtigte Scrollen in nicht ausgewählten Picker-Spalten ausgelöst wird (Id76c5, b/378646798).
Wear Compose-Version 1.6
Version 1.6.2
19. Mai 2026
androidx.wear.compose:compose-*:1.6.2 ist veröffentlicht. Version 1.6.2 enthält diese Commits.
Fehlerkorrekturen
Problem mit dem Zeichnen von Rahmen bei
TransformingLazyColumn-Elementen behoben (I0c3c1, b/510772213)Zuweisung von
itemSpacingin der Messstrategie für das Content-Padding vonTransformingLazyColumnkorrigieren (I12d2f, b/498137919)
Version 1.6.1
8. April 2026
androidx.wear.compose:compose-*:1.6.1 ist veröffentlicht. Version 1.6.1 enthält diese Commits.
Fehlerkorrekturen
- Ein Problem wurde behoben, bei dem Elementanimationen (über
Modifier.animateItem) inTransformingLazyColumnnicht mehr funktionierten. (I904ec, b/493167084)
Version 1.6.0
25. März 2026
androidx.wear.compose:compose-*:1.6.0 ist veröffentlicht. Version 1.6.0 enthält diese Commits.
Wichtige Änderungen seit Version 1.5.0:
- Die Wear Compose Navigation3-Bibliothek wurde eingeführt. Sie lässt sich in die
NavDisplay- undSceneStrategy-Komponenten der Navigation 3-Bibliothek einbinden und fügt Wear-spezifische Logik zum Schließen durch Wischen mit unserem neuenSwipeDismissableSceneStrategyhinzu. TransformingLazyColumn-Unterstützung fürreverseLayouthinzugefügt, Einrasten mitTransformingLazyColumnDefaults.snapFlingBehaviorundModifier.minimumVerticalContentPadding, wodurch ein bevorzugter Inhaltspadding für Elemente in der Liste definiert werden kann, wenn sie sich am oberen oder unteren Rand befinden.- Es wurden neue Überladungen für
AlertDialoghinzugefügt, die einTransformingLazyColumnverwenden, um die Konsistenz mit dem Scrollen auf anderen Material3-Bildschirmen zu gewährleisten. - Die Darstellung von gekrümmtem Text wurde verbessert, insbesondere bei kursiven Schriftarten. Dies wurde durch die Einführung von Text-Warping über den neuen Parameter
CurvedTextStylewarpOffseterreicht, der ab API 34 standardmäßig aktiviert ist. LocalAmbientModeManagerwurde hinzugefügt, ein neuesCompositionLocal, mit dem sich verschiedene Benutzeroberflächen und Verhaltensweisen für interaktive und Ambient-Modi definieren lassen.- Eine vollständigere Liste der in Version 1.6.0 eingeführten Funktionen finden Sie in den Versionshinweisen zu Beta 01.
Version 1.6.0-rc01
11. März 2026
androidx.wear.compose:compose-*:1.6.0-rc01 ist veröffentlicht. Version 1.6.0-rc01 enthält diese Commits.
- In dieser Version wird Compose for Wear OS 1.6.0 auf einen Release-Kandidaten aktualisiert. Ansonsten gibt es keine wesentlichen Änderungen gegenüber der Version 1.6.0-beta01.
Version 1.6.0-beta01
25. Februar 2026
androidx.wear.compose:compose-*:1.6.0-beta01 ist veröffentlicht. Version 1.6.0-beta01 enthält diese Commits.
Das Release 1.6.0-beta01 von Compose for Wear OS weist darauf hin, dass diese Version der Bibliothek alle Funktionen enthält und die API gesperrt ist (sofern nicht als experimentell gekennzeichnet). Wear Compose 1.6.0-beta01 enthält die folgenden neuen Funktionen:
- Die Wear Compose Navigation3-Bibliothek, die in die
NavDisplay- undSceneStrategy-Komponenten der Navigation 3-Bibliothek integriert ist, fügt Wear-spezifische Logik zum Schließen durch Wischen mit unserem neuenSwipeDismissableSceneStrategyhinzu. TransformingLazyColumn-Unterstützung fürreverseLayouthinzugefügt, Einrasten mitTransformingLazyColumnDefaults.snapFlingBehaviorundModifier.minimumVerticalContentPadding, wodurch ein bevorzugter Inhaltspadding für Elemente in der Liste definiert werden kann, wenn sie sich am oberen oder unteren Rand befinden.- Es wurden neue Überladungen für
AlertDialoghinzugefügt, die einTransformingLazyColumnverwenden, um die Konsistenz mit dem Scrollen auf anderen Material3-Bildschirmen zu gewährleisten. - Die Darstellung von gekrümmtem Text wurde verbessert, insbesondere bei kursiven Schriftarten. Dies wurde durch die Einführung von Text-Warping über den neuen Parameter
CurvedTextStylewarpOffseterreicht, der ab API 34 standardmäßig aktiviert ist. LocalAmbientModeManagerwurde hinzugefügt, ein neuesCompositionLocal, mit dem sich verschiedene Benutzeroberflächen und Verhaltensweisen für interaktive und Ambient-Modi definieren lassen.TimePickerwurde aktualisiert, um einen neuenMinutesSeconds-Typ zu unterstützen. Außerdem wurde ein neuerinitialSelection-Parameter hinzugefügt, mit dem die anfangs ausgewählte Zeitkomponente angegeben werden kann.- Neue Überladungen für Karten, um nicht klickbare Varianten bereitzustellen, bei denen die Karten nur zur Darstellung dienen und nicht auf Nutzerklicks reagieren sollen.
LocalRippleConfigurationwurde hinzugefügt, um die Darstellung von Ripples zu steuern.- Der Parameter
snapSensitivitywurde fürRotaryScrollableDefaults.snapBehavioreingeführt undPagerScaffoldDefaultsenthält jetzt die empfohlenen Standardwerte fürSnapPositionalThresholdundHighSnapPositionalThresholdzur Verwendung mitPagerDefaults.snapFlingBehavior.
API-Änderungen
- Die empfohlenen Standardwerte für
Modifier.minimumVerticalContentPaddingwurden vonminimumListVerticalContentPaddinginminimumVerticalListContentPaddingumbenannt, um zu betonen, dass sich dieses Content-Padding auf die Liste bezieht. Die zugehörige Dokumentation wurde aktualisiert. (I496ca, b/426154225) - Bei gebogenem Text wird jetzt standardmäßig die Funktion zum Verzerren verwendet. Dadurch wird die Darstellung von gebogenem Text verbessert, insbesondere bei kursiven Schriftarten. (I6979d, b/450526792, b/481617443)
Fehlerkorrekturen
- Behebe die Interaktion zwischen den TLCs
animateItemundminimumVerticalContentPadding. (Ia865c, b/483663045) - Der verzerrte Offset für gekrümmten Text ist jetzt standardmäßig nur für API 34 und höher aktiviert, da er von
PathIteratoraus derandroidx.graphics.path-Bibliothek abhängt, die vor API 34 für Entwicklertests unter Robolectric nicht verfügbar ist. Dadurch werden vorhandene Entwicklertests unterbrochen. (Ie5bae, b/484319336) - Verzerrten gekrümmten Text robuster machen (If2b34, b/483390353)
ConfirmationDialogDefaults.SuccessIconwurde aktualisiert, um die RTL-Layoutrichtung zu ignorieren, damit das Häkchen nicht gespiegelt wird. (Ic6add, b/481966029)
Version 1.6.0-alpha10
11. Februar 2026
androidx.wear.compose:compose-*:1.6.0-alpha10 ist veröffentlicht. Version 1.6.0-alpha10 enthält diese Commits.
API-Änderungen
Modifier.responsiveVerticalPaddingwurde inModifier.minimumVerticalContentPaddingumbenannt. Die Padding-Parameter sind jetzt Dp anstelle derResponsiveVerticalPadding-Schnittstelle. Die empfohlenen Standardeinstellungen wurden vonResponsiveVerticalPaddingDefaultsin komponentenbezogene Standardobjekte wieButtonDefaults,CardDefaultsusw. verschoben (Icaab2, b/426154225).WearComposeFoundationFlags.isTransformingLazyColumnClickableThresholdEnabledwurde hinzugefügt, um die neue Funktion fürTransformingLazyColumnzu steuern. Klicks über einem Schwellenwert von 20 dp oben und unten im Layout werden jetzt ignoriert, um versehentliche Tippen zu verhindern, wenn das Element nur teilweise sichtbar ist. Außerdem wurde die Änderung so aktualisiert, dass nur Klicks auf Elemente am Rand bei Ereignissen abgefangen werden, die innerhalb des Touch-Slop liegen. So werden Drag-Gesten nicht ignoriert. (I1ba28, b/480910891)rememberAmbientModeManagerverwendet jetztLocalActivityin seiner Implementierung, um die aktuelle Aktivität abzurufen, anstatt die Aktivität als Parameter zu verwenden (Idf114, b/473603258).AmbientModewurde für die Erweiterbarkeit in eine nicht erschöpfende Liste geändert (I92cc3, b/473603258).rememberSwipeDismissableSceneStrategyStatewurde aktualisiert, um den ParameterswipeToDismissBoxStatezu entfernen, da dieser nur bis API 35 ein Implementierungsdetail ist (I5907c, b/476105162).- [TLC]
Modifier.responsiveVerticalPaddingwurdeTransformingLazyColumnhinzugefügt, um automatische Anpassungen des Inhalts-Padding gemäß den Wear OS Material 3-Designrichtlinien zu ermöglichen. (Ia7e73, b/426154225)
Fehlerkorrekturen
- Die Vorabrufbedingung für
TransformingLazyColumnwurde aktualisiert, sodass die Dringlichkeit basierend auf den Viewport-Rändern ohne Padding berechnet wird (I48d85, b/476420552). Pickerunterstützt jetzt nahtlose Transparenz für benutzerdefinierte Hintergründe wie Verläufe oder Bilder, indemColor.UnspecifiedalsgradientColordes Pickers übergeben wird. FürTimePickerundDatePickerkann dieser Effekt erzielt werden, indemMaterialTheme.colorScheme.backgroundlokal aufColor.Unspecifiedüberschrieben wird. (Icc476, b/458429791, b/458429791)- Für
TransformingLazyColumn-Elemente oben und unten auf dem Bildschirm wurde ein Mindestabstand von 20 dp für die Klickbarkeit eingeführt, um versehentliche Berührungen zu vermeiden, wenn Elemente größtenteils ausgeblendet sind. (I2c9cb, b/443285887) - Verbessertes Handling von eingeschränkter Bewegung in
OpenOnPhoneDialog(Ib1d12, b/48558283)
Version 1.6.0-alpha09
28. Januar 2026
androidx.wear.compose:compose-*:1.6.0-alpha09 ist veröffentlicht. Version 1.6.0-alpha09 enthält diese Commits.
API-Änderungen
PagerScaffoldDefaults.SnapPositionalThresholdinLowSnapPositionalThresholdundRotaryScrollableDefaults.SnapSensitivityinLowSnapSensitivityumbenennen (I157ee, b/449949891)- Der Modifikator wurde aus
SwipeDismissableSceneStrategyentfernt. (Iff30f, b/449949891)
Fehlerkorrekturen
- Problem mit der Animation beim Scrollen mit dem Drehrad behoben, wenn das Einrastverhalten aktiviert ist (I7db89, b/474016470)
- Fehler behoben:
SwipeDismissableSceneStrategyblockiert das System auf API 36 und höher (Icf20b, b/476105162) - Problem mit der
SwitchButton-Animation behoben, sodass sie als vollständige Form skaliert/ein- und ausgeblendet wird (I7a7eb, b/378644361) - Rotation der Intro-Animation für das Symbol „
CheckboxButtonverbessern“ (I89944, b/378646769)
Version 1.6.0-alpha08
14. Januar 2026
androidx.wear.compose:compose-*:1.6.0-alpha08 ist veröffentlicht. Version 1.6.0-alpha08 enthält diese Commits.
API-Änderungen
RotaryScrollableDefaults.snapBehaviorwurde aktualisiert und akzeptiert jetzt den Float-ParametersnapSensitivity. Außerdem werden mitPagerScaffoldDefaultsdie empfohlenen StandardwerteSnapPositionalThresholdundHighSnapPositionalThresholdfür die Verwendung mitPagerDefaults.snapFlingBehavioröffentlich gemacht. (I7e11c, b/449949891)- Für
TransformingLazyColumnwurde die Unterstützung für das Einrasten bei Touch- und Drehreglereingabe hinzugefügt. Beim Konfigurieren des Einrastens wird empfohlen, sowohlflingBehaviormitTransformingLazyColumnDefaults.snapFlingBehaviorals auchrotaryScrollableBehaviormitRotaryScrollableDefaults.snapBehavioranzugeben, um eine einheitliche Nutzererfahrung zu gewährleisten. (I5326f, b/422455104) - Wir haben
LocalAmbientModeManagereingeführt, eine neue zusammensetzbare Funktion, mit der sich ganz einfach verschiedene Benutzeroberflächen und Verhaltensweisen für interaktive und Ambient-Modi definieren lassen. (I00161, b/427724331)
Fehlerkorrekturen
- Ein Problem wurde behoben, bei dem Listen mit dem Verhalten „Rotary Snap“ nach dem Überscrollen nicht zurücksprangen. (I05216, b/470317969)
- Ein Problem mit dem Welleneffekt für die Schaltflächen zum Erhöhen und Verringern im Material3-Schieberegler wurde behoben. Die Wellenbewegung erstreckt sich jetzt korrekt über die gesamte Breite der Schiebereglerkomponente. (I8c0c4, b/378658409)
Version 1.6.0-alpha07
17. Dezember 2025
androidx.wear.compose:compose-*:1.6.0-alpha07 ist veröffentlicht. Version 1.6.0-alpha07 enthält diese Commits.
API-Änderungen
wear-compose:compose-navigation3-Bibliotheksartefakt hinzugefügt (I01b5c, b/427463127)- Es wurde eine
SwipeDismissableSceneStrategyfür die Wear-Integration mitNavigation3hinzugefügt. Sie kann mit einemNavDisplayverwendet werden, um Wear Compose-Inhalte anzuzeigen. (I7aa08, b/427463127) - Wir stellen
ResponsiveTransformingLazyColumnvor, eine neue Material3-Komponente, die aufTransformingLazyColumnaus wear-compose-foundation basiert und automatisch responsives vertikales Padding basierend auf dem Listeninhalttyp berechnet und anwendet. (I102f4, b/426154225)
Fehlerkorrekturen
- Ein Problem wurde behoben, bei dem
PageIndicatornicht richtig neu gezeichnet wurde, wenn sich der aktuelle Seitenindex inPagerStategeändert hat, z.B. durch Aufrufen vonscrollToPage()oder durch Verwendung vonanimateScrollToPage()mit reduzierter Bewegung. (I97150, b/465669950) - Semantik von
TransformingLazyColumnkorrigieren – Berechnung vonscrollOffset(Idec30, b/417941554) - Padding für die Rückgängig-Aktion von
SwipeToRevealkorrigiert (I770f8, b/382259843) PredictiveBackScenewurde implementiert, umNavigation3für API36+ zu verarbeiten. (Idedf6, b/427463127)
Version 1.6.0-alpha06
3. Dezember 2025
androidx.wear.compose:compose-*:1.6.0-alpha06 ist veröffentlicht. Version 1.6.0-alpha06 enthält diese Commits.
API-Änderungen
LocalRippleConfigurationwurde hinzugefügt, um die Darstellung von Ripples zu steuern (I9e0fa, b/382336566).- Es wurden neue Überladungen für
AlertDialoghinzugefügt, die einTransformingLazyColumnverwenden, um eine erweiterte Steuerung von Animationen für das Scrollen von Elementen zu ermöglichen. Das Layout wurde für größere Bildschirme optimiert. (I862ff, b/438468382) - Der Transformationsparameter wurde
ButtonGrouphinzugefügt, um ihn mit sich dynamisch ändernden Containern wieTransformingLazyColumnzu verwenden. (I8743b, b/453710565)
Fehlerkorrekturen
- Problem mit dem Titel „
AlertDialog“ behoben, bei dem die Schaltflächen „Bestätigen“ und „Verwerfen“ mehrmals in der Komposition angezeigt wurden (I8e1b0, b/463955367) TimeText-Code robuster machen, wenn aufTimeZone-Änderungen gewartet wird. (I1c276, b/457909952)- Die Leistung von
SplitRadioButtonundSplitCheckboxButtonwurde durch die Reduzierung der Anzahl der Neuzusammensetzungen verbessert. (I3ddc9, b/455845192)
Version 1.6.0-alpha05
19. November 2025
androidx.wear.compose:compose-*:1.6.0-alpha05 ist veröffentlicht. Version 1.6.0-alpha05 enthält diese Commits.
API-Änderungen
- Einführung von
RotarySnapSensitivityfür das Verhalten bei Drehung und Einrasten undPagerSensitivityfür das Verhalten beim schnellen Wischen auf Pager-Seiten, damit Anwendungen die Empfindlichkeit von Dreh- und Wischvorgängen anpassen können, insbesondere für Pager. (Ic3a83, b/449949891) - Vereinfachte Änderungen an
rememberTransformingLazyColumnState, die mit der Einführung des umgekehrten Layouts fürTransformingLazyColumnvorgenommen wurden, wobei eine einzelne Funktion konsolidiert und ein Sentinel-Wert verwendet wird, um den Standardankerindex zu verwenden. (I09302, b/453731755) - Es wurde ein neuer Standard-
GenericFailureIconfür die Verwendung inFailureConfirmationDialoghinzugefügt, der ein generisches Fehlersymbol anzeigt. Die vorhandeneFailureIconwurde inConnectionFailureIconumbenannt. (I8e965, b/453730430)
Fehlerkorrekturen
TimePickerist jetzt robuster beim Parsen komplexer Gebietsschemamuster. (I7b169, b/456538838)- Das anfängliche
TransformingLazyColumn-Layout wurde korrigiert, wennverticalArrangementArrangement.Centerist. (Id18ef, b/451481233) TransformingLazyColumnState-Konstruktor anrememberTransformingLazyColumnState-Funktion angepasst (I36d6a, b/453731755)- Das Häkchen-Symbol für
CheckboxButtonwurde abgerundet. (Ie645e, b/378645751) - Das Häkchen-Symbol für
SwitchButtonwurde abgerundet. (I31fbf, b/378642590) - Der
scrollToItem-Offset inTransformingLazyColumnwurde korrigiert, wodurch die Scrollrichtung umgekehrt wurde. (Ib2c93, b/451481233) - Verbesserte Leistung von
SwitchButtonundSplitSwitchButton. (I708de, b/448781327)
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 kann in einigen Fällen besser geeignet sein alsConfirmationDialogDefaults.FailureIcon, das eine unterbrochene Verbindung zum Smartphone anzeigt. (Ifc851, b/443115305)
Fehlerkorrekturen
- Die Leistung der Auswahl wurde verbessert, indem die Verwendung von
LaunchedEffectrefaktoriert wurde. (I94519, b/418192973) - Ein Fehler in
SwipeDismissableNavHostauf API36+ wurde behoben, bei dem durch Drücken des Buttons „Zurück“ während der Animation für die intelligente „Zurück“-Geste die Animation unterbrochen und neu gestartet wurde. Bei der Implementierung wird jetztSeakableTransitionState.animateToanstelle von „Animatable“ verwendet, was zu einer leichten Leistungssteigerung führt. (I2241f, b/428156670) - Ein Fehler wurde behoben, der die Reihenfolge der Bedienungshilfen-Ankündigungen in
AlertDialogbetraf. Der Bestätigungsbutton wurde als „Button“ angekündigt. „Bestätigen“ statt des Standardtextes „Bestätigen“. Schaltfläche“. (Ic2381, b/429378202) - Die Sichtbarkeit der
TimePicker-Nummer auf kleinen Displays verbessern. (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 Parameter wurde
TimePickerhinzugefü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 aus 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
WarpedCurvedTextRenderer-Klasse von Compose Foundation wurde aktualisiert, umEmojiCompatInitializeranstelle vonandroidx.emoji2zu verwenden. Dadurch wird ein Laufzeitklassenfehler behoben. (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 Schreibschriften. Dazu wurde das Verzerren von Text mit dem neuen Parameter
CurvedTextStylewarpOffseteingeführt. (If5dcb)
Fehlerkorrekturen
- Optimiertes Caching von Elementanimationen 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 zum neuen Parameter
CurvedTextStyle warpOffsetwurden 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, bei dem nur die Spalten für Minuten und Sekunden angezeigt werden. Die Spalte für Stunden wird ausgelassen. (Ia9e94, b/438004664)
Fehlerkorrekturen
- Behebe die Verwendung des Modifikatorparameters von
HorizontalPagerScaffold, damitHorizontalPagerdie Seitenanzeige 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) - Korrigierte
TransformingLazyColumn-Berichterstellung für die Semantik vonSCROLL_BACKWARDSundSCROLL_FORWARDSfür Grenzfälle oben/unten auf dem Bildschirm. (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.6
3. Dezember 2025
androidx.wear.compose:compose-*:1.5.6 ist veröffentlicht. Version 1.5.6 enthält diese Commits.
Fehlerkorrekturen
- Das Caching von Elementanimationen beim Scrollen in
TransformingLazyColumnoptimieren. (I62ae8, b/441701460) - 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, b/437986990) - Ein Fehler wurde behoben, durch den
Modifier.edgeSwipeToDismissbei Verwendung mitSwipeDismissableNavHostab API 36 abgestürzt ist. (Ifc13d, b/441901722)
Version 1.5.5
5. November 2025
androidx.wear.compose:compose-*:1.5.5 ist veröffentlicht. Version 1.5.5 enthält diese Commits.
Fehlerkorrekturen
- Sichtbarkeit der
TimePicker-Nummer auf kleinen Bildschirmen verbessern (I70fbe)
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 verbessert, indem die Verwendung von
LaunchedEffectrefaktoriert wurde. (I94519, b/418192973) - Ein Fehler in
SwipeDismissableNavHostauf API36+ wurde behoben, bei dem durch Drücken des Buttons „Zurück“ während der Animation für die intelligente „Zurück“-Geste die Animation unterbrochen und neu gestartet wurde. Bei der Implementierung wird jetztSeakableTransitionState.animateToanstelle von „Animatable“ verwendet, was zu einer leichten Leistungssteigerung führt. (I2241f, b/428156670) - Ein Fehler wurde behoben, der die Reihenfolge der Bedienungshilfen-Ankündigungen in
AlertDialogbetraf. Der Bestätigungsbutton wurde als „Button“ angekündigt. „Bestätigen“ statt des Standardtexts „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 Elementanimationen beim Scrollen in
TransformingLazyColumn. (I62ae8) - Die Varianten
OpenOnPhoneDialogundConfirmationDialogwurden aktualisiert, um FLAG_KEEP_SCREEN_ON festzulegen. 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 zum neuen Parameter
CurvedTextStyle warpOffsetwurden 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 HorizontalPager die Seitenanzeige 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) - Korrigierte
TransformingLazyColumn-Berichterstellung für die Semantik vonSCROLL_BACKWARDSundSCROLL_FORWARDSfür Grenzfälle oben/unten auf dem Bildschirm. (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. In dieser Version ist u. a. Folgendes neu:
- 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 bei Berührung oder Auswahl animiert 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 Variante),ArcProgressIndicatorundLinearProgressIndicator.
Außerdem enthält Wear Compose Foundation 1.5.0 Folgendes:
TransformingLazyColumn: eine träge, vertikal scrollbare Liste, die Skalierungs- und Morphing-Animationen unterstützt.- Unterstützung für das Paging 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 vollständigere Liste der in Version 1.5.0 eingeführten Funktionen finden Sie in den Versionshinweisen zu Beta 01.
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
- Es wurde ein Fehler in
TimePickerbehoben, 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. Damit 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 aus Konsistenzgründen von Text (MMM) in 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 RTLLayoutDirectionseinheitlich. (I6d427) - Die vertikale Zentrierung für Aktionen wurde wieder eingeführt.
SwipeToRevealWennhasPartiallyRevealedState = true, sollteRevealStatevom Anrufer aufRevealValue.Coveredzurückgesetzt werden, wenn gescrollt wird. (I6473d) SwipeDismissableNavHostschneidet Inhalte jetzt für API 36 und höher 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
- Beheben Sie Probleme mit der
EdgeButton-Animation, wennLazyColumnoderScalingLazyColumnreverseLayout = trueenthalten. (I46a1a) - Ein Fehler in
ScreenScaffoldwurde behoben, bei dem die Funktion „Berühren & Vorlesen“ unter TalkBack nicht funktionierte, wenn einScrollIndicator/PageIndicatorangegeben wurde. (I6dcee) - Mit
TransformingLazyColumnist jetzt ein benutzerdefiniertes Morphen vonTransformationSpecmöglich, indem der vonTransformationSpecim Hintergrund-Painter bereitgestellteitemHeight-Wert gelesen wird. (I6a599) - Animierte Farbwechsel für
IconButtonaktiviert/deaktiviert, um mitIconToggleButtonkonsistent zu sein. (Ife10a) - Die Mindestbegrenzung für Abschnitte in
CircularProgressIndicatorwurde entfernt, um einen deutlichen Sprung zur minimalen Punktgröße bei der Animation zu vermeiden. Im Rahmen dieser Änderung wird der ParametertargetProgressindrawCircularProgressIndicatornicht mehr verwendet. (I33309) - Der Picker hat jetzt die semantische Rolle
ValuePicker, die von Screenreadern verwendet werden kann, um Picker barrierefreier zu machen. 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 mehrere aufgedeckte Elemente mit
SwipeToRevealangezeigt 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) PickerGroupanimiert die Auswahlfelder jetzt horizontal, 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, bei dem Inhalte, die auf den Bildschirm passen, jetzt korrekt oben auf dem Bildschirm ausgerichtet werden (I80115). - Ein Problem mit
TransformingLazyColumnwurde behoben, bei dem das untere Element beim Scrollen zum Ende einer Liste mit einemEdgeButtonfalsch skaliert wurde. 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) - Es wurde ein Fehler behoben, durch den
SwipeToReveal-Aktionen beim Scrollen mit einem vertikalen Versatz gezeichnet wurden. (I29444) AlertDialog,ConfirmationDialog,OpenOnPhoneDialogundSwipeToRevealrunden jetzt Abstände und Größen auf, die als Prozentsatz der Bildschirmgröße berechnet werden. (I76367)ButtonDefaults.outlinedButtonBorderwird jetzt bei Änderungen des Aktivierungs-/Deaktivierungsstatus aktualisiert (size(If2ddd))- Es wurde ein Fehler bei der Höhe von
EdgeButtonbehoben, 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 des EdgeButton wurde optimiert, um die Übergänge zwischen dem Auslassungszeichen und den Kreisen, aus denen der Umriss besteht, zu glätten. (I7721e)
- Es wurde ein Fehler in
LevelIndicatorbehoben, der dazu führte, dass Animationen aufgrund unnötiger Neukompositionen 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 ParametericonContentDescriptionundcontentDescriptionausicon()zu entfernen. Außerdem hatConfirmationDialogDefaultsjetzt Modifikatorparameter für die ComposablesSuccessIconundFailureIcon. (Id2ae2)
Fehlerkorrekturen
- Die Reihenfolge, in der wir die Auswirkungen von
SurfaceTransformation-Parametern anwenden, wurde geändert. Bisher wurden die auf Wear Material3-Komponenten angewendeten Transformationen so ausgeführt: Hintergrund-Painter, Container-Transformation, Inhalts-Transformation. Die ersten beiden sind jetzt invertiert und wir wenden alle übergebenen Modifikatoren dazwischen an. Sie sind also von Containertransformationen betroffen. So 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)SwipeToRevealDie primären und sekundären Aktionsschaltflächen sollten standardmäßigButtonDefault.Heightsein (ein Fehler wurde behoben, bei dem diese die maximale Höhe für höhere Schaltflächen einnahmen). (Ibfba1)SwipeToRevealwurde geändert, um die letzte Komponente zurückzusetzen, mit der interagiert wurde, wenn die Wischbewegung nach rechts ausgeführt wird. (Ia8450)SwipeToRevealwurde geändert, um den StatusRevealingzu erreichen, wenn sich die Endposition des Wischvorgangs zwischen den Ankern „Aufdecken“ und „Aufgedeckt“ befindet und näher am Anker „Aufdecken“ liegt. (If4458)- Die Inhalte von
ButtonGroupwerden jetzt in einem RTL-Layout (Ib378d) korrekt invertiert. AnimatedTextunterstützt jetzt die RTL-Textrichtung (I4533c).TransformingLazyColumnändert die Größe von Elementen jetzt korrekt, wenn das untere Element entfernt wird (Idacab).TransformingLazyColumnführt jetzt nur noch einen Messdurchgang durch, was 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 Bedienungshilfenfehler 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
TransformingLazyColumn-Leistung wurde durch eine 30-prozentige Optimierung derScrollProgress-Berechnung verbessert. (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 for 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 sowohl Tiefe als auch 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: Ein neuer, am Rand ausgerichteter Button mit einer speziellen Form, die für den unteren Bildschirmrand entwickelt wurde.- Scaffolds: Mit
AppScaffoldundScreenScaffoldwird die Struktur des Bildschirms festgelegt und die Animationen vonScrollIndicatorundTimeTextwerden koordiniert. - Schaltflächen: Es werden zahlreiche schalenförmige Schaltflächen mit flexiblen Containern mit einem Slot und Varianten mit mehreren Slots für Schaltflächen mit Symbolen und Labels unterstützt.
CheckboxButtonundSwitchButtonwerden bereitgestellt, wenn Ein/Aus-Schaltflächen erforderlich sind.RadioButtonist die verfügbare Auswahl-Schaltfläche. Es gibt auch „Split“-Varianten der Ein/Aus-Schaltflächen und Auswahl-Schaltflächen. ButtonGroup– Implementiert eine ausdrucksstarke Gruppe von Buttons in einer Reihe, deren Form sich bei Berührung ändert.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 Erfolg, Fehler und „Auf Smartphone öffnen“-Varianten unterstützt. - Auswahlen: Die Varianten
TimePickerundDatePickerwerden unterstützt. Außerdem können Sie mit den Komponenten „Picker“ undPickerGroupeigene Auswahlbildschirme 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, Uhrzeit, 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: Zeichnet eine Skelettform über eine Komponente, 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– wird verwendet, um einem Composable zusätzliche Aktionen hinzuzufü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:
HorizontalPager- undVerticalPager-Komponenten, die auf den Compose Foundation-Komponenten basieren und Wear-spezifische Verbesserungen enthalten, 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 wurden neueCompositionLocal- undLocalScreenIsActive-Funktionen erstellt, damit Komponenten informieren und prüfen können, welcher Bildschirm der aktive ist. (I5ff7c). - Die
SwipeToReveal-APIs aus Wear Compose Foundation wurden zugunsten derSwipeToReveal-APIs in Wear Compose Material und Wear Compose Material3 eingestellt. Ersetzen Sie die 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
SwipeToRevealvon Foundation wurden in das Material3-Paket verschoben, z.B.RevealValue,RevealDirection,RevealActionType,RevealState,rememberRevealState. Entwickler sollten ihre Importe dieser Klassen und Funktionen vonandroidx.wear.compose.foundationinandroidx.wear.compose.material3ändern. (I640e6). - Die Wear Compose Material3-API
SwipeToRevealwurde aktualisiert: Der Composable-FunktionSwipeToRevealwurden die ParameterprimaryAction,onFullSwipe,secondaryAction,undoPrimaryAction,undoSecondaryActionundhasPartiallyRevealedStatehinzugefügt. Die Möglichkeit,positionalThresholdundanimationSpecüberRevealStateanzupassen, wurde entfernt.lastActionType,revealThresholdund die Breite wurden ausRevealStateentfernt. Der Konstruktor fürRevealStateakzeptiert jetztRevealDirectionanstelle von Ankern. Die FunktionencreateRevealAnchors, Anker undbidirectionalAnchorswurden entfernt. DieSwipeToRevealScope-FunktionenprimaryAction,secondaryAction,undoPrimaryActionundundoSecondaryActionwurden inPrimaryActionButton,SecondaryActionButtonundUndoActionButtonumbenannt und in Composable-Funktionen umgewandelt.RevealActionTypewurde als intern gekennzeichnet. (I885d0). - Die
SwipeToRevealAPI wurde weiter aktualisiert:onFullSwipewurde inonSwipePrimaryActionumbenannt,SwipeToRevealNonAnchoredSamplewurde umbenannt, um die Verwendung deshasPartiallyRevealedState-Parameters anzugeben,actionButtonHeightwurde entfernt, da die Standardhöhe des Buttons verwendet wird und die größere Höhe mit einem Modifikator festgelegt werden kann,SmallActionButtonHeightwurde ausSwipeToRevealDefaultsentfernt und der Wertparameter in den KonstruktorenRevealValueundRevealDirectionwurde als privat festgelegt. (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 Drehknopf-Eingabe fehlschlug (dies betraf API 36 und höher, die die intelligente „Zurück“-Geste verwenden). (Ieddb1). - Geänderte Dokumentation für die Hierarchical Focus API (Idf2ff).
- Die Dokumentation für „Button“ und „Card“ wurde aktualisiert, um zu beschreiben, wie
containerPainterunddisabledContainerPaintercontainerColorunddisabledContainerColorüberschreiben (I4a453). - Eine Änderung an
TimeTextim vorherigen Release wurde rückgängig gemacht, bei derBroadcastReceiverin einen Arbeitsthread verschoben wurde. Dies hatte Probleme für Apps verursacht, die ihr eigenes Threading während der Navigation verwalten. (I34d02). - Die Picker-Beispiele wurden aktualisiert, um unnötige „remember“-Aufrufe zu entfernen. Stattdessen wird
rememberUpdatedStatein Picker verwendet, um sich die letztecontentDescription-Lambda-Funktion zu merken. (Icb5b1). - Die Textformatierungen in
TimePickerundDatePickerwurden aktualisiert, sodass Schriftartänderungen nicht mehr zu einer Kürzung führen. (I26194). - Bei
ListHeaderundListSubHeaderist die Textausrichtung 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ür dieEdgeButton-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 der 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.foundationinandroidx.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
TransformingLazyColumnhinzugefügt wurden. (I589b2)
Version 1.5.0-alpha13
09. 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
targetPagewurde zuPagerStatehinzugefügt. (I4de8b)
Fehlerkorrekturen
- Unnötige Neukompositionen bei der intelligenten „Zurück“-Geste 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
gestureInclusioninSwipeToRevealwurde verbessert, sodass Gesten nur ignoriert werden, wenn der Status der Komponente „Covered“ ist. (I7e3d6) - Für
SwipeToRevealwurdebidirectionalGestureInclusionin einen Wert anstelle einer Funktion geändert und@FloatRangedemedgeZoneFraction-Parameter ingestureInclusionhinzugefügt. (Ica7c3)
Fehlerkorrekturen
- Ändern Sie
SwipeToRevealbidirectionalGestureInclusion, um ein Objekt anstelle einer Klasse zurückzugeben. (I29597) - Die Verwendung von Haptik ist deaktiviert, wenn Tests unter
RoboElectricausgeführt werden. (I58bd1) - Aktualisieren Sie die
SwipeToReveal-Abstände zwischen Inhalt und Aktionsschaltflächen sowie den Abstand zwischen dem Symbol und dem Text der Aktionsschaltflächen. (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
- Wir haben
PagerStateaktualisiert. Die Compose Foundation-KlassePagerStatewurde als Basisklasse entfernt und die EigenschaftencurrentPage,currentPageOffsetFractionundpageCountwurden hinzugefügt. DieGestureInclusion-Schnittstelle wurde aktualisiert und die Methode wurde inignoreGestureStartumbenannt. (I4ae07) - Fügen Sie
requireOffsetzuSwipeToDismissBoxStatehinzu, um einen 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 geschwungenen Semantiken zu deaktivieren. BeiCurvedTextwird die Inhaltsbeschreibung weiterhin standardmäßig auf den Text festgelegt, aber beitimeTextCurvedTextundtimeTextSeparatorwerden die Inhalte jetzt nicht mehr vorgelesen. (I4b568) - Die Standardbehandlung von Wischbewegungen für
HorizontalPagerwurde inPagerDefaults.gestureInclusionumbenannt. Standardmäßig werden jetzt nur Wischgesten ignoriert, die am linken Rand der ersten Seite beginnen, und auch nur dann, wenn Talkback deaktiviert ist. In anderen Fällen werden Wischgesten standardmäßig nicht vom Pager ignoriert, sodass sie nicht für Handler vom Typ „Wischen zum Schließen“ verfügbar sind. (Iee486) - Dreh-Overscroll für
rotaryScrollableAPI hinzugefügt. Das Überscrollen und das verschachtelte Scrollen wurden demrotaryScrollable-Fling-Verhalten hinzugefügt. Durch diese Änderung sollte die Funktionalität für Overscroll und verschachteltes Scrollen bei Touch- und Drehscrollen angeglichen werden. (I71926) - Unterstützung für eine Wischzone am Rand für
SwipeToRevealhinzugefügt. Das Standardverhalten von FoundationSwipeToRevealbesteht nun darin, das Wischen zu unterbinden, wenn die Geste am Rand beginnt. Das Standardverhalten von Material3SwipeToRevealbesteht nun darin, das Wischen zu unterbinden, wenn die Touchgeste 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
- Die Wear Compose-Bibliotheken wurden auf den Kotlin 2.0-Compiler aktualisiert. (I2de79)
- Das gekrümmte
LetterSpacing-Muster 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 Schließen durch Wischen. Standardmäßig sind jetzt keine Wischbewegungen am linken Rand der ersten Seite im Pager mehr zulässig. 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 „Schließen durch Wischen“ auf allen Seiten erreichen 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
overscrollEffectzuScalingLazyColumn,TransformingLazyColumnundScreenScaffoldhinzugefügt. (I0cee8) - Bei Verwendung von
PagerDefaults#snapFlingBehaviourwurde der ParameterpagerSnapDistancedurch den Int-ParametermaxFlingPagesersetzt, mit dem die maximale Anzahl der 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 der Begriff das Verhalten klarer beschreibt: Alle Messwerte werden pausiert. Außerdem wird dieMicrobenchmarkScope-Basisklasse 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 rotierenden 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
CurvedTextStylehaben wir den Zeichenabstand in den Zeichenabstand im Uhrzeigersinn und den Zeichenabstand gegen den Uhrzeigersinn unterteilt. Das ist erforderlich, da sich Buchstaben, die im Uhrzeigersinn geschrieben werden, von der Grundlinie aus nach außen hin verbreitern, während sich Buchstaben, die gegen den Uhrzeigersinn geschrieben werden, nach innen hin verbreitern. 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. Vorherige 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) - Wir haben
SwipeToDismissBoxStateeinen Offset-Parameter hinzugefügt. (I586bd)
Fehlerkorrekturen
- Haptik für drehbare Plattformen 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
TransformingLazyColumnhinzugefügt, die beim Hinzufügen, Entfernen und Verschieben von Elementen abgespielt werden, wenn diese das neueModifier.animateItemhaben. (Iecb9c) TransformingLazyColumnenthält jetzt Werte fürbeforeContentPaddingundafterContentPadding. (Iccd5f)TransformingLazyColumnbietet jetzt die KompositionLocalTransformingLazyColumnItemScope, die von Komponenten wieCardundButtonin Material3 verwendet werden kann, um sich automatisch zu transformieren, wenn sie in einemTransformingLazyColumnplatziert werden. Anrufer können das automatische Morphen mit dem neuenTransformExclusion-Wrapper deaktivieren. (I1652f)
Fehlerkorrekturen
- Wir haben die Mindest- und Höchstwerte für die Fling-Geschwindigkeit für Drehungen auf Geräten mit Android U 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
ScrollFeedbackProviderfür Dreh-Haptik auf Android Vanilla Ice Cream hinzugefügt. (Ibc553) - Wir haben den Touch-Toleranzbereich 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, damit ab API 35 nach MöglichkeitPredictiveBackHandlerverwendet wird. 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 sieht vor, 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 für 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
LocalReduceMotionCompositionLocalin die stabile Version (Ia6f32) hochgestuft.
Fehlerkorrekturen
- Wir haben
Modifier.rotaryScrollableaktualisiert, sodassfocusTargetWithSemanticsverwendet wird, um die Semantik bei der Drehung besser zu unterstützen. (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 geführt hat, dass Elemente nach dem Overscrollen mit
TransformingLazyColumn(Id7668) verschwunden sind. - 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 die 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, um die Unterscheidung zur Compose FoundationLazyColumnzu verdeutlichen. (I0608b) - Unterstützung für Drehknopf für horizontale/vertikale Pager hinzugefügt, sodass Nutzer Pager mit Drehknöpfen bedienen können. (I9770d)
- Wir haben die neue
PagerDefaultsaktualisiert, um klarzustellen, dass der Pager standardmäßig an der Seite ausgerichtet wird. (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 kein Wischen zum Schließen 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, mit denen häufige Probleme wie die Fokusverwaltung und die Interaktion mit dem Systemwischen zum Schließen behoben werden können, die auf Wear auftreten können. (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, wenn das Flag „show“ auf „false“ gesetzt ist. (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 Scrollen mit dem Drehrad in
ScalingLazyColumnjetzt deaktiviert ist, wenn das FlaguserScrollEnabledauffalsegesetzt ist. (I490ab, b/360295825) - Wir haben einen Fehler behoben, der zu unerwartetem vertikalen Innenabstand bei gebogenem Text geführt hat. Die Höhe des gebogenen Texts entspricht jetzt genauer dem tatsächlich vom Text verwendeten Platz. Bitte beachten Sie, dass dies wahrscheinlich Screenshot-Tests mit gekrümmtem Text (Iaa6ef) beeinträchtigen wird.
- Wir haben einen Fehlerbehebungs-Patch für
Dialogzurückgesetzt, bei dem 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-Modifikatoren hinzugefügt, um Skalierungs- und Morphing-Verhalten zu unterstützen. (Ie229a) HierarchicalFocusCoordinatorwurde zur stabilen Version hochgestuft. (I31035)- Wir haben die Unterstützung für den Buchstabenabstand bei gebogenem Text hinzugefügt. (I3c740)
- Der Funktion
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
- Mit
SwipeToRevealwerden die angezeigten Elemente jetzt auf dem sichtbaren Teil 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) SwipeToRevealsetztlastActionTypejetzt auf „None“ zurück, wennanimatedToabgeschlossen ist. (I59b03)- Die Dokumentation für den neuen Parameter
rotationLockedaufcurvedComposablewurde verbessert. (Ifbd57) - Ein Absturz wurde behoben, der auftrat, wenn
NaNanScalingLazyColumnSnapFlingBehaviorsperformFlingübergeben wurde. (Ic13da) - Fehler beim 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 Verarbeitung von Dreheingaben 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 Einstiegsanimation 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 Beta 01.
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 „focusable“ durch „focusTarget“ ersetzt, um die Leistung zu verbessern. (Id294b) - Wir haben ein Problem behoben, bei dem die
ProgressIndicatorihre Ankündigung unterTalkBackwiederholte. (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 von gekrümmtem Text erhöht, um Probleme mit dem Abschneiden von Text zu beheben (Id865f).
- Wir haben die Begrenzung des
HorizontalPageIndicator, das an Screenreader übergeben wurde, eingeschränkt. Bisher 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 Drehbewegungen 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 Dreheingabe. Mit dem ParameterrotaryScrollableBehaviorkönnen Sie das Scroll- oder Snap-Verhalten konfigurieren. Für das Einrastverhalten wird empfohlen, das Einrasten auch für das Scrollen per Touch über den ParameterflingBehaviorbereitzustellen. SwipeDismissableNavHostbietet jetzt eine Einstiegsanimation 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, bei dem bei ausgewählten auswählbaren Chips „Zum Umschalten doppeltippen“ 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 Drehbewegung mit Einrasten erforderlich ist. Der Typ des ParameterssnapOffsetinRotaryScrollableDefaults.snapBehavior snapOffsetwurde von „Int“ in „Dp“ geändert. (Iddebe) - Wir haben den Parameter
clickInteractionSourceaufSplitSelectableChipincontainerInteractionSourceumbenannt. (Ia8f84) - Wir haben die Namen der Parameter für den Klick-Callback für
SplitSelectableChipaktualisiert: vononClickzuonSelectionClickund vononBodyClickzuonContainerClick. (I32237)
Fehlerkorrekturen
- Wir haben das horizontale Padding für
PositionIndicatorauf 2 dp aktualisiert (zuvor 5 dp), 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, aufgrund der Änderung des Innenabstands nicht mehr funktionieren. (I57472) - Wir haben die Dokumentation für die neue Drehrad-API verbessert und die Unterschiede zwischen Drehradgeräten mit niedriger und hoher Auflösung beschrieben. (I63abe)
- Wir haben eine Ausnahme für einen Wert außerhalb des zulässigen Bereichs 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 Drehbewegungen 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 Picker jetzt standardmäßig die Dreheingabe. Es gibt neue Überladungen, die den ParameterrotaryBehaviorenthalten, mit dem die Konfiguration für das Scrollen oder Einrasten angegeben wird. Wenn der ParameterrotaryBehaviorauf „snap“ gesetzt ist, empfiehlt es sich, „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 größeren Bemühungen, das Drehreglerverhalten von Horologist zu AndroidX zu migrieren. (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 Modifikatoren als nötig. Daher wird von ihrer Verwendung abgeraten. Entwickler sollten die MethodeinspectableProperties()fürModifierNodeElementimplementieren, wenn sie Modifikatoreigenschaften für Tools verfügbar machen möchten. (Ib3236)
Fehlerkorrekturen
- Wir haben einen Dokumentationsfehler für
WearPreview*-Annotationen behoben. (Id526d)
Version 1.4.0-alpha02
7. Februar 2024
androidx.wear.compose:compose-*:1.4.0-alpha02 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 begann, ein anderes Element zu wischen.(Ide059)
- Wir haben die
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 für In-App-Übergänge eine Eingangsanimation für
SwipeDismissableNavHosthinzugefügt.(cfeb79a) PositionIndicatorwird jetzt standardmäßig angezeigt, wenn ein Bildschirm zum ersten Mal angezeigt wird. Diese Änderung wurde eingeführt, um die Wear-Qualitätsrichtlinien besser einhalten zu können. Das bedeutet leider, dass Screenshot-Tests auf Bildschirmen, auf denenPositionIndicatorangezeigt wird, 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 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 häufiger neu zusammengesetzt als zuvor. Dadurch wird die Anzahl der Statusabos im gesamten Material-Code deutlich verringert, was sich auf die Initialisierungs- und Laufzeitkosten von Standardanwendungsfällen auswirkt. (f5c48b7) - Wear-Material- und Wear-Material3-Komponenten, die in ihrer API ein
MutableInteractionSourceverfügbar machen, wurden aktualisiert und machen jetzt ein nullableMutableInteractionSourceverfügbar, das standardmäßig auf „null“ gesetzt ist. Es gibt keine semantischen Änderungen: Wenn Sie „null“ übergeben, möchten SieMutableInteractionSourcenicht verschieben. 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 Listener verwendet wird, der den Lebenszyklus berücksichtigt. (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-,Switch- undRadioButton-Rollen behoben, sodass Ankündigungen zur Barrierefreiheit nicht wiederholt werden. Zuvor wurden semantische Rollen dupliziert. (d11eeb7)
Version 1.3
Version 1.3.1
3. April 2024
androidx.wear.compose:compose-*:1.3.1 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-Workflows, 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. In Version 1.3.0-alpha02 haben wir 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 (26 dp anstelle von 24 dp) verwendet. Die ObjekteChipundToggleChipverwenden diesen neuen Eckenradius, um zu vermeiden, 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 Beta 01.
Empfehlungen für die Implementierung
- Wenn Nutzer in Ihrer App den Bildschirminhalt 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 scrollenden Liste deaktivieren möchten, verwenden Sie ein
SnapSpec-Objekt. - Während Sie darauf warten, dass eine Media-App Inhalte für die Wiedergabe lädt, zeigen Sie ein leeres
Placeholder-Composable an. - Wenn Sie eine Sammlung von Elementen erstellen möchten, die bei Bedarf maximiert werden können, 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
MaterialThemeaktualisiert, sodass sie jetzt 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 erfolgte, während der Finger den Bildschirm berührte. (Id8e76)
Version 1.3.0-beta01
15. November 2023
androidx.wear.compose:compose-*:1.3.0-beta01 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.materialwird weiterhin für Material Design empfohlen, da Farben aus demMaterialThemeabgerufen und die verbleibende Implementierung an dasBasicSwipeToDismissBoxdelegiert wird.SwipeDismissableNavHostunterstützt jetzt einen neuenuserSwipeEnabled-Parameter, sodass die Wischbewegungserkennung für Bildschirme deaktiviert werden kann, auf denen sie nicht erforderlich ist.BasicSwipeToDismissBoxhat die Verarbeitung des Fokus 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 separate Animationsspezifikationen für das Ein- und Ausblenden sowie für Positionsänderungen. Aus Leistungsgründen empfehlen wir, Einblenden 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.Placeholderermöglicht jetzt das Zurücksetzen, wenn der Inhalt nicht mehr den Status „Bereit“ hat. Außerdem gilt die Einstellung „Bewegung reduzieren“ jetzt auch für den Schimmereffekt und die Wischeffekte aufPlaceholder.
Bekannte Probleme
PositionIndicatorwird nicht sofort angezeigt, wenn ein Bildschirm zum ersten Mal eingeblendet wird. Wir beabsichtigen, in einer frühen 1.4-Alphaversion eine Änderung vorzunehmen, sodass sie anfangs angezeigt wird, aber ohne Animation.
API-Änderungen
- Wir haben die Foundation-Stufe
SwipeToDismissBoxinBasicSwipeToDismissBoxumbenannt. So 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 MaterialSwipeToReveal-Karten- und Chip-APIs durch eine slotbasierte API mit den ComposablesSwipeToRevealPrimaryAction,SwipeToRevealSecondaryActionundSwipeToRevealUndoActionersetzt. Beispielcode für die Verwendung der neuen API finden Sie unten. (Ia8943) - Wir haben die
PositionIndicator-Animationsflags durchAnimationSpec-Parameter ersetzt. Die einzelnen Animationen können deaktiviert werden, indem SiesnapalsAnimationSpecübergeben. (I6c523)
Fehlerkorrekturen
- Wir haben einen Fehler behoben, der durch begrenzten gekrümmten Text ausgelöst wurde, wenn die Größe begrenzt war (I50efe).
- Wir haben einen potenziellen NaN-Absturz im Zusammenhang mit
curvedComposable(I970eb) behoben. - Wir haben die Entfernung der Hervorhebung der Positionsänderung auf
PositionIndicatorrückgängig gemacht. (Ieb424) - Wir haben die Material-Core-Ebene für Material-Chips 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. 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>anstatt 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 ausgeblendet bzw. die Symbolskalierung bei vollständiger Wischexpansion geändert haben. (Ib7223)
- Es wird empfohlen, dass die Aktionen „Wischen zum Aufdecken“ barrierefrei sind. Wir haben unseren Beispielen für „Wischen zum Aufdecken“ benutzerdefinierte Aktionen für Bedienungshilfen hinzugefügt. (I42224)
- Wir haben die Leistung von
SwipeToDismissBoxverbessert, einschließlich Refaktorierung, um sicherzustellen, dass die ursprüngliche Logik keine Neukomposition auslöst. DieSwipeToDismissBoxwird jetzt in voller Bildschirmgröße dargestellt. (Ie0aa2) - Wir haben einen Fehler behoben, durch den die
PositionIndicatorfälschlicherweise verschwunden ist. (I2091a) - Die Leistung von
PositionIndicatorwurde durch die Optimierung von Neuzusammenstellungen 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 Bearbeitung in „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, sodass es die
androidx.wear.tooling.preview-Bibliothek verwendet. (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 sich
SwipeToRevealmit Karten und Chips implementieren lässt. 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-Anmerkungen 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 Strichzuweisungen zu optimieren. (I5f225, b/288234617) - Wir haben die Sichtbarkeit von Häkchen in deaktivierten Checkboxen korrigiert. (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 vom Paketandroidx.wear.compose.materialzum Paketandroidx.wear.compose.foundationmigriert. (I275fb)- Aktualisierte API-Dateien zum Annotieren der Kompatibilitätsunterdrückung. (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 Wischbewegungserkennung in
SwipeDismissableNavHostüber den neuen ParameteruserSwipeEnableddeaktiviert werden kann. (Id2a0b, b/230865655) - Wir haben die Wear Compose Navigation-Bibliothek aktualisiert, sodass sie die neue
SwipeToDismissBoxaus Wear Compose Foundation verwendet. (I4ff8e)
Fehlerkorrekturen
- Wir haben einen Fehler bei der Z-Reihenfolge behoben, bei dem
expandedItemnach dem Klicken auf eine Schaltfläche nicht den richtigen Inhalt angezeigt hat, wenn sie Schaltflächen enthält. (I1899d, b/289991514) - Fokusbehandlung von
SwipeToDismissBox(und damitSwipeDismissableNavHost) mitHierarchicalFocusCoordinatorverbessern (I45362, b/277852486) - Wir haben die Verarbeitung von Touchgesten in
SwipeableV2korrigiert . (I89737) - Wir haben die Baseline-Profile für 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 Design.(If8451) - Wir haben
ListHeaderÜberschriftensemantik 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)- Es wurde ein Fehler in der semantischen Rolle des tippable Bereichs von
SplitToggleChipbehoben, um die Barrierefreiheit zu verbessern. (Ieed3a) - Durch die Einstellung „Bewegung reduzieren“ werden jetzt der Schimmereffekt und die Wischeffekte auf 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 so die Android-Plattform zu vereinheitlichen. Dadurch wird das Abschneiden von Text bei großen Schriftgrößen in einigen Fällen behoben. Außerdem kann sich das auf das Bildschirm-Layout auswirken, sodass Screenshot-Tests aktualisiert werden müssen. Hier sehen wir beispielsweise, dass Text abgeschnitten wird (Ic6a86).
- Sie ist nicht mehr vorhanden, wenn das Schriftarten-Padding deaktiviert ist:
- 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 für
SwipeToDismissBoxcontentScrimColorbehoben. (I2d70f) - Wir haben die Bewegungsdarstellung in
SwipeToRevealverbessert. (I28fb7)
Bekannte Probleme
- Die Unterstützung von vom Nutzer konfigurierten Schriftgrößen ist eine Anforderung an die Barrierefreiheit. Wir wissen, dass mehrzeilige Chips bei großen Schriftgrößen zu abgeschnittenem Text führen können. Daher werden wir den Chip in einer frühen Alphaversion 1.3 aktualisieren, um in diesen Fällen die Höhe anzupassen.
Version 1.2
Version 1.2.1
18. Oktober 2023
androidx.wear.compose:compose-*:1.2.1 ist veröffentlicht. Version 1.2.1 enthält diese Commits.
Fehlerkorrekturen
- Es wurde ein Fehler behoben, der dazu geführt hat, dass
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 Foundation- und Material-Bibliotheken aktualisiert(I4725d).
- Wir haben eine Inkonsistenz bei den Standardwerten für die Parameter
SwipeToDismissBoxundcontentScrimColorbehoben (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 maximierbares 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 „fokusfähig“ oder „nicht fokusfähig“ 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. Sie verwaltet den Fokus zwischen den Auswahlfeldern mithilfe derHierarchicalFocusCoordinatorAPI und ermöglicht die automatische Zentrierung von Auswahlfeldelementen.Placeholder: Wir haben die Animationen für „Schimmer“ und „Abwischen“ aktualisiert. Der Abwischeffekt wird jetzt sofort angewendet, wenn die Inhalte bereit sind.ScalingLazyColumn: Wir habenScalingLazyColumnund die zugehörigen 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 gibt es die folgenden Annotations für die Vorschau und die Vorschau auf mehreren Geräten: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 Einblendungsanimationen 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 „Zum Aufdecken wischen“ 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 den 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 Fling auf Wear API 33 hängen blieb (Ic4599). - Wir haben die Leistung von
PositionIndicatorverbessert, 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 PlatformTextStyle.includeFontPadding-Wert auf „true“ beibehalten. Weitere Informationen finden Sie unter Schriftart-Padding in Compose korrigieren. Wir werden den DefaultTextStyle ändern, um das Schrift-Padding in einer frühen Alphaversion von 1.3 zu deaktivieren, damit die Android-Plattform einheitlicher wird. Dadurch wird das Abschneiden von Text bei großen Schriftgrößen in einigen Fällen behoben. Außerdem kann sich das auf das Bildschirm-Layout auswirken, sodass Screenshot-Tests aktualisiert werden müssen. Bei großen Schriftgrößen wird der Text beispielsweise abgeschnitten:
- Sie ist nicht mehr vorhanden, wenn die Schriftartauffüllung deaktiviert ist:
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 zum Festlegen der Winkelbreite in DP hinzufügen (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 eines minimierten Buttons zu vereinfachen, 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 gesamten Animation zentriert bleibt. (I2f637) ToggleControlswurde aktualisiert, um zusätzliche Neuzusammenstellungen bei der manuellen Animation der Farben mit „State“ zu vermeiden. (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 zu
MaterialThemehatten. (Ib0525)
Fehlerkorrekturen
- Wir haben einen Absturz behoben, der auf einem Bildschirm mit
PickerGroupaufgetreten ist. Dazu haben wir dafür gesorgt, dassPickerGroupden Fokus korrekt verarbeitet, wenn kein Picker den Fokus hat. Außerdem wurde in unseren Picker-Demos die Unterstützung für das Scrollen mit dem RSB 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 Schriftarten-Padding in Compose korrigieren. (I2aee8) - Eine
UpsideDownCake-Vorabversion-Abhängigkeit über activity-compose wurde wiederhergestellt, 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 Komponente
CurvedBoxhinzu, mit der Komponenten in der gekrümmten Welt übereinander platziert werden. (I29200) - „Expandable Item(s)“ (Einblendbare Elemente) – zwei neue Komponenten, die entweder eine Gruppe von einblendbaren Elementen in einem
ScalingLazyColumnoder ein einzelnes einblendbares Element wie Text unterstützen, bei dem sich die Anzahl der Zeilen erhöht. (I95dd5) - Wir haben die folgenden benutzerdefinierten Annotationen 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 gibt es die folgenden Annotations für die Vorschau und die Vorschau auf mehreren Geräten:WearPreviewFontScalesrendert die Composables auf einem Wear-Gerät mit mehreren Schriftgrößen, währendWearPreviewDevicesdie Composables auf verschiedenen Wear-Geräten rendert. Um diese Vorabversionen verwenden zu können, 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 Vorschaufunktion trotzdem verwenden und sie über Parameter weiter anpassen. (I397ff) - Wir haben
HierarchicalFocusCoordinatorals experimentell gekennzeichnet, da es aufgrund seiner breiten Anwendbarkeit als Kandidat für die Aufnahme in die Compose-Kernbibliotheken infrage kommt. (I3a768)
Fehlerkorrekturen
- Ein Fehler auf
HierarchicalFocusCoordinatorwurde behoben. Wenn die für den ParameterfocusEnabledübergebene Lambda-Funktion geändert wird, verwenden wir jetzt die neue Funktion. (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 die Barrierefreiheit verbessert. (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, damit die Mindestanforderungen optional an das Composable weitergegeben werden können. Wenn „true“ festgelegt ist, sind die Mindestbeschränkungen, die von der übergeordneten zusammensetzbaren Funktion übergeben werden, für diePickerGroupzulässig. Wenn „false“ festgelegt ist, werden die Mindestanforderungen fürPickerGroupzurückgesetzt. (I3e046) - Wir haben der Picker API
animateScrollToOptionhinzugefügt, um die programmatische Animation einer bestimmten Picker-Option zu unterstützen (I6fe67).
Fehlerkorrekturen
- Wir haben
HorizontalPageIndicatoraktualisiert, um Layouts mit Leserichtung von rechts nach links 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 Auswahlen 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 den ausgewählten Picker in 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. In diesem Beispiel finden Sie Informationen zur Migration. Die 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:
- Die
PositionIndicator-APIs für MaterialScalingLazyColumnwurden 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
ScrollAwayaktualisiert, sodass erScalingLazyListStateaus Wear ComposeFoundation.Lazyverwendet. Die Überladung, dieScalingLazyListStateaus Wear Compose Material verwendet hat, ist jetzt veraltet. (Ifc42c) - Wir haben die Dialog-APIs aktualisiert, sodass sie
ScalingLazyListStateanstelle vonFoundation.Lazyverwenden. Außerdem haben wir die Überladungen verworfen, die MaterialScalingLazyListState(Ic8960) verwendet haben. - Wir haben die Picker APIs aktualisiert, sodass sie
ScalingParamsausFoundation.Lazyverwenden. Die Überladungen, die MaterialScalingParamsverwendet haben, wurden eingestellt. (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. - Es wurden Benchmarktests für
ScalingLazyColumnin Wear Compose Foundation (Ie00f9) hinzugefügt. - Wir haben einige interne Methoden der
ScalingLazyColumn-Klassen in Material aktualisiert, damit sie die entsprechenden Methoden ausFoundation.Lazyverwenden (I38aab). - Wir haben einige Probleme in Picker-Tests behoben und weitere Tests zum Prüfen des Scrollens mit Offset hinzugefügt (I6ac34).
- Die
ScalingLazyColumn-Integrationsdemos basieren jetzt aufFoundation.Lazyanstelle von MaterialScalingLazyColumn(Ic6caa). - 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 bis zum Leerlauf ausgeführt werden (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
Picker-Komponente behoben, indem wir die neue Compositing-Strategie genutzt haben, dieModifier.graphicsLayerhinzugefügt wurde. (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-Zeit- und Datumsauswahl-Demos (I05e12) verbessert.
- Wir haben unsere Demos für die Datums- und Uhrzeitauswahl 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, und nicht erst, wenn der nächste Animationszyklus beginnt. Außerdem haben wir die Animationen für das Einblenden und Ausblenden überarbeitet. (I5a7f4)
API-Änderungen
- Wir haben eine
HierarchicalFocusCoordinator-Composable-Funktion hinzugefügt, mit der Unterbäume der Komposition als „fokusfähig“ oder „fokusfähig“ 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 und AM/PM inTimeTextentfernt. Dadurch wird der Standardwert vontimeSource-Parametern in derTimeTextAPI geändert. (I1eb7f) - Wir haben die Picker API erweitert, um die Barrierefreiheit für Bildschirme mit mehreren Auswahlmöglichkeiten zu verbessern. Es gibt eine neue Property
userScrollEnabled, mit der gesteuert wird, ob die Auswahl für das Scrollen durch den Nutzer aktiv ist. (I3c3aa)
Fehlerkorrekturen
- Wir haben die Standardbreite des Rahmens für ein
OutlinedButton/OutlinedCompactButtonvon 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, anscheinend an seinen Platz scrollt, 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, und nicht erst, wenn der nächste Animationszyklus beginnt. Außerdem haben wir die Animationen für das Einblenden und Ausblenden überarbeitet. (I5a7f4)
Fehlerkorrekturen
- Wir haben die Standardbreite des Rahmens für ein
OutlinedButton/OutlinedCompactButtonvon 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, anscheinend an seinen Platz scrollt, 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 Baseline-Profilregeln für
Placeholders,ScrollAway,RadioButton,Switch,Checkbox,OutlinedButton,OutlinedCompactButton,OutlinedChipundOutlinedCompactChiphinzugefügt. (I8249c) - Wir haben einen Fehler in
Modifier.scrollAwaybehoben. Wenn die angegebeneitemIndexungültig ist (z. B. wenn der Artikelindex außerhalb des gültigen Bereichs liegt), wird dieTimeTextjetzt trotzdem angezeigt. (I2137a) - Wir haben die
SwipeToDismissBox-Animation an die Plattformimplementierung angepasst. Nach der ersten Animation wird der Bildschirm nun 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 der Dokumentation und dem Beispiel für Platzhalter die richtige Reihenfolge für
Modifier.placeholderundModifier.placeholderShimmerhinzugefügt, wenn sie auf dasselbe Composable angewendet werden. (Ie96f4, b/256583229) - Wir haben die Standardbreite des Rahmens für ein
OutlinedCompactChip/OutlinedChipvon 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) Die Shimmer-Progression wurde durch eine kubische Bézierkurve optimiert. 3) Die Wipe-off-Animation wurde beschleunigt (250 ms). (Id29c1)
- Wir haben einen UI-Fehler im Platzhalter-WipeOff-Effekt korrigiert, 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 Alpha-Überblendung der verschiedenen zugeschnittenen Ebenen dazu führt, dass die darunter liegenden Farben an den Rändern des Platzhalterhintergrunds durchscheinen. (I2ea26)
- Wir haben die Berechnung von
ScalingLazyListState.centerItemIndex/centerItemOffsetkorrigiert. Wenn sich zwei Elemente auf beiden Seiten der Mittellinie des Viewports befinden, wird das Element, das sich am nächsten befindet, alscenterItembetrachtet. (I30709, b/254257769) - Wir haben einen Fehler in
ScalingLazyListState.layoutInfo.visibleItemsInfobehoben, bei dem während derScalingLazyColumn-Initialisierung falsche Offsets gemeldet wurden. 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 for 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:
- Auswahltool: Verbesserungen der Bedienungshilfen im Auswahltool, 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 Nullwerte zulässt. Im vorherigen Commit musste eine Zuordnung von der Option zur Inhaltsbeschreibung übergeben werden, aber nur die ausgewählte Option wurde verwendet. - Auswahl-Elemente 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 neuesten UX-Spezifikationen anzupassen.ChipDefaults.gradientBackgroundChipColorsbeginnt jetzt bei 50% des Primärbereichs anstatt bei 32,5%.Chip/ToggleChip– Überladungen zum Ändern von Chipformen hinzugefügtChip/Button/ToggleButton– Es wurde ein neuer umrissener Stil für Chips und Schaltflächen sowie neueOutlinedChip- undOutlinedButton-Composables hinzugefügt, die eine transparenteChip/Buttonmit einem dünnen Rahmen bieten.- Karte: Die Standardverläufe für Karten wurden aktualisiert, um sie an die aktuelle UX-Spezifikation anzupassen.
CardDefaults.cardBackgroundPainterbeginnt jetzt bei 30% des Primärfarbtons und endet bei 20% vononSurfaceVariant(zuvor 20% bis 10% vononSurfaceVariant).ToggleChip.toggleChipColorsändert sich von einem linearen Farbverlauf von 75% der Oberfläche zu 32,5% des Primärfarbtons zu 0% der Oberfläche zu 50% des Primärfarbtons. Button/ToggleButton– Es wurden Eigenschaften zum Ändern der Buttonformen hinzugefügt.- Design: Wir haben einige der Standardfarben in
MaterialThemeaktualisiert, 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 z. B. 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. Sie können anstelle der statischen Symbole verwendet werden, die vonToggleChipDefaultsbereitgestellt werden (switchIcon,checkboxIconundradioIcon).- Platzhalter – Es wurde experimentelle Unterstützung für 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 Modifikator-Gradienten-/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 orchestrale Weise schimmern und abgewischt werden.
- Core-Compose-Abhängigkeiten von Version 1.2 auf Version 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
Picker, wennPickerState.repeatedItems = false, um eine explizite Einstellung der autoCentering-Parameter für die interneScalingLazyColumnvon Pickers hinzuzufügen, damit die nullte Option in der Mitte der Ansicht gescrollt werden kann. (I8a4d7)
Version 1.1.0-alpha07
5. Oktober 2022
androidx.wear.compose:compose-foundation:1.1.0-alpha07, androidx.wear.compose:compose-material:1.1.0-alpha07 und androidx.wear.compose:compose-navigation:1.1.0-alpha07 sind veröffentlicht. Version 1.1.0-alpha07 enthält diese Commits.
Neue Funktionen
- Wir haben die experimentelle Unterstützung von Platzhaltern 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 Modifikator-Gradienten-/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 verschwinden. (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 auf „Dp“ aktualisiert, um ihn anModifier.offsetanzugleichen (zuvor war er in Pixeln angegeben). Außerdem wurde der Code zur Effizienzsteigerung alsLayoutModifierumgestaltet. (I9f94b) - Im Rahmen der neuen API für Ein/Aus-Schalter haben wir
RadioButton’s circleColorinringColorumbenannt. (I28fa9) - Wir haben animierte Ein/Aus-Schaltflächen für
Checkbox,SwitchundRadioButtonzur 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 gescrollt wird (mit Überladungen fürColumn,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 erforderlichen Platz einnimmt. Das ist z. B. 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 befinden sich jetzt über der Vignette und werden daher nicht von ihr verdeckt, falls sie vorhanden ist. (Ib988f, b/244207528)
Version 1.1.0-alpha04
24. August 2022
androidx.wear.compose:compose-foundation:1.1.0-alpha04, androidx.wear.compose:compose-material:1.1.0-alpha04 und androidx.wear.compose:compose-navigation:1.1.0-alpha04 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 geringen Anzahl von Listenelementen (in der Regel genau 2) 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 mit einem transparentenChip/Buttonmit dünnem Rahmen hinzugefügt. (Id5972)
API-Änderungen
- Überladungen zum Ändern von Schaltflächenformen hinzugefügt (Icccde)
Fehlerkorrekturen
- Wir haben die Größe des Ein/Aus-Schalter-Bereichs von
ToggleChipkorrigiert, da sie nicht der UX-Spezifikation entsprach. Laut UX-Spezifikation ist ein Abstandhalter von 4 dp zwischen dem Label und einem 24 × 24 dp großen Ein/Aus-Schalter-Symbolbereich 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. Das kann sich (positiv) auf das Textlayout für überlaufenden 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 1.2.0 auf 1.3.0-alpha0X umgestellt.
API-Änderungen
- Überladungen zum Ändern von Chipformen hinzugefügt (I02e87)
Fehlerkorrekturen
- Wir haben die Sichtbarkeit der Vignette beim Einblenden/Ausblenden des Dialogfelds 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. Bisher war es erforderlich, eine Zuordnung von der Option zur Inhaltsbeschreibung zu übergeben, aber nur die ausgewählte Option wurde verwendet. (Ife6a7) - Wir haben die Bedienungshilfen für die Auswahl verbessert, sodass Bildschirme mit mehreren Auswahlmöglichkeiten mit Screenreadern navigiert werden können und die Inhaltsbeschreibung zugänglich ist (I64edb).
Fehlerkorrekturen
- Wir haben die mit der Wear Compose-Bibliothek bereitgestellten Baseline-Profilregeln aktualisiert (I9c694).
- Wir haben die Richtung des Verlaufs für Chips im Rechts-nach-links-Modus korrigiert. Die Richtung war bisher von oben links nach unten rechts, jetzt ist sie von oben rechts nach unten links. (Ic2e77)
- Wir haben die Standardverläufe für
Chip/ToggleChip/Cardaktualisiert, um sie an die aktuelle UX-Spezifikation anzupassen.ChipDefaults.gradientBackgroundChipColorsbeginnt jetzt bei 50% der Primärfarbe anstatt bei 32,5%.CardDefaults.cardBackgroundPainterwurde aktualisiert und beginnt 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. (I43bbd) - Wir haben eine Hintergrundfarbe (
MaterialTheme.color.surface) hinterChip/ToggleChipsmit Verlaufs-Hintergründen hinzugefügt, damit sie auch dann gut sichtbar sind, wenn eine helle Farbe als Hintergrund verwendet wird. (Ibe1a4, b/235937657) - Auswahl-Elemente 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 befinden sich jetzt über der Vignette und werden daher nicht von ihr verdeckt, falls sie vorhanden ist. (Ib988f, b/244207528)
Version 1.0.1
24. August 2022
androidx.wear.compose:compose-foundation:1.0.1, androidx.wear.compose:compose-material:1.0.1 und androidx.wear.compose:compose-navigation:1.0.1 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 geringen Anzahl von Listenelementen (in der Regel genau 2) die Initialisierung nicht abschließen und daher transparent sind. (076c61)
Version 1.0.0
27. Juli 2022
androidx.wear.compose:compose-foundation:1.0.0, androidx.wear.compose:compose-material:1.0.0 und androidx.wear.compose:compose-navigation:1.0.0 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 Wearable-spezifische 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 zu Compose for Wear OS Beta01.
Fehlerkorrekturen
- Wir haben die Sichtbarkeit der Vignette beim Einblenden/Ausblenden des Dialogfelds 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. Die Reihenfolge war bisher oben links –> unten rechts und ist jetzt oben rechts –> unten links. (Ic2e77)
- Wir haben die Standardverläufe für
Chip/ToggleChip/Cardaktualisiert, um sie an die aktuelle UX-Spezifikation anzupassen.ChipDefaults.gradientBackgroundChipColorsbeginnt jetzt bei 50% der Primärfarbe anstatt bei 32,5%.CardDefaults.cardBackgroundPainterwurde so aktualisiert, dass es bei 30% des primären Farbtons beginnt und bei 20% vononSurfaceVariantendet (zuvor 20% bis 10% aufSurfaceVariant).ToggleChip.toggleChipColorsändert sich von einem linearen Farbverlauf von 75% Oberfläche zu 32,5% Primärfarbe zu 0% Oberfläche zu 50% Primärfarbe. (I43bbd) - Wir haben eine Hintergrundfarbe (
MaterialTheme.color.surface) hinterChip/ToggleChipsmit Verlaufs-Hintergründen 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 bereitgestellten Baseline-Profilregeln aktualisiert (I9c694).
Version 1.0.0-rc01
15. Juni 2022
androidx.wear.compose:compose-foundation:1.0.0-rc01, androidx.wear.compose:compose-material:1.0.0-rc01 und androidx.wear.compose:compose-navigation:1.0.0-rc01 sind veröffentlicht. Version 1.0.0-rc01 enthält diese Commits.
API-Änderungen
- Schnittstellen in Compose-Bibliotheken werden jetzt mit JDK8-Standardmethoden für Schnittstellen erstellt (I5bcf1).
Fehlerkorrekturen
- Wir haben den expliziten Aufruf von
fillMaxWidth()im Listenheader entfernt, da er nicht erforderlich ist und zu Problemen führen kann, wenn eineScalinglazyColumneine 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
ScalingLazyColumnbehoben, der dazu führen konnte, dass die Listenelemente erst nach dem Scrollen richtig gezeichnet wurden, wenn das 0. Listenelement groß genug war (einschließlich Padding) (Ic6159, b/234328517). - Wir haben die
ScalingLazyColumn-Dämpfung 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 Tippzielbereichs mindestens 48 dp beträgt und die Material-Richtlinien für Barrierefreiheit eingehalten werden. Dies kann sich auf alle Layouts auswirken, in denenCompactChipsverwendet wird, da sie zusätzlichen Platz benötigen. (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 „Verfassen“@Previewfunktioniert. (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. Wenn Sie zum vorherigen Verhalten zurückkehren möchten, legen SiehorizontalAlignment = Alignment.Start.(I9ed4b) fest.
Bekannte Probleme
- Die Tipp-/Berührungshöhe von CompactChip ist kleiner als in den Material-Richtlinien für Bedienungshilfen angegeben. Dieses Problem wird mit dem nächsten Release (15. Juni) behoben. 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 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 im Lesemodus. So müssen Nutzer nicht erst auf eine Auswahl tippen, bevor sie scrollen können. Im Lesemodus 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 ihre Inhalte 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 auch dasfontWeight. (Dies wird möglicherweise in zukünftigen Versionen der API den Konstruktor- und Kopiermethoden hinzugefügt.) (Ieebb9) - Verbesserungen beim Wischen am 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 gewischt hat.(I916ea) - Auf dem
HorizontalPageIndicatorwerden jetzt bis zu sechs Seiten angezeigt. Wenn es insgesamt mehr als sechs Seiten gibt, wird links oder rechts ein halb so großer Indikator mit einem fließenden Übergang zwischen den Seiten angezeigt.(I2ac29) - Verbessertes Standardverhalten beim Einrasten auf
ScalingLazyColumnundPicker(I49539) - Verbesserungen beim Wischen am 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 erreicht.(I8ca2a)
Version 1.0.0-beta01
11. Mai 2022
androidx.wear.compose:compose-foundation:1.0.0-beta01, androidx.wear.compose:compose-material:1.0.0-beta01 und androidx.wear.compose:compose-navigation:1.0.0-beta01 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 für 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-Design – wird als Ersatz für
MaterialThemein Compose for Mobile verwendet und bietet die Farben, Formen und Typografie zum Erstellen von Komponenten auf Wearables, die die UX-Richtlinien für 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 einem sehr kleinen Hintergrund.CompactButtonhat optional eine transparente Umrandung, die den anklickbaren Bereich vergrößert.ToggleButtonist ein Button mit einem einzelnen Slot für beliebige Inhalte (kurzer Text, Symbol oder Bild). Er hat Ein/Aus-Zustände (aktiviert/deaktiviert) mit Farben und verschiedenen Symbolen, um anzuzeigen, ob er 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 Buttons ä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 Status und einem
ToggleControl-Slot, in dem ein Symbol wie ein Schalter oder ein Optionsfeld angezeigt wird, um den aktivierten Status der Komponente zu kennzeichnen. Außerdem hat dieSplitToggleChipzwei Bereiche, die durch Tippen aktiviert werden können: einen, der angeklickt werden kann, und einen, der umgeschaltet werden kann. - CircularProgressIndicator – Fortschrittsanzeige für Wear-Material mit zwei Varianten. Der erste Wert gibt den Anteil der Fertigstellung einer laufenden Aufgabe an und unterstützt eine Lücke auf dem kreisförmigen Pfad zwischen Start- und Endwinkel. Die zweite gibt 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. Ein Alert ist ein Dialogfeld mit Slots 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. Es hat einen Platzhalter für ein Symbol oder Bild (das animiert werden 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“, die Farbe und Alpha aus dem Wear-Material-Design übernimmt. Informationen zu klickbaren Symbolen finden Sie unter „Button“ oder „Chip“.
- Auswahlfeld: Hier wird eine scrollbare Liste mit Elementen angezeigt, aus denen Sie auswählen können. Standardmäßig werden Elemente in beiden Richtungen „unendlich“ oft 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 das gesamte Display 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 scrollende, skalierende/Fischaugenlistenkomponente, die einen wichtigen Teil der Wear Material Design-Sprache bildet. Bietet Skalierungs- und Transparenzeffekte für die Inhaltselemente.
ScalingLazyColumnist so konzipiert, dass es potenziell große Mengen an Inhaltselementen verarbeiten kann, die nur bei Bedarf materialisiert und zusammengestellt 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 einen Wert aus einem Bereich auswählen können. Dazu verwenden sie die Schaltflächen zum Erhöhen und Verringern oben und unten auf dem Bildschirm. In der Mitte befindet sich ein Slot für Text oder ein Chip.
- „SwipeToDismissBox“: Diese Komponente verarbeitet die Geste zum Schließen durch Wischen. 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 zum Anzeigen der Uhrzeit und des Anwendungsstatus oben auf dem Bildschirm. 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 gebogen ist. Der Inhalt vonCurvedLayoutist kein zusammensetzbarer Lambda-Ausdruck, 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,basicCurvedText, mit dem Entwickler ganz einfach gebogenen Text schreiben können, der der Krümmung eines Kreises folgt (normalerweise am Rand eines runden Displays).basicCurvedTextkönnen nur inCurvedLayouterstellt werden, um eine optimale Nutzung zu ermöglichen. So können Sie beispielsweise die Positionierung festlegen undCurvedModifiersverwenden. In den meisten Fällen sollte stattdessen „curvedText“ verwendet werden, da hier Material-Theming zum Einsatz kommt.„curvedComposable“: umschließt normale komponierbare Inhalte, damit sie mit
CurvedLayoutverwendet werden können. 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 einecurvedRowkönnen die Richtung des Winkellayouts und die radiale Ausrichtung angegeben werden. Für einecurvedColumnkö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, wobei die Rückwärtsnavigation durch eine Wischbewegung erfolgt. Inhalte werden in einem
SwipeToDismissBoxangezeigt, in dem die aktuelle Navigationsebene zu sehen ist. 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 entsprechenden Versionshinweisen.
API-Änderungen
CurvedModifier.padding*-Funktionen hinzugefügt. Mit diesen Attributen wird zusätzlicher Abstand um eine gekrümmte Komponente herum angegeben. (I4dbb4)- Interne Klasse
CompositionLocal(I42490) entfernt - Wir haben konstante Werte für die Symbolgrößen von
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
- Im Stepper werden die Schaltflächen zum Verringern und Erhöhen jetzt deaktiviert, wenn die Unter- bzw. Obergrenze erreicht wurde. Außerdem wird „ContentAlpha.disabled“ auf „iconColor“ angewendet. (I4be9f)
- Wir haben um die Picker-Inhalte, die mit einem Farbverlauf gezeichnet werden, ein Padding von 1 dp hinzugefügt, um beim Wischen ein Zittern des Texts zu verhindern. (I0b7b9)
- Screenshot-Tests für
PositionIndicatorhinzufügen (I5e8bc) - 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 gebogenen Text angegeben werden (clip/ellipsis/visible). (I8e7aa)
- Der Modifier
CurvedModifier.weightwurde hinzugefügt, ähnlich wie 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 gesamten Wear Compose API einheitlich 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 Ein/Aus-Schaltfläche angewendet wird. (Ied238) - Enum
PageIndicatorStylein Wertklasse umschreiben (I2dc72) - Wir haben einigen Slots in unseren Composables
RowScope/ColumnScope/BoxScopehinzugefügt, um Entwicklern die Layout-Annahmen zu verdeutlichen. So können Entwickler zusätzliche Modifizierer für einige Slot-Inhalte verwenden und müssen keine zusätzlichen Layoutelemente bereitstellen. Außerdem haben wir die Farben der AppCard/TitleCard leicht angepasst, sodasstimeColorundappColorstandardmäßig aufcontentColorfestgelegt sind. Diese Eigenschaften können bei Bedarf weiterhin einzeln überschrieben werden. (I26b59) SwipeToDismissBoxState.Companion-Objekt auf „privat“ gesetzt (I39e84)- Die Reihenfolge der Parameter für
InlineSliderundStepperwurde korrigiert. 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. Der Abstand wurde auf horizontal = 12 dp und vertikal = 0 dp reduziert. Die Schriftart für das Label wurde von „Schaltfläche“ in „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 voncontentPaddingundautoCenteringPaddingsehen können, 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 die 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 und Barrierefreiheit 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-Satz erstellen. (I5bb5b) - Wir haben
SwipeDismissableNavHostden ParameterSwipeDismissableNavHostStatehinzugefügt. Dadurch wird die Verwendung von Wischbewegungen am Displayrand auf Bildschirmen unterstützt, die als Navigationsziele verwendet werden, daSwipeToDismissBoxStatejetzt angehoben und verwendet werden kann, um sowohlSwipeDismissableNavHostStateals auchModifier.edgeSwipeToDismissauf Bildschirmen zu initialisieren, die Wischbewegungen 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 die
edgeSwipeToDismiss-Anpassung fürSwipeToDismisshinzu. Ermöglicht, dassswipeToDismissnur am linken Rand des Darstellungsbereichs aktiv ist. Wird verwendet, wenn die Mitte des Displays horizontales Paging unterstützen muss, z. B. beim 2D-Scrollen einer Karte oder beim horizontalen Wischen zwischen Seiten.(I3fcec, b/200699800)
API-Änderungen
- Die Basisimplementierung von
CurvedModifiersermöglicht die Einführung von Möglichkeiten zur Anpassung gekrümmter Inhalte (aber es werden noch keineCurvedModifiersbereitgestellt und die Möglichkeit , benutzerdefinierte Modifikatoren zu erstellen, ist möglicherweise später verfügbar) (I9b8df) - Die Dokumentation für
EdgeSwipe-Modifikatoren und Standardwerte wurde 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 sicherstellen, dass es auf runden Geräten korrekt angezeigt wird. (Ia6042) - Entfernen Sie die Standardsymbole aus
InlineSlider- und Stepper-Parametern. So können Entwickler besser auf die Anforderungen an die Lokalisierung und Barrierefreiheit achten. 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-Annotationen 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 die neue
flingBehaviour-Eigenschaft und diePickerDefaults.flingBehaviour()-Methode hinzugefügt, um das Fling-Verhalten zu konfigurieren, z. B. um RSB-Unterstützung hinzuzufügen.PickerStateimplementiert jetzt dieScrollableState-Schnittstelle. (Ib89c7)
Fehlerkorrekturen
- Die ART-Baseline-Profilregeln für Wear Compose-Bibliotheken wurden aktualisiert. ART kann Profilregeln auf Geräten nutzen, um einen bestimmten Teil der Anwendung vorab zu kompilieren und so die Leistung der Anwendung zu verbessern. Hinweis: Dies hat keine Auswirkungen auf debugfähige Anwendungen. (Iaa8ef)
- Dokumentation verbessern (I2c051)
Version 1.0.0-alpha19
23. März 2022
androidx.wear.compose:compose-foundation:1.0.0-alpha19, androidx.wear.compose:compose-material:1.0.0-alpha19 und androidx.wear.compose:compose-navigation:1.0.0-alpha19 sind veröffentlicht. Version 1.0.0-alpha19 enthält diese Commits.
API-Änderungen
CurvedRowwurde inCurvedLayoutumbenannt und als Bereich mit einer DSL überarbeitet. Mit dieser DSL können komplexere gekrümmte Layouts mithilfe einer Reihe von verschachteltencurvedRow- undcurvedColumn-Elementen angegeben werden. Das sind die gekrümmten Layout-Entsprechungen von „Row“ und „Column“. Innerhalb dieser Layoutelemente können drei Elemente verwendet werden:curvedComposable(zum Hinzufügen einer beliebigen @Composable-Funktion),basicCurvedText(gekrümmter Text der Foundation) undcurvedText(gekrümmter Text, der das Wear-Material berücksichtigt). (Ib776a)- Die Seite für
PositionIndicatorkonfigurierbar machen. Die Position des einfachen PositionIndicator-Elements kann jetzt auf „End“ (layoutrichtungsabhängig), „OppositeRsb“ (berücksichtigt die Bildschirmausrichtung, 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 dem Picker einen schreibgeschützten Modus hinzugefügt, der für Bildschirme mit mehreren Pickern gedacht ist, bei denen jeweils nur ein Picker 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) (I7bce0) - Ein Fehler bei der Positionsanzeige wurde behoben, der auftrat, wenn mehr als ein Status verwendet wurde und zwischen den Status gewechselt wurde (I320b5).
- Wir haben die Typografie/Schriftarten des Standarddesigns für Compose for Wear OS aktualisiert, damit sie unseren aktuellen UX-Richtlinien entsprechen. Die Werte für display1 (40.sp) und display2 (34.sp) sind jetzt kleiner als zuvor. Außerdem wurden verschiedene kleinere Änderungen an der Zeilenhöhe und dem Zeilenabstand vorgenommen. (Ie3077)
- Wir haben den Widerstand für
SwipeToDismissBoxerhöht, sodass die Bewegung nur beim Wischen zum Schließen und nicht in der entgegengesetzten Richtung erfolgt. (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 „Spinner/Unbestimmt“ wurden die Größe (40 –> 24 dp), die indicatorColor (primär –> onBackground), die Transparenz der trackColor (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
ScalingLazyColumngemäß den neuesten Wear Material Design-UX-Spezifikationen aktualisiert. Visuell führt dies dazu, dass Listenelemente näher an der Mitte der Liste skaliert werden, aber weniger stark als zuvor am Rand der Liste. (Ica8f3) - Einige Anpassungen an
ScalingLazyColumnDefaults.snapFlingBehavior, um das Ende der Animation zu verbessern (If3260)
Version 1.0.0-alpha18
9. März 2022
androidx.wear.compose:compose-foundation:1.0.0-alpha18, androidx.wear.compose:compose-material:1.0.0-alpha18 und androidx.wear.compose:compose-navigation:1.0.0-alpha18 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. Wir haben auch dietoggleChipColors()-Methoden vereinfacht und die Methode „splitBackgroundOverlayColor“ (I7e66e) entfernt. - Wir haben „unadjustedSize“ dem
ScalingLazyListItemInfohinzugefügt, da es aufgrund der Gleitkomma-Arithmetik nicht sicher ist, die ursprüngliche Elementgröß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. Das ist z. B. beiDatePickernützlich, 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) - Blende die
PositionIndicatoraus, wenn sie eine Scrollleiste ist und nicht gescrollt werden kann. (Id0a7f) - Aus Gründen der Konsistenz mit Scaffold wird in unserer Vollbild-Dialogkomponente 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 Dialog unterstützt den Parameter „verticalArrangement“ entsprechend. (Idea13) - Wir haben den Namen der toggleIcon-Property
ToggleChipundSplitToggleChipin 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 einen 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 sich anfangs in der Mitte befinden, so platzieren, dass sie nicht in die Mitte gescrollt werden können. 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 die „initiallySelectedOption“ erst angewendet wurde, nachdem die Auswahl angezeigt wurde. (Id0d7e) - Um das Abschneiden breiterer
ScalingLazyColumn-Elemente auf runden Displays zu reduzieren, haben wir das standardmäßige horizontale Content-Padding von 8 auf 10 dp erhöht. (I0d609) - Achte 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 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 einer Uhrzeit im 24-Stunden- oder 12-Stunden-Format hinzugefügt. (Ie5552)
API-Änderungen
- Ein Problem mit
TimeTextbenutzerdefinierten Schriftarten und Stilen auf quadratischen Geräten (Iea76e) wurde behoben. ScalingLazyListLayoutInfohat jetzt die EigenschaftenreverseLayout,viewportSizeund „Ausrichtung“, 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 ausgefüllt wird. Stattdessen wird die Größe anhand der Größe des Inhalts bestimmt. So 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 Vorgangs oder eine nicht näher bestimmte Wartezeit an. Unterstützt eine Lücke (Ausschnitt) für TimeText oder andere Komponenten, wenn sie im Vollbildmodus verwendet werden. (Iab8da)
API-Änderungen
- Auswahlfelder haben jetzt einen
flingBehavior-Parameter. Durch den Standardwert werden sie beim Scrollen/Wischen an der nächsten Option ausgerichtet. (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 die Standard-
ScalingLazyColumnvonextraPaddingreduziert, um sicherzustellen, dass genügend Listenelemente vorhanden sind, aus denen ausgewählt werden kann (auch wenn wir einige von ihnen in der Größe reduzieren), von 10% auf 5%. So wird vermieden, dass zusätzliche Listenelemente erstellt werden, die möglicherweise nicht im Sichtfeld 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. So 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“ (Standardeinstellung), 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 sowohl vor dem ersten als auch nach dem letzten Listenelement zusätzlicher Platz geschaffen, 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. Warnungen und Bestätigungen können als Navigationsziele verwendet werden. Außerdem wurde ColumnScope bei Bedarf zu den Parametern „Alert“ und „Confirmation“ 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 auf der
PickerStatehinzugefügt. Die anfänglich ausgewählte Option kann jetzt auch beim Erstellen einerPickerStateangegeben werden. (I92bdf) - Wir haben die Möglichkeit hinzugefügt, das Wischverhalten 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 drehbarem seitlichen Knopf 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 Viewports der ScalingLazyList und nicht am Anfang des Viewports orientiert.
Der
ScalingLazyListwurde eine 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 den Button „Zurück“ hinzugefügt, sodass durch Drücken des Buttons „Zurück“ zur vorherigen Ebene in der Navigationshierarchie zurückgekehrt 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 (intern referenziert vonInlineSliderundStepper). (I927ec)
Fehlerkorrekturen
Es wurde ein Problem behoben, bei dem
SwipeDismissableNavHostein Ziel der Compose-Hierarchie hinzufügte, bevor es den LebenszyklusstatusCREATEDerreicht hatte. Dies führte zu einemIllegalStateException. 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 zeichnungsfähigen Ressourcen in der Wear Compose-Bibliothek hinzugefügt, sodass keine Reflektion mehr erforderlich ist. Damit wird ein Fehler 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
- Den vorgeschlagenen Werten für die Dialogdauer Einheiten (Millisekunden) 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 der Nutzer ein Element aus einer scrollenden Liste auswählen kann. 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 gemacht, 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
- Weitere Beispiele für TimeText (I8cb64)
Version 1.0.0-alpha10
3. November 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha10, androidx.wear.compose:compose-material:1.0.0-alpha10 und androidx.wear.compose:compose-navigation:1.0.0-alpha10 sind veröffentlicht. Version 1.0.0-alpha10 enthält diese Commits.
Neue Funktionen
Es wurde ein InlineSlider für Wear Compose hinzugefügt. Mit InlineSlider können Nutzer einen Wert aus einem bestimmten Bereich auswählen. Der Auswahlbereich wird als Balken zwischen dem Mindest- und dem Höchstwert des Bereichs dargestellt, aus dem Nutzer einen einzelnen Wert auswählen können. (If0148)
Sehen Sie sich das neue Compose für Wear OS-Codelab an.
API-Änderungen
- Macrobenchmark hat jetzt eine
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 Entwicklervorschau von Compose für Wear OS eingeführt. In unserem Blogpost werden die wichtigsten Composables vorgestellt und es wird auf weitere Ressourcen verlinkt, die Ihnen den Einstieg erleichtern.
API-Änderungen
- Wir haben die Unterstützung für Entwickler hinzugefügt, damit sie alle Farben im Wear Material Design-Farbschema anpassen können. (I4759b, b/199754668)
Fehlerkorrekturen
- SwipeToDismissBox-Beispiele hinzugefügt, die den Status beibehalten (Ibaffe)
- In den KDocs 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 AppCard- und TitleCard-Eigenschaften
bodyincontentumbenannt und an das Ende der Eigenschaftsliste verschoben, damit sie als nachgestellter Lambda-Ausdruck 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 „Button“, „Card“, „Chip“, „Theme“, „Position Indicator“ und „Scaling 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 Microbenchmark-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 (in der Regel 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 SwipeToDismissBox-API wurde der Parameter „hasBackground“ hinzugefügt, damit die Wischbewegung deaktiviert werden kann, wenn keine Hintergrundinhalte angezeigt werden sollen. (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 wurde behoben und die gekrümmte Zeile wird neu gemessen (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 Wear Material Design UX Spec-Richtlinien entsprechen. Wenn sie ausgewählt sind, haben ToggleChips jetzt einen Farbverlauf von MaterialTheme.color.surface @ 0% Alpha (links oben) bis MaterialTheme.color.primary @ 32% Alpha (rechts unten) über einem Hintergrund von MaterialTheme.color.surface @ 75% Alpha. Das führt zu einem weniger deutlichen Unterschied zwischen aktiviert und deaktiviert für den ToggleChip. (Idd40b)
Version 1.0.0-alpha06
15. September 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha06, androidx.wear.compose:compose-material:1.0.0-alpha06 und androidx.wear.compose:compose-navigation:1.0.0-alpha06 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 Positionsanzeigen (z. B. Scrollen oder Lautstärke), 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 Inhalte der Anwendung 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. Damit können Sie ganz einfach zwischen @Composable-Funktionen als Zielen in Ihrer Anwendung wechseln.
Diese erste Version bietet:
- Eine
SwipeDismissableNavHost-Composable, die einen Navigationsgraphen hostet und die Rückwärtsnavigation über Wischgesten ermöglicht NavGraphBuilder.composable-Erweiterung zur Unterstützung beim 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 veralteten
performGestureundGestureScopewurden 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 der Titelkarte wurde von 8 dp auf 2 dp reduziert.
- Die Schriftart für den TitleCard-Header wurde von „body“ zu „title3“ geändert.
- Der Farbverlauf des Kartenhintergrunds wurde geändert, damit der Hintergrund dunkler erscheint.
Version 1.0.0-alpha05
1. September 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha05 und androidx.wear.compose:compose-material:1.0.0-alpha05 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 die Komponente programmatisch scrollen 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 wechseln. 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 „top“ angewendet wurde. (I27c07)
API-Änderungen
- Fügen Sie die Klasse „CurvedTextStyle“ hinzu, um Optionen für die Formatierung von gekrümmtem Text anzugeben. Ä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 festgelegt wurde. (I27c07)
@ExperimentalWearMaterialApiwurde zurSwipeDismissTarget-Enumeration hinzugefügt, die Teil derSwipeToDismissBoxAPI ist. (I48b5e)
Fehlerkorrekturen
- Testmaterial für SwipeToDismissBox hinzugefügt (I9febc)
Version 1.0.0-alpha03
4. August 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha03 und androidx.wear.compose:compose-material:1.0.0-alpha03 sind veröffentlicht. Version 1.0.0-alpha03 enthält diese Commits.
API-Änderungen
- Die Komponente „CurvedText“ wurde hinzugefügt. Damit können Entwickler ganz einfach Text schreiben, der der Krümmung eines Kreises folgt (normalerweise 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 Fischaugenansicht ermöglicht. Die Listeninhalte werden verkleinert und transparent, wenn sie sich zum Rand der Komponente hin bewegen. (I7070c)
Fehlerkorrekturen
- Wir haben die Standardfarbe des Inhalts „appName“ in AppCard aufgrund einer Aktualisierung der UX-Spezifikation geändert. Die Standardfarbe für „appName“ ist jetzt
MaterialTheme.colors.onSurfaceVariant. Außerdem wurde eine fehlende Parameterdokumentbeschreibung 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 (TitleCard) hinzugefügt. 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 (TitleCard) hinzugefügt. 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).
- Die Start- und End-Inhaltsauffüllung für Chips wurde aktualisiert, sodass sie unabhängig davon, ob der Chip ein Symbol enthält oder nicht, einheitlich 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 Hintergrundbilds 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 Alpha-Version 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 verschiedene Varianten, um Symbole, Labels und sekundäre Labels aufzunehmen.
- – 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: Buttons sind kreisförmig und haben einen einzelnen Inhaltsbereich für ein Symbol oder minimalen Text (maximal 3 Zeichen).
- ToggleButton: Ein Button, mit dem eine Aktion aktiviert oder deaktiviert wird. Er hat einen einzelnen Slot für ein Symbol oder einen 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 Releases wird das Widget-Set erweitert und Unterstützung für Wear Material Design-Auswahlfelder, ‑Schieberegler, ‑Listen, ‑Seitenindikatoren, ‑Dialogfelder, ‑Scrollleistenindikatoren, ‑Toasts und mehr hinzugefügt.
Außerdem werden andere Wearable-spezifische Funktionen wie gekrümmte Layouts und Text sowie Gerüste unterstützt, um Entwicklern die Entwicklung von Wearable-Apps und ‑Overlays zu erleichtern.
Wear Compose Material basiert auf denselben Prinzipien wie Compose Material, ist aber für Wearables konzipiert. 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) Sie eine Komponente verwenden, die wir für die Verwendung auf einem Wearable-Gerät nicht empfehlen.