Wear Composer
Letzte Aktualisierung | Stabile Version | Releasekandidat | Beta-Ausgabe | Alpha-Release |
---|---|---|---|---|
4. September 2024 | 1.4.0 | - | - | 1.5.0-alpha01 |
Abhängigkeiten deklarieren
Um eine Wear-Abhängigkeit hinzuzufügen, musst du das Maven-Repository von Google zu deinem Projekt arbeiten. Maven-Repository von Google lesen .
Fügen Sie der Datei build.gradle
die Abhängigkeiten für die Artefakte hinzu, die Sie benötigen
Ihre App oder Ihr Modul:
Cool
dependencies { implementation "androidx.wear.compose:compose-foundation:1.4.0" // For Wear Material Design UX guidelines and specifications implementation "androidx.wear.compose:compose-material:1.4.0" // For integration between Wear Compose and Androidx Navigation libraries implementation "androidx.wear.compose:compose-navigation:1.4.0" // For Wear preview annotations implementation("androidx.wear.compose:compose-ui-tooling:1.4.0") // NOTE: DO NOT INCLUDE a dependency on androidx.compose.material:material. // androidx.wear.compose:compose-material is designed as a replacement // not an addition to androidx.compose.material:material. // If there are features from that you feel are missing from // androidx.wear.compose:compose-material please raise a bug to let us know. }
Kotlin
dependencies { implementation("androidx.wear.compose:compose-foundation:1.4.0") // For Wear Material Design UX guidelines and specifications implementation("androidx.wear.compose:compose-material:1.4.0") // For integration between Wear Compose and Androidx Navigation libraries implementation("androidx.wear.compose:compose-navigation:1.4.0") // For Wear preview annotations implementation("androidx.wear.compose:compose-ui-tooling:1.4.0") // NOTE: DO NOT INCLUDE a dependency on androidx.compose.material:material. // androidx.wear.compose:compose-material is designed as a replacement // not an addition to androidx.compose.material:material. // If there are features from that you feel are missing from // androidx.wear.compose:compose-material please raise a bug to let us know. }
Weitere Informationen zu Abhängigkeiten finden Sie unter Build-Abhängigkeiten hinzufügen.
Feedback
Dein Feedback hilft uns, Jetpack zu verbessern. Teilen Sie uns mit, wenn Sie neue Ausgaben entdecken oder zur Verbesserung dieser Bibliothek. In der bestehende Probleme in dieser Bibliothek, bevor Sie eine neue erstellen. So können Sie für ein vorhandenes Problem abstimmen: indem Sie auf die Sternschaltfläche klicken.
Weitere Informationen finden Sie in der Dokumentation zur Problemverfolgung. .
Wear Compose Material3 Version 1.0
Version 1.0.0-alpha24
4. September 2024
androidx.wear.compose:compose-material3:1.0.0-alpha24
wurde veröffentlicht. Version 1.0.0-alpha24 enthält diese Commits.
API-Änderungen
- Wir haben dem Design Material3 ein Bewegungsschema hinzugefügt. Sie wird von Komponenten in der Bibliothek verwendet, um Animationsspezifikationen wie Federn für ausdrucksstarke Bewegungen anzuwenden. (I54ff3)
- Wir haben der Material3-Bibliothek
AppScaffold
- undScreenScaffold
-Komponenten hinzugefügt, die Funktionen zur Koordinierung von Ebenen und Übergängen vonTimeText
undScrollIndicator
enthalten.AppScaffold
stellt eine oberste Ebene von Scaffold-Komponenten bereit, die auf allen Bildschirmen platziert werden. Wenn du alsoTimeText
zumAppScaffold
hinzufügst, bleibt es an der richtigen Stelle, auch wenn du zwischen den Bildschirmen wischst. Die Bildschirme können den Zeittext überschreiben oder ausblenden.ScreenScaffold
stellt einen Slot fürScrollIndicator
bereit und animiert beim Scrollen automatisch die Scroll-Anzeige, einschließlich eines Zeitlimits, um die Scroll-Anzeige nach Inaktivität auszublenden. (I047d6) - Wir haben
ScrollIndicator
mit dem neuen Material3-Design hinzugefügt. Die Miniaturansicht basiert auf dem ursprünglichen Listeninhalt, um Größenschwankungen zu vermeiden, wenn verzögerte Inhalte in die Liste geladen werden. (IC228d) - Wir haben die
ScrollAway
API so geändert, dassScreenStage
eine Wertklasse anstelle einer enum-Klasse ist, damit in Zukunft bei Bedarf zusätzliche Phasen hinzugefügt werden können. (I48c93) - Wir haben
EdgeButton
hinzugefügt, eine auffällige Wear-spezifische Schaltfläche mit einer Form, die der Krümmung am unteren Displayrand folgt (I16369). - Wir haben dem
ScreenScaffold
eine neue Anzeigenfläche für eine untere Schaltfläche (z. B.EdgeButton
) hinzugefügt, die angezeigt wird und je nach scrollbarem Inhalt seine Größe ändert (I032eb). - Wir haben
Modifier.scrollTransform
undModifier.targetMorphingHeight
hinzugefügt, um Material3-Bewegungseffekte zu Elementen inLazyColumn
hinzuzufügen. (Ie229a) - Wir haben
SegmentedCircularProgressIndicator
als Variante fürCircularProgressIndicator
hinzugefügt. Bei der segmentierten Variante wird entweder ein einzelner Fortschrittswert für alle Segmente angezeigt oder für jedes Segment wird „Ein“ oder „Aus“ angezeigt. (I6e059) - Wir haben
LinearProgressIndicator
als Alternative zur vorhandenenCircularProgressIndicator
hinzugefügt. (I89182) - Wir haben
AlertDialog
hinzugefügt. Mit diesen Layouts können Nutzer wichtige Aufforderungen präsentieren. Variationen werden entweder für ein Paar Bestätigungs-/Schließen-Schaltflächen oder für eine einzelne untere Schaltfläche (in der Regel eine Edge-Schaltfläche) unter einem Stapel von Optionen enthalten. Beide Varianten verfügen über Anzeigenflächen für Symbol, Titel und zusätzlichen Text zur Angabe weiterer Details. (Ieb873) - Wir haben
OpenOnPhoneDialog
hinzugefügt, um auf eine Aktion hinzuweisen, die auf dem Smartphone des Nutzers fortgesetzt wird.OpenOnPhoneDialog
wird nach einem bestimmten Zeitlimit geschlossen. (I978fd) - Wir haben
Confirmation
hinzugefügt, eine Dialogkomponente, die Flächen für ein Symbol und entweder gebogenen oder linearen Text enthält. Für Erfolgs-/Misserfolgsmeldungen werden spezielle Variationen angegeben. Bestätigungen werden nach einer Zeitüberschreitung automatisch geschlossen. (Ib43e8) - Wir haben
TimeText
einen Hintergrund hinzugefügt, um Probleme zu beheben, bei denen sich die zugrunde liegenden Inhalte und dieTimeText
überschneiden und die Zeit verdeckt wurde. (Ia11fd) - Wir haben
LevelIndicator
hinzugefügt. Es zeigt den Wert einer Einstellung wie z. B. der Lautstärke an und kann mit der vorhandenenStepper
-Komponente verwendet werden, um einen Lautstärkebildschirm zu erstellen.LevelIndicator
ähneltScrollIndicator
, wird aber auf der gegenüberliegenden Seite des Bildschirms angezeigt und hat standardmäßig eine breitere Strichbreite und eine andere Indikatorfarbe. (I8a4ac) - Wir haben
TimePicker
hinzugefügt, mit Layouts für die 24-Stunden-Zeit (mit oder ohne Sekunden) oder die 12-Stunden-Zeit mit der Wahl zwischen AM/PM. (Ia5124) - Wir haben
DatePicker
mit einer Konfiguration für die Spaltensortierung (d.h. Tag-Monat-Jahr, Monat-Tag-Jahr oder Jahr-Monat-Tag) und optionalen Mindest-/Maximaldaten hinzugefügt. (Ibf13b) - Wir haben der Funktion
text
derTimeText
einen Gewichtungsparameter hinzugefügt. Wenn TimeText aus mehr als einem Textelement besteht, können Sie so steuern, wie der Raum verteilt wird. (I36700) - Wir haben
RadioButton
undSplitRadioButton
hinzugefügt. Diese Komponenten vereinfachen die vorherige API, indem sie sowohl das (Split)SelectableButton
-Element und das untergeordnete Optionsfeld (If7ae8) kombinieren. - Wir haben
CheckboxButton
undSplitCheckboxButton
hinzugefügt. Diese Komponenten vereinfachen die vorherige API, indem sie sowohl das (Aufteilen)ToggleButton
als auch das untergeordnete Kästchen-Steuerelement (Ia8f70) kombinieren. - Wir haben
SwitchButton
undSplitSwitchButton
hinzugefügt. Diese Komponenten vereinfachen die vorherige API, indem sie sowohl die(Split)ToggleButton
als auch die untergeordnete Schaltersteuerung (I0d349) kombinieren. - Wir haben die Dokumentation zu
AnimatedText
aktualisiert, um das Überschreitungsverhalten zu erläutern. (Iff30a) - Wir haben
ButtonGroup
hinzugefügt, um 2 oder 3 Schaltflächen zu kombinieren, sodass durch Tastendruck eine koordinierte Animation erzeugt wird. (Ie27db) - Beim Drücken wurde eine optionale Formanimation für
IconButton
undTextButton
hinzugefügt. (Iffca5) - Wir haben
Button
,IconButton
,TextButton
,CompactButton
undEdgeButton
(I65fc3) eine weitere Farbvariante hinzugefügt:FilledVariant
. - Wir haben den Parameter
forcedSize
zuImageWithScrimPainter
hinzugefügt, damit Hintergründe für Schaltflächenbilder jetzt standardmäßig ihre Komponentengröße beibehalten. Wenn Sie fürforcedSize = null
festlegen, wird stattdessen dasPainter.instrinsicSize
verwendet. (Ic57af) - Wir haben den Schaltflächen (Ib613d) die Langklick-Funktion hinzugefügt.
- In
IconButton
undTextButton
werden jetzt auch lange Klicks unterstützt. (I38891) - Infokarten werden jetzt auch lange Klicks unterstützt. (I305d5)
- Wir haben
LocalTextMaxLines
,LocalTextAlign
undLocalTextOverflow
alsCompositionLocals
hinzugefügt und sie als Standardparameter fürText
verwendet. Die lokalen Kompositionen können jetzt von Komponenten wieCheckboxButton
,SwitchButton
undRadioButton
verwendet werden, um UX-Richtlinien zu implementieren. Die Parameter können jedoch bei Bedarf von Entwicklern überschrieben werden. (Iab841) - Wir haben
Placeholder
hinzugefügt, um die Maskierung des Inhalts von Komponenten wie Schaltflächen und werden, bis die Daten geladen sind. (I1a532) - Wir haben
IconToggleButtonColors
undTextToggleButtonColors
hinzugefügt, um die jetzt entfernteToggleButtonColors
zu ersetzen. (Ie0bf1)
Fehlerkorrekturen
- Wir haben
Button
,FilledTonalButton
,OutlinedButton
,ChildButton
,CompactButton
aktualisiert, um die neuenCompositionLocals
LocalTextMaxLines
,LocalTextAlign
undLocalTextOverflow
zu verwenden, um UX-Richtlinien zu implementieren. Diese Parameter können bei Bedarf direkt von Entwicklern im Textformat überschrieben werden (Ie51f7). - Wir haben die Standardstrichbreite von
LevelIndicator
in6dp
geändert, um sie von derScrollIndicator
mit einer Strichbreite von4dp
zu unterscheiden. (If6f63) - Wir haben ein Problem in
TimeText
behoben, sodass größere Erledigungswinkel unterstützt werden. (Ie489f) - Ein Problem bei der Neuzusammensetzung von
EdgeButton
wurde behoben. (I4cdca) - Das Layout der Ein-/Aus-Schaltflächen zum Teilen wurde korrigiert, wenn ein benutzerdefinierter Inhaltsabstand angegeben wird. (Ia33d3)
- Kleine Fortschrittswerte wurden auf mindestens die Linienbreite der Fortschrittsanzeige aufgerundet. (I3bd84)
Version 1.0.0-alpha23
14. Mai 2024
androidx.wear.compose:compose-material3:1.0.0-alpha23
wurde veröffentlicht. Version 1.0.0-alpha23 enthält diese Commits.
API-Änderungen
- Wir haben die APIs
ToggleButton
undRadioButton
so aktualisiert, dass deaktivierte Farben konfiguriert werden können. (If13a7) - Wir haben eine neue
CircularProgressIndicator
für Material3 hinzugefügt. (Ib3bd7)
Fehlerkorrekturen
- Wir haben einen Fehler behoben, bei dem auswählbare Schaltflächen zum Umschalten doppelt angetippt wurden, wenn sie bereits ausgewählt waren. (I7ed88)
Version 1.0.0-alpha22
1. Mai 2024
androidx.wear.compose:compose-material3:1.0.0-alpha22
wurde veröffentlicht. Version 1.0.0-alpha22 enthält diese Commits.
API-Änderungen
- Wir haben die Material3-
ColorScheme
aktualisiert. (I7b2b8) - Wir haben den Material3 Switch aktualisiert. Neben einigen Farbänderungen ist das Häkchen nun mit dem des Kästchens identisch. (Icac7b)
Fehlerkorrekturen
- Aktualisieren Sie alle Integrationsdemos, um den neuen
rotaryScrollable
-Modifikator zu verwenden. (I25090)
Version 1.0.0-alpha21
17. April 2024
androidx.wear.compose:compose-material3:1.0.0-alpha21
wurde veröffentlicht. Version 1.0.0-alpha21 enthält diese Commits.
- Dieser Release wurde aufgrund eines technischen Problems in der vorherigen Version ausgelöst, durch das JAR-Quelldateien fehlten. In dieser Version gibt es keine neuen Commits.
Version 1.0.0-alpha20
3. April 2024
androidx.wear.compose:compose-material3:1.0.0-alpha20
wurde veröffentlicht. Version 1.0.0-alpha20 enthält diese Commits.
Fehlerkorrekturen
- Wir haben die Alphas bei gedrückter und fokussierter Welle für den Kontrast angepasst. (I59f0a)
- Wir haben den Abstand zwischen primären und sekundären Labels in
Button
,ToggleButton
undRadioButton
gemäß den neuesten Änderungen an Typografie und Zeilenhöhe hinzugefügt. (I2c0ba)
Version 1.0.0-alpha19
6. März 2024
androidx.wear.compose:compose-material3:1.0.0-alpha19
wurde veröffentlicht. Version 1.0.0-alpha19 enthält diese Commits.
API-Änderungen
- Wir haben der Wear Compose Material3-Bibliothek
TimeText
hinzugefügt. Diese Komponente zeigt die aktuelle Uhrzeit und den zusätzlichen Status oben auf dem Bildschirm an. Die neue, prägnante Material3 API vermeidet Duplikate zwischen linearen und gekrümmten Inhalten. (I4d7c3) - Wir haben die Parameternamen für
RadioButton
vononSelected
zuonSelect
aktualisiert. (I1a971) - Tokenisieren Sie
RadioButton
undSplitRadioButton
und refaktorieren Sie außerdem die vorhandenen Methoden, um die Anzahl derCompositionLocal
-Suchen zu reduzieren. Dazu werden im Cache gespeicherte Farbinstanzen hinzugefügt und die Methoden vonRadioButtonColors
undSplitRadioButtonColors
intern verwendet. (I02b33)
Version 1.0.0-alpha18
21. Februar 2024
androidx.wear.compose:compose-material3:1.0.0-alpha18
wurde veröffentlicht. Version 1.0.0-alpha18 enthält diese Commits.
API-Änderungen
- Wir haben das Standardmuster für
CardColors
,ToggleButtonColors
undSplitToggleButtonColors
umgestaltet, indem intern im Cache gespeicherte Instanzen erstellt und die Nutzung vonCompositionLocal
reduziert wurde. (If3fec)
Version 1.0.0-alpha17
7. Februar 2024
androidx.wear.compose:compose-material3:1.0.0-alpha17
wurde veröffentlicht. Version 1.0.0-alpha17 enthält diese Commits.
API-Änderungen
- Wir haben die Button API so aktualisiert, dass standardmäßig
buttonColors
verwendet wird, und das doppeltefilledButtonColors
entfernt. (I4fe3b) - Wir haben die Standardmuster für
ButtonColors
,IconButtonColors
undTextButtonColors
umgestaltet, indem intern eine im Cache gespeicherte Instanz erstellt und die Nutzung vonCompositionLocal
reduziert wurde. (I5f51c) - Wir haben den Aufwand für
rememberUpdatedState
in komponentenspezifischen Farbklassen entfernt und Zugriffsmethoden innerhalb von Farbklassen als intern gekennzeichnet. (If6571)
Fehlerkorrekturen
- Wir haben
Modifier.minimumInteractiveComponentSize
aktualisiert, sodassModifier.node
verwendet wird. (Iba6b7)
Version 1.0.0-alpha16
24. Januar 2024
androidx.wear.compose:compose-material3:1.0.0-alpha16
wurde veröffentlicht. Version 1.0.0-alpha16 enthält diese Commits.
Neue Funktionen
- Wir haben
CompactButton
hinzugefügt, das dieselben gefüllten, ausgefüllten Ton- und Umrissfarben wie für die Schaltfläche verwenden kann.(I05df0)
API-Änderungen
- Wir haben
RadioButton
/SplitRadioButton
als Container für Auswahleinstellungen wie die Radiosteuerung hinzugefügt. Dies unterscheidet sich von der vorhandenenToggleButton
insofern, alsRadioButton
auswählbar ist (und innerhalb einer Auswahlgruppe ausgeführt wird), währendToggleButton
umschaltbar ist (und unabhängig ist). (I61275) - Wir entfernen
LocalContentAlpha
aus der Wear Compose Material3-Bibliothek, um es an die Compose Material3-Bibliothek anzupassen. (I49a0a) - Wear-Material und Wear Material3-Komponenten, für die eine
MutableInteractionSource
in ihrer API offengelegt wird, wurden aktualisiert. Jetzt ist eineMutableInteractionSource
verfügbar, für die Nullwerte zulässig sind, die standardmäßig auf null gesetzt ist. Hier gibt es keine semantischen Änderungen: Wenn „null“ übergeben wird, bedeutet das, dass dasMutableInteractionSource
nicht gezogen werden soll. Es wird bei Bedarf innerhalb der Komponente erstellt. Wenn Sie den Wert auf null ändern, können einige Komponenten niemals einMutableInteractionSource
zuweisen. Andere Komponenten können eine Instanz nur bei Bedarf langsam erstellen, wodurch die Leistung dieser Komponenten verbessert wird. Wenn Sie dieMutableInteractionSource
nicht verwenden, die Sie an diese Komponenten übergeben, empfiehlt es sich, stattdessen null zu übergeben. Es wird auch empfohlen, ähnliche Änderungen an Ihren eigenen Komponenten vorzunehmen. (Ib90fc, b/298048146) - Fügt eine neue Ripple API in die Bibliotheken
wear:compose-material
undwear:compose-material3
hinzu, die die verworfenerememberRipple
ersetzt. Außerdem wird eine temporäreCompositionLocal
(LocalUseFallbackRippleImplementation
) hinzugefügt, damit Material-Komponenten wieder die eingestelltenrememberRipple/RippleTheme
APIs verwenden. Diese Funktion wird in der nächsten stabilen Version entfernt und dient nur als vorübergehende Migrationshilfe für Fälle, in denen du eine benutzerdefinierteRippleTheme
bereitstellst. Informationen zur Migration und weitere Hintergrundinformationen zu dieser Änderung findest du unter developer.android.com. (af92b21) - Wir haben kleinere Verbesserungen an der
HorizontalPageIndicator
API und der zugehörigen Dokumentation vorgenommen. (I60efc) - Wir haben
ColorScheme
so aktualisiert, dass sie unveränderlich ist. Einzelne Farbaktualisierungen sind jetzt weniger effizient, eine gebräuchliche Verwendung von Farben ist jedoch effizienter. Der Grund für diese Änderung ist, dass die Aktualisierung einzelner Farben bei den meisten Apps nicht in erster Linie erforderlich wäre. Dies ist immer noch möglich, aber es wird mehr als zuvor zusammengefügt. Im Gegenzug verringern wir die Anzahl der Statusabos durch den gesamten wesentlichen Code erheblich. Dies wirkt sich auf die Initialisierungs- und Laufzeitkosten von Standardanwendungsfällen aus. (Ibc2d6) - Die APIs
ToggleButton
undSplitToggleButton
wurden aktualisiert, damit deaktivierte Farben angepasst werden können. Außerdem werden jetzt Material Design-Tokens für Farb- und Typografiewerte verwendet. (If087c) - Hintergrundfarben für Schaltflächenbild wurden aktualisiert, um Material Design-Tokens zu verwenden. (Iba215)
- Wir haben die Komponenten
Checkbox
,Switch
undRadioButton
so geändert, dass sie schreibgeschützt sind, indem die Klickbehandlung entfernt wurde. Diese Komponenten sollen in der App „(Split)ToggleButton
“ verwendet werden, in der Klicks verarbeitet werden. Deshalb sind die Komponenten jetzt klarer als reine Display-Komponenten gekennzeichnet und nicht für die eigenständige Verwendung unter Wear bestimmt. (I2322e)
Fehlerkorrekturen
- Wir haben Tokens für Bewegungswerte für Dauer und Easing in Wear Compose Material 3 hinzugefügt. (I437cd)
- Wir haben einen Fehler in
ToggleButton
,SplitToggleButton
,Checkbox
,Switch
undRadioButton
behoben, sodass Ankündigungen zur Barrierefreiheit nicht wiederholt werden (bisher wurden semantische Rollen dupliziert). (Ica281) - Wir haben die Materialcore-Ebene für
CompactButton
entfernt, um die Leistung zu verbessern. (7902858)
Version 1.0.0-alpha15
15. November 2023
androidx.wear.compose:compose-material3:1.0.0-alpha15
wurde veröffentlicht. Version 1.0.0-alpha15 enthält diese Commits.
API-Änderungen
- Wir haben die Grundlagenebene
SwipeToDismissBox
inBasicSwipeToDismissBox
umbenannt. Dadurch wird der Unterschied zwischen der Komponente auf der Basisebene und derSwipeToDismissBox
auf Material3-Ebene deutlicher. Letzterer ruft Farben aus demMaterialTheme
ab, die in Scrums verwendet werden sollen, und delegiert die verbleibende Implementierung anBasicSwipeToDismissBox
. (Ibecfc)
Fehlerkorrekturen
- Wir haben die Material-Kernebene für die Material3-Schaltfläche entfernt, um die Leistung zu verbessern. (I55555)
Version 1.0.0-alpha14
18. Oktober 2023
androidx.wear.compose:compose-material3:1.0.0-alpha14
wurde veröffentlicht. Version 1.0.0-alpha14 enthält diese Commits.
API-Änderungen
- Wir haben den Parameter
indicatorStyle
aus Material3HorizontalPageIndicator
entfernt. Er folgt stattdessen der Form des Gerätebildschirms (linear oder rund). (I83728) - Wir haben die Farben für
SplitToggleButton
von denen fürToggleButton
getrennt, indem wir eine neueSplitToggleButtonColors
-Klasse hinzugefügt haben. (I78bee)
Version 1.0.0-alpha13
4. Oktober 2023
androidx.wear.compose:compose-material3:1.0.0-alpha13
wurde veröffentlicht. Version 1.0.0-alpha13 enthält diese Commits.
API-Änderungen
- Wir haben ein optionales Untertitelfeld zu
TitleCard
hinzugefügt. (Ifc45a) - Wir haben Material Design-Farbtokens für
TextButton
hinzugefügt. (I769dc)
Version 1.0.0-alpha12
20. September 2023
androidx.wear.compose:compose-material3:1.0.0-alpha12
wurde veröffentlicht. Version 1.0.0-alpha12 enthält diese Commits.
API-Änderungen
- Wir haben
IconButton
aktualisiert, sodass Material Design-Tokens verwendet werden. (I3f137) - Wir haben
IconToggleButton
aktualisiert, sodass Material Design-Tokens verwendet werden. (I7d263) - Wir haben die Konstruktoren von
CheckboxColors
,RadioButtonColors
undSwitchColors
veröffentlicht. (I82b73)
Version 1.0.0-alpha11
6. September 2023
androidx.wear.compose:compose-material3:1.0.0-alpha11
wurde veröffentlicht. Version 1.0.0-alpha11 enthält diese Commits.
Fehlerkorrekturen
- Wir haben die Typografie für Material3-Karten auf
TitleMedium
aktualisiert. (I597bd) - Wir haben die Typografie und Ausrichtung für Material3
ListHeader
undListSubheader
aktualisiert. (Ib5ceb)
Version 1.0.0-alpha10
23. August 2023
androidx.wear.compose:compose-material3:1.0.0-alpha10
wurde veröffentlicht. Version 1.0.0-alpha10 enthält diese Commits.
Neue Funktionen
- Füge „
HorizontalPageIndicator
“ in der Wear Material3-Mediathek hinzu. (Ifee99)
API-Änderungen
- Aktualisiere Schaltflächen-Code, um Material3-Designtokens zu verwenden. (I92fe4)
- Wear Material 3 Stepper und Slider APIs werden als experimentell deklariert, da die Details der Benutzeroberfläche noch nicht fertiggestellt sind. (I84d54)
- Wir haben die
ExtraSmall
-Größen aus den rundenTextButton
undTextToggleButton
entfernt, da diese Größe nur fürIconButton
gilt. (Ibc7d5)
Fehlerkorrekturen
- Wir haben die Richtlinien zur Typografie für TextToggleButton so aktualisiert, dass „LabelLarge“ für LargeButtonSize (Ib10fa) verwendet wird
- Wir haben die Richtlinien zur Typografie für TextButton so aktualisiert, dass „LabelLarge“ für LargeButtonSize verwendet wird (I8f3a7).
- Wir haben das minimale Berührungsziel der Karte für eine bessere Barrierefreiheit auf 48 dp festgelegt. (Ieb9b1)
- Demokarte mit AppCard mit Bild hinzufügen, Demokarte mit AppCard mit Hintergrund wird entfernt (Id735f)
- Ein Fehler bei runden Schaltflächen wurde behoben, bei denen Modifikatoren nicht richtig verkettet wurden. (I5e162)
Version 1.0.0-alpha09
9. August 2023
androidx.wear.compose:compose-material3:1.0.0-alpha09
wurde veröffentlicht. Version 1.0.0-alpha09 enthält diese Commits.
Neue Funktionen
- Wir haben
ToggleButton
für material3 (I6bed6) hinzugefügt.
API-Änderungen
- Wir haben die Annotation
FloatRange
als API-Einschränkungen aktiviert , die zuvor in den Kommentaren angegeben wurden. (Icb401) - Wir haben die Typografie für Wear Material3 so aktualisiert, dass sie den aktuellen Material3-Richtlinien entspricht. (I1bad6)
Fehlerkorrekturen
- Wir haben die Farben für
Button
,IconButton
undTextButton
an das Design von Material3 angepasst. (Ib2495) - Die Sichtbarkeit von Kästchenmarkierungen im deaktivierten Status wurde korrigiert. (Ib25bf)
Version 1.0.0-alpha08
26. Juli 2023
androidx.wear.compose:compose-material3:1.0.0-alpha08
wurde veröffentlicht. Version 1.0.0-alpha08 enthält diese Commits.
Neue Funktionen
- Wir haben die folgenden Auswahlsteuerelemente für Material3 hinzugefügt:
Switch
,Checkbox
,RadioButton
. (Ib918c) - Wir haben
IconToggleButton
undTextToggleButton
zu Material3 hinzugefügt, einer runden Ein-/Aus-Schaltfläche mit einem einzelnen Slot für Symbol bzw. Text. Für verschiedene Größen vonToggleButton
empfehlen wir die Verwendung vonModifier.touchTargetAwareSize
mit den Größen, die auf den jeweiligen Ein/Aus-Schaltflächen angegeben sind. (I9f015) - Wir haben
ListHeader
undListSubheader
zu unseren Material3-Komponenten hinzugefügt. (Ibaefe) - Wir haben Material3
SwipeToDismissBox
hinzugefügt, das die neue FoundationSwipeToDismissBox
heißt und Standardfarbwerte aus seinem Design bereitstellt. (I275fb) - Wir haben das Material3-
InlineSlider
zu Wear Compose hinzugefügt. Nutzende können einen Wertebereich auswählen. Der Auswahlbereich wird als Balken zwischen den Mindest- und Höchstwerten des Bereichs angezeigt, aus dem Nutzer einen einzelnen Wert auswählen können.InlineSlider
ist ideal zum Anpassen von Einstellungen wie Lautstärke oder Helligkeit. (I7085f)
API-Änderungen
- Wir haben das Design „Formen in Wear Material 3“ aktualisiert, sodass jetzt
RoundedCornerShape
anstelle von Form verwendet wird. (Idb133) - Wir haben die Höhenkonstanten für die Schaltfläche veröffentlicht (Idbfde).
- API-Dateien wurden aktualisiert, um mit Anmerkungen zur Unterdrückung der Kompatibilität zu versehen (I8e87a, b/287516207)
- Wir haben
InlineSliderColors
in Wear Compose Material 3 mit einem öffentlichen Konstruktor und öffentlichen Properties aktualisiert. (I6b632) - Wir haben alle Farbklassen in Wear Compose Material 3 so aktualisiert, dass sie öffentliche Konstruktoren und öffentliche Eigenschaften enthalten. (I17702)
- Wir haben die Konstanten für die horizontale und vertikale Auffüllung der Schaltfläche öffentlich gemacht. (Ieeaf7)
Fehlerkorrekturen
- Die Höhe der Schaltfläche wird jetzt bei Bedarf an Inhalte angepasst, die aufgrund großer Schriftgrößen größer geworden sind (Iaf302).
- Wir haben einige Schaltflächen-Demos aktualisiert, um Probleme mit der Barrierefreiheit zu beheben. (I61ce9)
Stepper
undInlineSlider
unterstützen jetzt wiederholte Klicks bei langem Drücken. Sie können den Wert vonStepper
undInlineSlider
jetzt schnell erhöhen oder verringern, indem Sie die Plus- oder Minustasten (I27359) gedrückt halten.
Version 1.0.0-alpha07
21. Juni 2023
androidx.wear.compose:compose-material3:1.0.0-alpha07
wurde veröffentlicht. Version 1.0.0-alpha07 enthält diese Commits.
Neue Funktionen
- Wir haben der Bibliothek „Compose for Wear OS Material 3“ die Komponente „
Stepper
“ hinzugefügt. Dies ist ähnlich wie bei der vorherigen Material-Version, allerdings wird die Bereichssemantik standardmäßig weggelassen. Wir stellenModifier.rangeSemantics
für Fälle bereit, in denen eine Bereichssemantik erforderlich ist. (IC39fd) - Wir haben der Bibliothek „Compose for Wear OS Material 3“
curvedText
hinzugefügt. (Ia8ae3)
Fehlerkorrekturen
- Wir haben
wear.compose.foundation
auf eine API-Abhängigkeit vonwear.compose.material3
aktualisiert (I72004, b/285404743).
Version 1.0.0-alpha06
7. Juni 2023
androidx.wear.compose:compose-material3:1.0.0-alpha06
wurde veröffentlicht. Version 1.0.0-alpha06 enthält diese Commits.
Fehlerkorrekturen
- Wir haben
TextButton
aktualisiert, um die ErweiterungsfunktiontoDisabledColor
für korrekte deaktivierte Alphawerte zu verwenden. (I814c8)
Version 1.0.0-alpha05
24. Mai 2023
androidx.wear.compose:compose-material3:1.0.0-alpha05
wurde veröffentlicht. Version 1.0.0-alpha05 enthält diese Commits.
Neue Funktionen
- Wir haben
TextButton
zu Material3 hinzugefügt, einer runden Schaltfläche mit einem einzigen Slot für Text. Für verschiedene Größen vonTextButton
empfehlen wir die Verwendung vonModifier.touchTargetAwareSize
undExtraSmallButtonSize
,SmallButtonSize
,DefaultButtonSize
undLargeButtonSizeIcon
inTextButtonDefaults
. Die StandardeinstellungTextButton
hat keinen Rahmen und einen transparenten Hintergrund für Aktionen mit geringer Betonung. Für Aktionen, die eine hohe Betonung erfordern, verwendefilledTextButtonColors
. Legen Sie für eine mittlere Betonung (TextButton
mit Kontur) den Rahmen aufButtonDefaults.outlinedButtonBorder
fest. Um einen Mittelweg zwischen umrissen und ausgefüllt zu erhalten, verwenden SiefilledTonalTextButtonColors
. (I667e4) - Wir haben der Wear Compose Material3-Bibliothek
Card
,OutlinedCard
,AppCard
undTitleCard
hinzugefügt.AppCard
undTitleCard
können auch mithilfe vonCardDefaults.outlinedCardColors
undCardDefaults.outlinedCardBorder
(I80e72) wie umrissen dargestellt werden.
API-Änderungen
- Wir haben den Parameter „Button“-Label an das Ende verschoben, um die nachgestellte Lambda-Syntax zu unterstützen, und den Parameter „role“ entfernt, da dieser mit
Modifier.semantics
überschrieben werden kann.ButtonColors
-Konstruktoren sind jetzt öffentlich. (IE1b6d)
Version 1.0.0-alpha04
10. Mai 2023
androidx.wear.compose:compose-material3:1.0.0-alpha04
wurde veröffentlicht. Version 1.0.0-alpha04 enthält diese Commits.
Neue Funktionen
- Wir haben
IconButton
zu Material3 hinzugefügt, einer runden Schaltfläche mit einem einzelnen Slot für Symbol/Bild. Es gibt vier Varianten:IconButton
,FilledIconButton
,FilledTonalIconButton
undOutlinedIconButton
. Für verschiedene Größen vonIconButton
empfehlen wir die Verwendung vonModifier.touchTargetAwareSize
undExtraSmallButtonSize
,SmallButtonSize
,DefaultButtonSize
undLargeButtonSizeIcon
inIconButtonDefaults
. Außerdem geben wirIconButtonDefaults.iconSizeFor
an, um die empfohlene Symbolgröße für eine bestimmte Schaltflächengröße zu bestimmen. (I721d4)
Version 1.0.0-alpha03
19. April 2023
androidx.wear.compose:compose-material3:1.0.0-alpha03
wurde veröffentlicht. Version 1.0.0-alpha03 enthält diese Commits.
API-Änderungen
- Wir haben die Schaltflächenkomponente "Material 3" hinzugefügt. Das ist unsere stadionförmige Schaltfläche, die in der Wear Compose Material-Bibliothek früher "Chip" hieß. Aus Gründen der Einheitlichkeit mit der Bibliothek "Compose Material 3" wurde sie in Button umbenannt. Die Standardschaltfläche hat einen ausgefüllten Hintergrund und es gibt Schaltflächenvariationen für
FilledTonal
(stumm geschalteter Hintergrund), Umriss (transparent mit dünnem Rahmen) und Child (transparenter Hintergrund und kein Rahmen, die für ergänzende Aktionen mit geringfügig sichtbarer Auffälligkeit verwendet werden). Die runden Schaltflächen für einfache Symbol- und Textinhalte werden in einer zukünftigen Version folgen (Ia6942).
Version 1.0.0-alpha02
5. April 2023
androidx.wear.compose:compose-material3:1.0.0-alpha02
wurde veröffentlicht. Version 1.0.0-alpha02 enthält diese Commits.
Fehlerkorrekturen
- Wir haben eine
DefaultTextStyle
zu Wear Compose Material 3 hinzugefügt, wodurchPlatformTextStyle.includeFontPadding
standardmäßig auf „true“ gesetzt ist (die aktuelle Einstellung). Auf diese Weise können wir in Zukunft die standardmäßige Deaktivierung des Schriftabstands mit den Texterstellungsbibliotheken synchronisieren (siehe Schriftabstand in „Compose“ für den Hintergrund korrigieren). (I7e461)
Version 1.0.0-alpha01
22. März 2023
androidx.wear.compose:compose-material3:1.0.0-alpha01
wurde veröffentlicht. Version 1.0.0-alpha01 enthält diese Commits.
Neue Funktionen
Material 3 ist die nächste Weiterentwicklung des Material Design und umfasst aktualisierte Designs und neu gestaltete Komponenten. Material 3 in Wear Compose wurde so entwickelt, dass es mit der Material 3 Compose-Bibliothek unter Android kohärent ist. Diese erste Alphaversion enthält frühe, funktionale Implementierungen des folgenden Elements:
Wir werden Wear Material (
androidx.wear.compose:compose-material
) und Wear Material 3 (androidx.wear.compose:compose-material3
) parallel weiter entwickeln. In zukünftigen Material3-Releases wird das Widget-Set um weitere bekannte Komponenten aus Compose for Wear OS erweitert, z. B. Schaltflächen, Auswahlelemente und Schieberegler.Die Wear Material- und Wear Material 3-Bibliotheken schließen sich gegenseitig aus und sollten nicht in derselben App gemischt werden, hauptsächlich, weil sie auf unterschiedliche Themen verweisen, was zu unerwarteten Inkonsistenzen führen würde.
Wear Compose Version 1.5
Version 1.5.0-alpha01
4. September 2024
androidx.wear.compose:compose-*:1.5.0-alpha01
wurde veröffentlicht. Version 1.5.0-alpha01 enthält diese Commits.
API-Änderungen
- Wir haben der Wear Compose Foundation-Bibliothek eine neue
LazyColumn
mit den zugehörigenLazyColumnState
- undLazyColumnScope
-APIs hinzugefügt. Dies dient als Grundlage für die Erstellung anpassbarer Skalierungs- und Morphing-Effekte mit Wear Compose. (Ib3b22) - Wir haben
LazyColumnScope
als Teil der neuenLazyColumn
API eine indexierte Version vonitemsIndexed
hinzugefügt. (Ib4a57) - Wir haben
LazyColumn
-Modifikatoren hinzugefügt, um Skalierungs- und Morphing-Verhaltensweisen zu unterstützen. (Ie229a) HierarchicalFocusCoordinator
wurde auf die stabile Ebene hochgestuft. (I31035)- Bei gebogenem Text wird jetzt der Buchstabenabstand unterstützt. (I3c740)
- Der Parameter
rotationLocked
wurde zuCurvedLayout.curvedComposable
hinzugefügt, um das Drehen von Komponenten zu stoppen. (I66898) - Die temporäre
LocalUseFallbackRippleImplementation
API aus Verschleißmaterial und Verschleißmaterial3 wurde entfernt (I62282). WearDevices.SQUARE
wurde aus der Multi-Vorschau-Version von@WearPreviewDevices
(I11c02) entfernt.
Fehlerkorrekturen
SwipeToReveal
positioniert die eingeblendeten Elemente jetzt im sichtbaren Teil des Bildschirms. Das ist hilfreich, wennSwipeToReveal
in einer Liste verwendet wird. Die Elemente können dann immer interagieren und verbleiben nicht außerhalb des Bildschirms. (I38929)SwipeToReveal
setztlastActionType
jetzt auf „None“, wennanimatedTo
abgeschlossen ist. (I59b03)- Die Dokumentation für den neuen
rotationLocked
-Parameter incurvedComposable
wurde verbessert. (Ifbd57) - Ein Absturz bei der Übergabe von
NaN
an dieperformFling
vonScalingLazyColumnSnapFlingBehavior
wurde behoben. (IC13DA) - Der Fehler beim Modifizierer für die Größe des gebogenen Layouts (I0fedf) wurde behoben.
- Wir unterstützen jetzt den mit "sp" angegebenen Buchstabenabstand. (I9f6e3)
- Wir haben einen Fehler im Material2-Dialogfeld behoben, bei dem der
onDismissRequest
-Callback nicht aufgerufen wurde, als das Dialogfeld unsichtbar wurde (I64656). LayoutCoordinates.introducesFrameOfReference
wurde inLayoutCoordinates.introducesMotionFrameOfReference
umbenannt, um den Zweck besser widerzuspiegeln. Die zugehörige Funktion wurde umbenannt, um Koordinaten basierend auf dieser Markierung zu berechnen. (I3a330)
Version 1.4
Version 1.4.0
4. September 2024
androidx.wear.compose:compose-*:1.4.0
wurde veröffentlicht. Version 1.4.0 enthält diese Commits.
Wichtige Änderungen seit Version 1.3.0
ScalingLazyColumn
undPicker
unterstützen jetzt standardmäßig den Drehknopf. Es wird empfohlen, die explizite Drehbewegung zu entfernen und auf das Standardsystemverhalten zu übertragen. Konfigurieren Sie bei Bedarf mit dem ParameterrotaryScrollableBehavior
entweder das Scroll- oder das Andocken. Für das Andockverhalten wird empfohlen, Funktionen zum Andocken und Scrollen durch Berührung mithilfe des ParametersflingBehavior
bereitzustellen.Modifier.rotaryScrollable
ist ein neuer Modifikator, der drehbare Ereignisse mit scrollbaren Containern verbindet. So können Nutzer auf ihrem Wear OS-Gerät über eine Krone oder einen drehbaren Rand scrollen.SwipeDismissableNavHost
bietet jetzt eine Einstiegsanimation für In-App-Übergänge.PositionIndicator
wird jetzt standardmäßig beim ersten Aufrufen eines Bildschirms angezeigt.
Weitere Änderungen
- Eine vollständigere Übersicht der Änderungen in Version 1.3.0 finden Sie in den Versionshinweisen zu Betaversion 01.
Version 1.4.0-rc01
21. August 2024
androidx.wear.compose:compose-*:1.4.0-rc01
wurde veröffentlicht. Version 1.4.0-rc01 enthält diese Commits.
- Wir haben die Compose-Abhängigkeiten auf 1.7.0-rc01 aktualisiert und die Wear Compose-Navigation an androidx.lifecycle 2.8.3 angepinnt.
Version 1.4.0-beta03
12. Juni 2024
androidx.wear.compose:compose-*:1.4.0-beta03
wurde veröffentlicht. Version 1.4.0-beta03 enthält diese Commits.
Fehlerkorrekturen
- Wir haben
Modifier.rotaryScrollable
aktualisiert, um die Verwendung von „focusable“ durch „focusTarget“ zu ersetzen. (ID294b) - Wir haben ein Problem behoben, bei dem die
ProgressIndicator
unter „TalkBack
“ wiederholt angezeigt wurde. (I94563) - Wir haben die Basisprofile der Wear Compose-Bibliothek aktualisiert. (I3cbc3)
Version 1.4.0-beta02
29. Mai 2024
androidx.wear.compose:compose-*:1.4.0-beta02
wurde veröffentlicht. Version 1.4.0-beta02 enthält diese Commits.
Fehlerkorrekturen
- Wir haben die Begrenzungsbreite, die an Screenreader übergeben wird, von gebogenem Text erhöht, um Probleme beim Abschneiden zu beheben (Id865f).
- Wir haben die Begrenzung von
HorizontalPageIndicator
beschränkt, die an Screenreader übergeben wurde. Zuvor belegte der Indikator den gesamten Bildschirm (Id8d7a).
Version 1.4.0-beta01
14. Mai 2024
androidx.wear.compose:compose-*:1.4.0-beta01
wurde veröffentlicht. Version 1.4.0-beta01 enthält diese Commits.
Die Version 1.4-beta01 von Compose für Wear OS gibt an, dass dieser Release der Bibliothek vollständig ist und die API gesperrt ist (sofern nicht als experimentell gekennzeichnet). Wear Compose 1.4 enthält die folgenden neuen Funktionen:
- Wir haben
Modifier.rotaryScrollable
hinzugefügt, einen neuen Modifikator, der drehbare Ereignisse mit scrollbaren Containern verbindet. So können Nutzer auf ihrem Wear OS-Gerät über eine Krone oder einen drehbaren Rand scrollen. Außerdem unterstützenScalingLazyColumn
undPicker
jetzt standardmäßig den Drehknopf. Mit dem ParameterrotaryScrollableBehavior
können Sie das Scroll- oder Andockverhalten konfigurieren. Für das Andocken wird empfohlen, das Andocken über den ParameterflingBehavior
sowie für das Scrollen durch Berührung bereitzustellen. SwipeDismissableNavHost
bietet jetzt eine Einstiegsanimation für In-App-Übergänge.PositionIndicator
wird jetzt standardmäßig beim ersten Aufrufen eines Bildschirms angezeigt.SelectableChip
undSplitSelectableChip
wurden als Variante zuToggleChip
hinzugefügt – verwenden Sie dies mitRadioButton
, um eine auswählbare Semantik anstelle einer ein-/ausschaltbaren Semantik für die Barrierefreiheit bereitzustellenListHeader
unterstützt jetzt Höhenanpassungen, wenn Inhalte für große Schriftgrößen zusätzliche Höhe benötigen.
Fehlerkorrekturen
- Wir haben einen Fehler behoben, bei dem bei auswählbaren Chips das Umschalten durch Doppeltippen angesagt wurde, wenn sie bereits ausgewählt waren. (I7ed88)
Version 1.4.0-alpha08
1. Mai 2024
androidx.wear.compose:compose-*:1.4.0-alpha08
wurde veröffentlicht. Version 1.4.0-alpha08 enthält diese Commits.
API-Änderungen
- Wir haben folgende Änderungen an der neuen Rotary API vorgenommen:
Modifier.rotary
wurde inModifier.rotaryScrollable
umbenannt. DieRotaryBehavior
-Schnittstelle wurde inRotaryScrollableBehavior
und ihre FunktionhandleScrollEvent
inperformScroll
umbenannt. hatRotaryScrollableAdapter
inRotaryScrollableLayoutInfoProvider
umbenannt und die PropertyscrollableState
entfernt. (I0c8a6) - Wir haben zusätzliche Änderungen an der Rotary API vorgenommen:
RotaryScrollableLayoutInfoProvider
wurde inRotarySnapLayoutInfoProvider
umbenannt, da dieser Anbieter nur für Drehgeräte mit Ausrichtung benötigt wird. hat den Typ des ParameterssnapOffset
inRotaryScrollableDefaults.snapBehavior snapOffset
von „Int“ zu „Dp“ geändert. (Iddebe) - Wir haben den
clickInteractionSource
-Parameter aufSplitSelectableChip
incontainerInteractionSource
umbenannt. (Ia8f84) - Wir haben die Namen der Callback-Parameter für Klicks für
SplitSelectableChip
vononClick
zuonSelectionClick
und vononBodyClick
inonContainerClick
geändert. (I32237)
Fehlerkorrekturen
- Wir haben den horizontalen Abstand für
PositionIndicator
auf 2 dp (vorher 5 dp) aktualisiert, um einen Fehler zu beheben, bei dem sichPositionIndicator
(Bildlaufleiste) scrollbarer Inhalte überschneidet. Hinweis: Durch den geänderten Abstand werden vorhandene Screenshots, diePositionIndicator
enthalten, voraussichtlich nicht mehr funktionieren. (I57472) - Wir haben die Dokumentation für das neue Rotary API verbessert, indem die Unterschiede zwischen hochauflösenden drehbaren Geräten beschrieben werden. (I63abe)
- Wir haben in
SwipeDismissableNavHost
eine Ausnahme außerhalb des Bereichs behoben, die ausgelöst werden könnte, wenn interpolierte Alphawerte kleiner als null waren. (Ib75a1, b/335782510)
Version 1.4.0-alpha07
17. April 2024
androidx.wear.compose:compose-*:1.4.0-alpha07
wurde veröffentlicht. Version 1.4.0-alpha07 enthält diese Commits.
API-Änderungen
- Wir haben
Modifier.rotary
hinzugefügt, einen neuen Modifikator, der drehbare Ereignisse mit scrollbaren Containern verbindet. So können Nutzer auf ihrem Wear OS-Gerät über eine Krone oder einen drehbaren Rand scrollen. Darüber hinaus unterstützenScalingLazyColumn
und Picker jetzt standardmäßig die Drehknopfeingabe mit neuen Überlastungen, die den ParameterrotaryBehavior
enthalten, um die Konfiguration von Scrollen oder Andocken anzugeben. Wenn der ParameterrotaryBehavior
auf Andocken eingestellt ist, empfiehlt es sich, auch den ParameterflingBehavior
für das Andocken durch Berührung einzurichten. (I2ef6f) NestedScroll
-Quellen „Ziehen und Ziehen“ werden durchUserInput
undSideEffect
ersetzt, um die erweiterte Definition dieser Quellen zu ermöglichen, die jetzt Animationen (Nebeneffekt) sowie Mausrad und Tastatur (UserInput) umfassen. (I40579)- Wir haben
SelectableChip
undSplitSelectableChip
hinzugefügt, um die Unterscheidung zwischen Ein-/Aus-Schaltflächen wieSwitch/Checkbox
und auswählbaren Steuerelementen wieRadioButton
zu verdeutlichen. Dies ersetzt die zuvor hinzugefügten Überlastungen vonToggleChip/SplitToggleChip
durchselectionControl
-Parameter. (Ia0217) - Der Sichtbarkeitsmodifikator von
IndeterminateStrokeWidth
inProgressIndicatorDefaults
wurde zu „Öffentlich“ geändert. (I5b5a4)
Version 1.4.0-alpha06
3. April 2024
androidx.wear.compose:compose-*:1.4.0-alpha06
wurde veröffentlicht. Version 1.4.0-alpha06 enthält diese Commits.
Fehlerkorrekturen
- Im Rahmen der größeren Bemühungen, das Verhalten von Rotary von Horologist zu AndroidX zu migrieren, haben wir einen internen Entwurf für die Rotary-Unterstützung hinzugefügt. (I617d1)
- Wir haben im Rahmen der größeren Bemühungen, das Verhalten von Rotary von Horologist zu AndroidX zu migrieren, einen internen Entwurf für die haptische Unterstützung hinzugefügt. (I5568a)
Version 1.4.0-alpha05
20. März 2024
androidx.wear.compose:compose-*:1.4.0-alpha05
wurde veröffentlicht. Version 1.4.0-alpha05 enthält diese Commits.
API-Änderungen
- Die Properties
initialCenterItemIndex
undinitialCenterItemScrollOffset
vonScalingLazyListState
wurden veröffentlicht. (I0c616) - Die
FullScreenStrokeWidth
vonProgressIndicatorDefaults
wurde veröffentlicht. (Ibea23)
Fehlerkorrekturen
- Wir haben die Leistung von
PositionIndicator
verbessert, indem die Anzahl der Aufrufe vonlayoutInfo
vonScalingLazyColumn
reduziert wird. (Idc83d)
Version 1.4.0-alpha04
6. März 2024
androidx.wear.compose:compose-*:1.4.0-alpha04
wurde veröffentlicht. Version 1.4.0-alpha04 enthält diese Commits.
API-Änderungen
- Wir haben eine neue Überlastung für
ToggleChip
undSplitToggleChip
hinzugefügt, die einenselectionControl
-Parameter anstelle destoggleControl
-Parameters verwendet. Sollte mit dem SteuerelementRadioButton
verwendet werden, um eine auswählbare Semantik anstelle einer ein-/ausschaltbaren Semantik für die Barrierefreiheit bereitzustellen (I1d6d9). - Die Parameternamen für die neue
selectionControl
-Überlastung wurden fürToggleChip
undSplitToggleChip
(I1a971) vononSelected
aufonSelect
aktualisiert.
Version 1.4.0-alpha03
21. Februar 2024
androidx.wear.compose:compose-*:1.4.0-alpha03
wurde veröffentlicht. Version 1.4.0-alpha03 enthält diese Commits.
API-Änderungen
- Der
Modifier.inspectable
-Wrapper wurde eingestellt. Diese API führt zu mehr Entwertungen als notwendig, weshalb von ihrer Verwendung abgeraten wird. Entwicklern wird empfohlen, dieinspectableProperties()
-Methode aufModifierNodeElement
zu implementieren, wenn sie Tools Modifikatoreigenschaften zur Verfügung stellen möchten. (Ib3236)
Fehlerkorrekturen
- Wir haben einen Dokumentationsfehler für
WearPreview*
-Annotationen behoben. (Id526d)
Version 1.4.0-alpha02
7. Februar 2024
androidx.wear.compose:compose-*:1.4.0-alpha02
wurde veröffentlicht. Version 1.4.0-alpha02 enthält diese Commits.
Fehlerkorrekturen
- Wir haben einen Fehler beim Anzeigen zum Einblenden durch Wischen behoben. Es war möglich, mit einer zugesicherten Aktion für ein Element zu interagieren und diese abzubrechen, indem das Wischen über ein anderes Element begonnen wurde. (Ide059)
- Wir haben die
ListHeader
aktualisiert. Sie unterstützt jetzt Höhenanpassungen für Inhalte, die für große Schriftgrößen eine größere Höhe erfordern. (I7290c, b/251166127)
Version 1.4.0-alpha01
24. Januar 2024
androidx.wear.compose:compose-*:1.4.0-alpha01
wurde veröffentlicht. Version 1.4.0-alpha01 enthält diese Commits.
Neue Funktionen
- Wir haben
SwipeDismissableNavHost
eine Eingabeanimation für In-App-Übergänge hinzugefügt (cfeb79a). PositionIndicator
wird jetzt standardmäßig beim ersten Aufrufen eines Bildschirms angezeigt. Diese Änderung wurde eingeführt, um die Wear-Qualitätsrichtlinien zu erfüllen. Leider bedeutet dies, dass Screenshot-Tests auf Bildschirmen mitPositionIndicator
aktualisiert werden müssen, daPositionIndicator
zuvor nicht angezeigt worden war. (419cef7)
API-Änderungen
- Wir haben den Bibliotheken
wear:compose-material
undwear:compose-material3
eine neue Ripple API hinzugefügt, die die eingestellterememberRipple
ersetzt. Außerdem wird eine temporäreCompositionLocal
(LocalUseFallbackRippleImplementation
) hinzugefügt, damit Material-Komponenten wieder die eingestelltenrememberRipple/RippleTheme
APIs verwenden. Diese Funktion wird in der nächsten stabilen Version entfernt und dient nur als vorübergehende Migrationshilfe für Fälle, in denen du eine benutzerdefinierteRippleTheme
bereitstellst. Informationen zur Migration und weitere Hintergrundinformationen zu dieser Änderung findest du unter developer.android.com. (af92b21) - Wir haben
ColorScheme
so aktualisiert, dass sie unveränderlich ist. Einzelne Farbaktualisierungen sind jetzt weniger effizient, eine gebräuchliche Verwendung von Farben ist jedoch effizienter. Der Grund für diese Änderung ist, dass die Aktualisierung einzelner Farben bei den meisten Apps nicht in erster Linie erforderlich wäre. Dies ist immer noch möglich, aber es wird mehr als zuvor zusammengefügt. Im Gegenzug verringern wir die Anzahl der Statusabos durch den gesamten wesentlichen Code erheblich, was sich auf die Initialisierungs- und Laufzeitkosten von Standardanwendungsfällen auswirkt. (f5c48b7) - Wear-Material und Wear-Material3-Komponenten, die eine
MutableInteractionSource
in ihrer API offenlegen, wurden aktualisiert. Jetzt ist eineMutableInteractionSource
verfügbar, für die Nullwerte zulässig sind, die standardmäßig auf null gesetzt ist. Hier gibt es keine semantischen Änderungen: Wenn „null“ übergeben wird, bedeutet das, dass dasMutableInteractionSource
nicht gezogen werden soll. Es wird bei Bedarf innerhalb der Komponente erstellt. Wenn Sie den Wert auf null ändern, können einige Komponenten niemals einMutableInteractionSource
zuweisen. Andere Komponenten können eine Instanz nur bei Bedarf langsam erstellen, wodurch die Leistung dieser Komponenten verbessert wird. Wenn Sie dieMutableInteractionSource
nicht verwenden, die Sie an diese Komponenten übergeben, empfiehlt es sich, stattdessen null zu übergeben. Es wird auch empfohlen, ähnliche Änderungen an Ihren eigenen Komponenten vorzunehmen. (f8fa920) rememberExpandableState
wurde aktualisiert, um den maximierbaren Status zu speichern. Dadurch werden die Daten gespeichert, wenn Sie zu einem anderen Bildschirm wechseln, und wiederhergestellt werden, wenn Sie zum ursprünglichen Bildschirm zurückkehren. (5c80095)
Fehlerkorrekturen
- Wir haben die
ReduceMotion
-Einstellung aktualisiert, um einen Lebenszyklus-bewussten Listener zu verwenden. (7c6b122) - Wir haben den Listener von
TouchExplorationStateProvider
aktualisiert, um den Lebenszyklus zu berücksichtigen (be28b01). - Wir haben die Materialcore-Ebene für
CompactButton
entfernt, um die Leistung zu verbessern (25db8e9). BasicSwipeToDismissBox
wurde gegenüber NaN-Offsets robuster gemacht, um Ausnahmen zu vermeiden (b983739).- Wir haben
BasicSwipeToDismissBox
aktualisiert, damit Alphawerte im Bereich 0,1 liegen - Wir haben einen Fehler in
ToggleButton
,SplitToggleButton
,Checkbox
,Switch
undRadioButton
behoben, sodass Ankündigungen zur Barrierefreiheit nicht wiederholt werden (bisher wurden semantische Rollen dupliziert) (d11eeb7).
Version 1.3
Version 1.3.1
3. April 2024
androidx.wear.compose:compose-*:1.3.1
wurde veröffentlicht. Version 1.3.1 enthält diese Commits.
Fehlerkorrekturen
- Wir haben einen Fehler in der Funktion zum Anzeigen durch Wischen behoben, bei der es möglich war, mit einer Aktion, für die ein Commit durchgeführt wurde, zu interagieren und diese abzubrechen, indem mit dem Wischen über ein anderes Element begonnen wurde. (Ide059)
Version 1.3.0
24. Januar 2024
androidx.wear.compose:compose-*:1.3.0
wurde veröffentlicht. Version 1.3.0 enthält diese Commits.
Wichtige Änderungen seit Version 1.2.0
- Die Klasse
SwipeToDismissBoxState
, dieSwipeToDismissValue
-Aufzählung und die ErweiterungsfunktionModifier.edgeSwipeToDismiss
sind jetzt beide Teil desandroidx.wear.compose.foundation
-Pakets und nicht mehr desandroidx.wear.compose.material
-Pakets. Mit dieser aktualisierten Architektur können Sie die Gestenhandhabung unabhängig von anderen Designüberlegungen implementieren. Material Design-Workflows, wie das Anwenden von Farben aus einem konfigurierten Design, werden separat verarbeitet. - Mit den Klassen
SwipeToRevealCard
undSwipeToRevealChip
können Sierecommended swipe-to-reveal guidance
implementieren. Die KlasseSwipeToRevealSample
zeigt, wie diese Komponenten verwendet werden. In unserer Version 1.3.0-alpha02 wurde eine Änderung eingeführt, die dazu führt, dass die Objekte
Chip
undToggleChip
vergrößert werden, um die vom Nutzer ausgewählte Schriftskalierung besser zu unterstützen. Dies kann dazu führen, dass einige Clips abgeschnitten werden. Um dieses Problem zu beheben, verwendet die Formlarge
fürMaterialTheme
jetzt einen größeren Eckenradius (26 dp statt 24 dp).Chip
- undToggleChip
-Objekte verwenden diesen neuen Eckenradius, um zu verhindern, dass Inhalte an den Ecken des Chips undToggleChip
abgeschnitten werden.- Die meisten
Chips
undToggleChips
sind aufgrund ihrer Standardhöhe von 52 dp unverändert.Chip
- undToggleChip
-Objekte, die mehrere Zeilen primären oder sekundären Labeltexts enthalten oder bei denen die Höhe überschrieben wurde, können jedoch zu Fehlern bei Screenshot-Tests führen.
- Die meisten
Weitere Änderungen
Eine vollständigere Übersicht der Änderungen in Version 1.3.0 finden Sie in den Versionshinweisen zu Betaversion 01.
Empfehlungen für die Implementierung
- Wenn Nutzer in Ihrer App um den Bildschirminhalt schwenken können, z. B. in einer kartenbasierten App, deaktivieren Sie die Wischgeste, indem Sie
userSwipeEnabled
in der zusammensetzbaren FunktionSwipeDismissableNavHost
auffalse
setzen und eine Schaltfläche einfügen, über die Nutzer zum vorherigen Bildschirm wechseln können. - Verwenden Sie ein
SnapSpec
-Objekt, um Animationen für eine Positionsanzeige während Einblendungs- und Positionsänderungsanimationen innerhalb einer Scrollliste zu deaktivieren. - Während Sie warten, bis eine Medien-App Inhalte für die Wiedergabe lädt, wird eine leere
Placeholder
-Zusammensetzbare Funktion angezeigt. - Wenn Sie eine Sammlung erweiterbarer Elemente bei Bedarf erstellen möchten, können Sie die experimentelle Klasse
ExpandableStateMapping
verwenden.
Version 1.3.0-rc01
10. Januar 2024
androidx.wear.compose:compose-*:1.3.0-rc01
wurde veröffentlicht. Version 1.3.0-rc01 enthält diese Commits.
Fehlerkorrekturen
-
Wir haben die große Form „
<ph type="x-smartling-placeholder"> <ph type="x-smartling-placeholder">MaterialTheme
“ so aktualisiert, dass sie einen abgerundeten Eckenradius von 26 dp verwendet. Dieser wird jetzt von Chip undToggleChip
verwendet. Diese Änderung ist erforderlich, um Höhenanpassungen zu unterstützen, wenn Inhalte eine größere Höhe für große Schriftgrößen benötigen. Andernfalls schneidet die vorhandene Stadionform einige Textinhalte ab.Diese Änderung kann zu Fehlern bei den Screenshot-Tests führen. (I2e6ae)
Version 1.3.0-beta02
13. Dezember 2023
androidx.wear.compose:compose-*:1.3.0-beta02
wurde veröffentlicht. Version 1.3.0-beta02 enthält diese Commits.
Fehlerkorrekturen
- Wir haben die beabsichtigte Wischbewegung in
BasicSwipeToDismissBox
wiederhergestellt. Dies wurde in einer früheren Version so geändert, dass der gleitende Teil des Übergangs erfolgte, während der Finger den Bildschirm berührte. (Id8e76)
Version 1.3.0-beta01
15. November 2023
androidx.wear.compose:compose-*:1.3.0-beta01
wurde veröffentlicht. Version 1.3.0-beta01 enthält diese Commits.
Version 1.3-beta01 von Compose für Wear OS gibt an, dass der Release der Bibliothek vollständig und die API gesperrt ist (sofern nicht als experimentell gekennzeichnet). Wear Compose 1.3 bietet die folgenden neuen Funktionen:
SwipeToDismissBoxState
,SwipeToDismissValue
undModifier.edgeSwipeToDismiss
sowie die zugrunde liegende Implementierung zum Schließen durch Wischen vonandroidx.wear.compose.material
zuandroidx.wear.compose.foundation
wurden inBasicSwipeToDismissBox
migriert. Dadurch kann die Gestenhandhabung zum Schließen unabhängig von Material Design verwendet werden, z. B. über dieSwipeDismissableNavHost
inandroidx.wear.compose.navigation
.SwipeToDismissBox
vonandroidx.wear.compose.material
wird weiterhin für die Verwendung mit Material Design empfohlen, da es Farben ausMaterialTheme
abruft und dann die verbleibende Implementierung anBasicSwipeToDismissBox
delegiert.SwipeDismissableNavHost
unterstützt jetzt einen neuenuserSwipeEnabled
-Parameter, mit dem die Wischgeste für Bildschirme deaktiviert werden kann, auf denen sie nicht erforderlich ist.BasicSwipeToDismissBox
hat die Fokusbehandlung mitHierarchicalFocusCoordinator
verbessert.- Für
SwipeToReveal
gibt es in Material neue zusammensetzbare Funktionen fürSwipeToRevealCard
undSwipeToRevealChip
, die den empfohlenen UX-Richtlinien fürCard
undChip
entsprechen. Auch die Unterstützung der sekundären Aktion wird rückgängig gemacht. DefaultTextStyle
deaktiviert jetzt den Abstand zwischen Schriftarten, damit er auf der gesamten Android-Plattform einheitlich ist.Chip
undToggleChip
passen jetzt ihre Höhe an Inhalte an, die aufgrund großer Schriftarten für Barrierefreiheit größer geworden sindPositionIndicator
verfügt nun über individuelle Animationsspezifikationen für die Ein-, Aus- und Positionsanimationen. Aus Leistungsgründen empfehlen wir, das Ein- und Ausblenden sowie Positionsänderungen zu deaktivieren, wenn sie mit scrollbaren Listen verwendet werden.ExpandableStateMapping
bietet eine neue Möglichkeit,ExpandableStates
zu generieren, wenn sie on demand und nicht unbedingt mit einem@Composable
-Bereich erstellt werden müssen.Placeholder
ermöglicht jetzt das Zurücksetzen, wenn der Inhalt nicht mehr bereit ist. Außerdem wird die Einstellung zum Reduzieren von Bewegungen jetzt auf den Schimmereffekt und die Wischbewegung beiPlaceholder
angewendet.
Bekannte Probleme
PositionIndicator
wird beim ersten Aufrufen eines Bildschirms nicht angezeigt. Wir beabsichtigen, eine Änderung in einer frühen Alphaversion der Version 1.4 vorzunehmen, damit sie anfangs, jedoch ohne Animation angezeigt wird.
API-Änderungen
- Wir haben die Grundlagenebene
SwipeToDismissBox
inBasicSwipeToDismissBox
umbenannt. Dadurch wird der Unterschied zwischen der Komponente auf der Basisebene und der MaterialebeneSwipeToDismissBox
deutlicher. Letzterer ruft Farben aus demMaterialTheme
ab, die in Scrums verwendet werden sollen, und delegiert die verbleibende Implementierung anBasicSwipeToDismissBox
. (Ibecfc) rememberExpandableStateMapping
wurde als Test eingestuft und die Leistung vonexpandableItem
verbessert. (I5f6bc)- Wir haben die Klasse
SwipeToRevealAction
in den MaterialSwipeToReveal
Card und Chip APIs durch eine Slot-basierte API mit zusammensetzbaren FunktionenSwipeToRevealPrimaryAction
,SwipeToRevealSecondaryAction
undSwipeToRevealUndoAction
ersetzt. Im Beispielcode finden Sie Beispiele für die Verwendung der neuen API. (Ia8943) - Die Animations-Flags
PositionIndicator
wurden durchAnimationSpec
-Parameter ersetzt. Die einzelnen Animationen können deaktiviert werden, indemsnap
alsAnimationSpec
übergeben wird. (I6c523)
Fehlerkorrekturen
- Wir haben einen Fehler behoben, der bei begrenzter Größe durch wenig gebogenen Text ausgelöst wurde (I50efe).
- Wir haben einen möglichen NaN-Absturz im Zusammenhang mit
curvedComposable
(I970eb) behoben. - Wir haben die Entfernung der Highlights-Animation zu Positionsänderungen am
PositionIndicator
rückgängig gemacht. (Ieb424) - Wir haben die „Material-Kernschicht“ für „Material Chip“ entfernt, um seine Leistung zu verbessern. (If2dcb)
Version 1.3.0-alpha08
18. Oktober 2023
androidx.wear.compose:compose-*:1.3.0-alpha08
wurde veröffentlicht. Version 1.3.0-alpha08 enthält diese Commits.
API-Änderungen
- Wir haben der Überlastung von
PositionIndicator
einzelne Flags hinzugefügt, um verschiedene Animationen zu steuern:showFadeInAnimation
,showFadeOutAnimation
undshowPositionAnimation
. Die vorherige API wurde verworfen und leitet Aufrufe an die neue weiter. Aus Leistungsgründen und aus Gründen der UX-Konsistenz empfehlen wir, die FlagsshowFadeInAnimation
undshowPositionAnimation
zu deaktivieren, wennPositionIndicator
mit einer scrollbaren Liste verwendet wird. WennPositionIndicator
als eigenständige Anzeige verwendet wird, z. B. zur Lautstärkeänderung, empfehlen wir, alle drei Animationen zu aktivieren. (I44294) - Wir haben Material
SwipeToDismissBoxState
,SwipeToDismissValue
undedgeSwipeToDismiss
nach der Migration der „Wischen zum Schließen“-Funktion zuwear.compose.foundation
eingestellt. Bitte ersetzen Sie sie durch die entsprechendenwear.compose.foundation
-Angaben. (Iee8c9)
Fehlerkorrekturen
- Wir haben die Basisprofile für die Wear Compose-Grundlage, Material- und Navigationsbibliotheken aktualisiert. (Idb060)
- Wir haben eine Verhaltensänderung für
PositionIndicator
rückgängig gemacht, die in einem früheren Änderungsprotokoll eingeführt wurde, sodassPositionIndicator
beim ersten Einblenden eines Bildschirms animiert war. Wir planen, eine ähnliche Änderung in einer frühen Alphaversion der Version 1.4 vorzunehmen, sodassPositionIndicator
anfänglich angezeigt wird, jedoch ohne Animation. (I41843) - Wir haben einige Leistungsprobleme in
PositionIndicator
behoben. (I1c654, b/302399827) - Wir haben die Leistung der Standardimplementierung des Anbieters für die Touchscreen-Erkundung so optimiert, dass auf dem
State<Boolean>
statt auf dem abgeleiteten Status beruhen. (Ieec4d) - Wir haben
systemGestureExclusion
-Rechtecke für Android 13 und höher festgelegt. (Ib1f4b)
Version 1.3.0-alpha07
4. Oktober 2023
androidx.wear.compose:compose-*:1.3.0-alpha07
wurde veröffentlicht. Version 1.3.0-alpha07 enthält diese Commits.
API-Änderungen
- Wir haben einzelne Flags zu
PositionIndicator
hinzugefügt, um verschiedene Animationen zu steuern:showFadeInAnimation
,showFadeOutAnimation
undshowPositionAnimation
. Die vorherige API wurde verworfen und leitet Aufrufe an die neue weiter. Aus Leistungsgründen und aus Gründen der UX-Konsistenz empfehlen wir, die FlagsshowFadeInAnimation
undshowPositionAnimation
zu deaktivieren, wennPositionIndicator
mit einer scrollbaren Liste verwendet wird. WennPositionIndicator
als eigenständige Anzeige verwendet wird, z. B. zur Lautstärkeänderung, empfehlen wir, alle drei Animationen zu aktivieren. (Ia2d63)
Fehlerkorrekturen
- Wir haben Verbesserungen an der Wischbewegung vorgenommen, um die Bewegung anzuzeigen. Dazu wurde dem primären Aktionstext eine Ausblendungsanimation hinzugefügt, die sekundäre Aktion wird ausgeblendet und die Symbolgröße bei vollständiger Ausweitung der Wischbewegung wurde geändert. (Ib7223)
- Wir empfehlen, die Aktionen für „Zum Einblenden wischen“ barrierefrei zugänglich zu machen. Außerdem haben wir unseren Beispielen für „Zum Einblenden wischen“ benutzerdefinierte Bedienungshilfen hinzugefügt. (I42224)
- Wir haben die Leistung von
SwipeToDismissBox
verbessert, einschließlich einer Refaktorierung, damit die ursprüngliche Logik keine Neuzusammensetzung auslöst.SwipeToDismissBox
wird jetzt im Vollbildmodus dargestellt. (Ie0aa2) - Wir haben einen Fehler behoben, bei dem
PositionIndicator
fälschlicherweise verschwunden ist. (I2091a) - Die Leistung von
PositionIndicator
wurde durch die Optimierung der Neuzusammensetzung verbessert. Neue Flags zur Steuerung der Animationen (fadeIn
,fadeOut
undpositionChange
) wurden anschließend hinzugefügt (siehe API-Änderungen) (Ifac7d) - Wir haben MicroBenchmark-Tests für
PositionIndicator
hinzugefügt (Idf875).
Version 1.3.0-alpha06
20. September 2023
androidx.wear.compose:compose-*:1.3.0-alpha06
wurde veröffentlicht. Version 1.3.0-alpha06 enthält diese Commits.
Fehlerkorrekturen
- Wir unterstützen jetzt
Modifier.edgeSwipeToDismiss
mitSwipeToReveal
. (I95774, b/293444286) - Wir haben Beispiele für das Material
SwipeToRevealChip
undSwipeToRevealCard
hinzugefügt. (Ieb974) - Wir haben die Basisprofile für Wear Compose Foundation und Material-Bibliotheken aktualisiert. (I1dd1f)
Version 1.3.0-alpha05
6. September 2023
androidx.wear.compose:compose-*:1.3.0-alpha05
wurde veröffentlicht. Version 1.3.0-alpha05 enthält diese Commits.
Fehlerkorrekturen
- Wir haben unter „Zum Einblenden wischen“ eine Funktion hinzugefügt, mit der jeweils nur ein Element gewischt werden kann. (I3cd7a)
- Die Dokumentation von
ScalingLazyColumnDefaults
wurde verbessert, damit sie besser dem tatsächlichen Verhalten entspricht. (I886d3)
Version 1.3.0-alpha04
23. August 2023
androidx.wear.compose:compose-*:1.3.0-alpha04
wurde veröffentlicht. Version 1.3.0-alpha04 enthält diese Commits.
Neue Funktionen
- Die sekundäre Aktion
SwipeToReveal
wird jetzt rückgängig gemacht. (I7a22d)
API-Änderungen
- Füge „
HorizontalPageIndicator
“ in der Wear Material3-Mediathek hinzu. (Ifee99) - Wear Compose-Vorschautools wurden aktualisiert, um die
androidx.wear.tooling.preview
-Mediathek zu verwenden. (Ib036e)
Fehlerkorrekturen
- Ein Fehler bei runden Schaltflächen wurde behoben, bei denen Modifikatoren nicht richtig verkettet wurden. (I5e162)
Version 1.3.0-alpha03
9. August 2023
androidx.wear.compose:compose-*:1.3.0-alpha03
wurde veröffentlicht. Version 1.3.0-alpha03 enthält diese Commits.
API-Änderungen
- Wir haben dem Material Design zwei neue zusammensetzbare Funktionen hinzugefügt, um
SwipeToReveal
mit Karten und Chips zu implementieren. Diese zusammensetzbaren Funktionen entsprechen den empfohlenen UX-Richtlinien für die Komponente und erleichtern es Entwicklern,SwipeToReveal
mit den vorhandenen Komponenten in Wear Material zu implementieren. (I7ec65) - Wir haben die
FloatRange
-Annotationen als API-Einschränkungen aktiviert, die zuvor in den Kommentaren angegeben wurden. (Icb401)
Fehlerkorrekturen
- Die anfängliche Scroll-Logik von
ScalingLazyColumn
wurde inonGloballyPositioned()
verschoben. (Ic90f1) - Wir verwenden jetzt
drawWithCache
inPositionIndicator
,ProgressIndicator
undSelectionControls
, um die Strichzuweisungen zu optimieren. (I5f225, b/288234617) - Die Sichtbarkeit von Kästchenmarkierungen im deaktivierten Status wurde korrigiert. (Ib25bf)
- Wir haben
Placeholder
aktualisiert, damit der Platzhalter zurückgesetzt werden kann, wenn der Inhalt nicht mehr bereit ist. (Ibd820) - Wir haben Korrekturen an instabilen
Placeholder
-Tests vorgenommen (Idb560).
Version 1.3.0-alpha02
26. Juli 2023
androidx.wear.compose:compose-*:1.3.0-alpha02
wurde veröffentlicht. Version 1.3.0-alpha02 enthält diese Commits.
API-Änderungen
- Wir haben
ExpandableStateMapping
bereitgestellt, eine neue Möglichkeit zum Generieren vonExpandableStates
für Fälle, in denen sie on demand und nicht unbedingt innerhalb eines@Composable
-Bereichs erstellt werden müssen (Iff9e0) SwipeToDismissBox
wurde vonandroidx.wear.compose.material
zu Paketandroidx.wear.compose.foundation
migriert. (I275fb)- API-Dateien wurden aktualisiert, um eine unterdrückte Kompatibilität mit Anmerkungen zu versehen. (I8e87a, b/287516207)
- Wir haben die Höhenkonstanten für
Chip
,CompactChip
undToggleChip
veröffentlicht (Idbfde). - Die horizontalen und vertikalen Abstände für
Chip
undCompactChip
wurden auf „Öffentlich“ gesetzt. (Ieeaf7) - Es wurde eine Funktion hinzugefügt, mit der die Wischverarbeitung in
SwipeDismissableNavHost
über den neuenuserSwipeEnabled
-Parameter deaktiviert werden kann. (Id2a0b, b/230865655) - Wir haben die Wear Compose-Navigationsbibliothek aktualisiert, sodass jetzt die neue
SwipeToDismissBox
aus der Wear Compose Foundation verwendet wird. (I4ff8e)
Fehlerkorrekturen
- Wir haben einen Fehler in der Z-Reihenfolge behoben, bei dem
expandedItem
nicht den richtigen Inhalt anzeigte, nachdem auf eine Schaltfläche geklickt wurde, wenn sie Schaltflächen enthielt. (I1899d, b/289991514) - Verbessern Sie die Fokusbehandlung von
SwipeToDismissBox
(und folglich vonSwipeDismissableNavHost
) mithilfe vonHierarchicalFocusCoordinator
(I45362, b/277852486) - Die Touch-Gestensteuerung in
SwipeableV2
wurde korrigiert . (I89737) - Wir haben die Basisprofile für unsere Version 1.2 fertiggestellt. (ID5740)
- Nach der Migration von
SwipeToDismissBox
zu „Foundation“ wird dieSwipeToDismissBox
-Implementierung von Material zu „Foundation“ weitergeleitet und liefert Standardfarbwerte aus dem Design.(If8451) - Wir haben
ListHeader
eine Semantik für Überschriften hinzugefügt. (IC5420) Chip
undToggleChip
passen jetzt bei Bedarf ihre Höhe an Inhalte an, die aufgrund großer Schriftgrößen vergrößert wurden. (Iaf302)- Für mehr Barrierefreiheit wurde ein Fehler in der semantischen Rolle des antippbaren Bereichs von
SplitToggleChip
behoben. (Ieed3a) - Mit der Einstellung „Bewegung reduzieren“ werden jetzt der Schimmereffekt und die Wischbewegung bei Platzhaltern deaktiviert. (I91046)
Stepper
undInlineSlider
unterstützen jetzt wiederholte Klicks bei langem Drücken. Du kannst den Wert vonStepper
undInlineSlider
jetzt schnell erhöhen oder verringern, indem du die Schaltflächen "+" oder "-" gedrückt hältst. (I27359)
Version 1.3.0-alpha01
21. Juni 2023
androidx.wear.compose:compose-*:1.3.0-alpha01
wurde veröffentlicht. Version 1.3.0-alpha01 enthält diese Commits.
Fehlerkorrekturen
- Wie in
1.2.0-alpha07
und1.2.0-alpha10
angekündigt, ändern wir nun dieDefaultTextStyle
, um die Abstände zwischen den Schriftarten zu deaktivieren, damit sie auf der gesamten Android-Plattform einheitlich sind. Dadurch werden einige Fälle von Textbeschnitt mit großen Schriftgrößen beseitigt und können sich auch auf Bildschirmlayouts auswirken, sodass die Screenshot-Tests aktualisiert werden müssen. Beispielsweise sehen wir hier Textbeschnitt (Ic6a86).
- Sie ist nicht mehr vorhanden, wenn der Schriftabstand deaktiviert ist:
- Wir haben
wear.compose.foundation
auf eine API-Abhängigkeit vonwear.compose.material
aktualisiert (I72004, b/285404743). - Wir haben einen Fehler in
SwipeToDismissBox
behoben. Hintergrund- und Inhaltstasten werden jetzt an den Merkblock übergeben, sodass neue Modifikatoren erstellt werden, wenn sich der Inhalt oder Hintergrund ändert. (Ib876c, b/280392104) - Wir haben
TimeText
aktualisiert, sodass das Gebietsschema bei der Auswahl des Formats für das 12- oder 24-Stunden-Format verwendet wird. (If4a3d) - Wir haben eine Inkonsistenz bei den
SwipeToDismissBox
contentScrimColor
-Standardparametern behoben. (I2d70f) - Wir haben die Bewegungsverarbeitung in
SwipeToReveal
verbessert. (I28fb7)
Bekannte Probleme
- Die Unterstützung von vom Nutzer konfigurierten Schriftgrößen ist eine Anforderung für die Barrierefreiheit. Wir wissen, dass mehrzeilige Chips bei der Anzeige mit großen Schriftgrößen zu Textausschnitt führen können. Deshalb aktualisieren wir Chip in einer frühen 1.3-Alphaversion, um in diesen Fällen die Höhe anzupassen.
Version 1.2
Version 1.2.1
18. Oktober 2023
androidx.wear.compose:compose-*:1.2.1
wurde veröffentlicht. Version 1.2.1 enthält diese Commits.
Fehlerkorrekturen
- Es wurde ein Fehler behoben, bei dem
PositionIndicator
fälschlicherweise verschwunden war. (7a167f)
Version 1.2.0
9. August 2023
androidx.wear.compose:compose-*:1.2.0
wurde veröffentlicht. Version 1.2.0 enthält diese Commits.
Wichtige Änderungen seit Version 1.1.0
- Stabile Version von Compose für Wear OS 1.2.0 (weitere Informationen)
- Eine Liste der wichtigsten Änderungen in Wear Compose 1.2 findest du in den Versionshinweisen unter Compose for Wear OS 1.2 Beta01.
Version 1.2.0-rc01
26. Juli 2023
androidx.wear.compose:compose-*:1.2.0-rc01
wurde veröffentlicht. Version 1.2.0-rc01 enthält diese Commits.
Fehlerkorrekturen
- Wir haben die Basisprofile für Version 1.2 fertiggestellt (Id5740).
Version 1.2.0-beta02
7. Juni 2023
androidx.wear.compose:compose-*:1.2.0-beta02
wurde veröffentlicht. Version 1.2.0-beta02 enthält diese Commits.
Neue Funktionen
- Wir haben die neue experimentelle Variable
LocalReduceMotion
CompositionLocal
hinzugefügt, mit der das Skalieren und Ausblenden beiScalingLazyColumn
deaktiviert wird. (I58024)
Fehlerkorrekturen
- Wir haben die Basisprofile für die Wear Compose-Grundlage und die Materialbibliotheken aktualisiert(I4725d).
- Wir haben eine Inkonsistenz der Standardwerte für
SwipeToDismissBox
contentScrimColor
-Parameter (I2d70f) behoben. - Der Standardwert von
DefaultTextStyle
für die EinstellungIncludeFontPadding
(I737ed) wurde korrigiert.
Version 1.2.0-beta01
24. Mai 2023
androidx.wear.compose:compose-*:1.2.0-beta01
wurde veröffentlicht. Version 1.2.0-beta01 enthält diese Commits.
Funktionen der Funktion „Compose“ für Wear OS 1.2
Version 1.2-beta01 von Compose für Wear OS gibt an, dass dieser Release der Bibliothek vollständig ist und die API gesperrt ist (sofern nicht als experimentell gekennzeichnet). Wear Compose 1.2 enthält die folgenden neuen Funktionen:
expandableItem
undexpandableItems
sind zwei neueFoundation
-Komponenten, die Expandable-Elemente innerhalb einerScalingLazyColumn
unterstützen. Verwenden SieexpandableItem
für ein einzelnes maximierbares Element, z. B. Text mit der Anzahl der Zeilen. Verwenden SieexpandableItems
für eine Gruppe maximierbarer Elemente 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 Unterstrukturen der Komposition als „Fokus aktiviert“ oder „Fokus deaktiviert“ markiert werden.Picker
: Die API enthält jetztuserScrollEnabled
, um zu steuern, ob die Auswahl zum Scrollen durch Nutzer aktiv ist.PickerGroup
: eine neue zusammensetzbare Funktion zur gemeinsamen Verwaltung mehrerer Picker. Er steuert den Fokus zwischen den Auswahlfeldern mithilfe derHierarchicalFocusCoordinator
API und ermöglicht die automatische Zentrierung von Auswahlelementen.Placeholder
: Wir haben Änderungen an den Schimmern und den Animationen vom Typ „Wipe Off“ vorgenommen. Der Löscheffekt wird jetzt sofort angewendet, wenn der Inhalt fertig ist.ScalingLazyColumn
: Wir habenScalingLazyColumn
und die zugehörigen Kurse vonandroidx.wear.compose.material.ScalingLazyColumn
zuandroidx.wear.compose.foundation.lazy.ScalingLazyColumn
migriert. Bitte führen Sie ein Update durch, um dieFoundation.Lazy
-Version zu verwenden.SwipeToReveal
: Zur Ergänzung des bestehenden Musters „langes Drücken“ haben wir experimentelle Unterstützung für das Wischen zum Anzeigen hinzugefügt, um auf sekundäre Aktionen zuzugreifen.Stepper
: Hat jetzt eine Überlastung mit einem zusätzlichenenableRangeSemantics
-Parameter, um das Deaktivieren der Standardbereichssemantik zu erleichtern.Previews
: Wir haben die folgenden benutzerdefinierten Anmerkungen für die Vorschau zusammensetzbarer Funktionen auf Wear-Bildschirmen hinzugefügt:WearPreviewSmallRound
zeigt eine Vorschau der zusammensetzbaren Funktion auf einem kleinen, runden Gerät an.WearPreviewLargeRound
zeigt eine Vorschau der zusammensetzbaren Funktion auf einem großen runden Gerät an.WearPreviewSquare
zeigt eine Vorschau der zusammensetzbaren Funktion auf einem quadratischen Gerät an. Außerdem sehen Sie eine Vorschau der zusammensetzbaren Funktionen auf einem Wear-Gerät mit verschiedenen Schriftgrößen inWearPreviewFontScales
und inWearPreviewDevices
eine Vorschau der zusammensetzbaren Funktionen auf verschiedenen Wear-Geräten an.- Wir haben eine
DefaultTextStyle
zu Wear Compose hinzugefügt, mit der diePlatformTextStyle.includeFontPadding
-Eigenschaft standardmäßig auf „true“ gesetzt ist (dies ist die aktuelle Einstellung). Auf diese Weise können wir die standardmäßige Deaktivierung des Schriftabstands mit den Erstellungsbibliotheken in der frühen Alphaversion 1.3 synchronisieren. Weitere Informationen finden Sie unter 1.2.0-alpha10.
Neue Funktionen
- Wir haben experimentelle Unterstützung für die deaktivierte Skalierung und Ausblendung von Animationen hinzugefügt, wenn die Einstellung "Reduce_motion" aktiviert ist. (I58024)
Fehlerkorrekturen
- Verbesserte Dokumentation für
angularWidthDp
inCurvedSize.kt
(Iab75c) SwipeDismissableNavHost
protokolliert jetzt eine Warnung mit möglichen Ursachen für einen leeren Backstack. Dadurch werden unerwartete Abstürze vermieden, die durchIllegalArgumentException
verursacht wurden, das ausgelöst wurde, als der Backstack leer war. (I04a81, b/277700155)
Version 1.2.0-alpha10
10. Mai 2023
androidx.wear.compose:compose-*:1.2.0-alpha10
wurde veröffentlicht. Version 1.2.0-alpha10 enthält diese Commits.
Neue Funktionen
- Für den Zugriff auf sekundäre Aktionen wird jetzt „Zum Einblenden wischen“ unterstützt. Dieses Muster ergänzt das Muster „langes Drücken“, die bestehende Möglichkeit, wie Nutzende (verschiedene) sekundäre Aktionen anzeigen könnten. (I60862)
API-Änderungen
- Wir haben
RevealScope
zu den zusammensetzbaren Funktionen für Aktionen inSwipeToReveal
hinzugefügt, die Zugriff auf den Offset bieten, mit dem zusätzliche Aktionen angezeigt werden. (I3fd56)
Fehlerkorrekturen
- Es wurde ein Problem behoben, bei dem
ScalingLazyColumn
nach dem Wischen mit der Wear API 33 hängen blieb (Ic4599) - Wir haben einige Leistungsverbesserungen an
PositionIndicator
vorgenommen, um Verzögerungen zu reduzieren. (I35e92) - Wir haben einen Fehler in Chip und
CompactChip
behoben, bei dem die semantische Rolle nicht mehr aufRole.Button
festgelegt wurde. (I93f91, b/277326264)
Bekannte Probleme
Wir haben in Android Studio einen Fehler gefunden, der zu Fehlern beim Rendern der Vorschau führt, wenn diese mit @WearPreviewDevices und @WearPreviewFontScales gekennzeichnet sind. Eine Lösung ist für die Veröffentlichung geplant. Die anderen Anmerkungen zur Wear-Vorschau funktionieren ab Android Studio Giraffe 2022.3.1 wie vorgesehen.
In Version 1.2.0-alpha07 wurde der StandardtextStyle zu Wear Compose hinzugefügt und der vorhandene Wert von PlatformTextStyle.includeFontPadding auf "true" beibehalten. Informationen für den Hintergrund finden Sie unter Schriftabstand korrigieren in Compose. Wir werden den StandardtextStyle in einer frühen 1.3 Alpha-Version deaktivieren, um den Schriftabstand auf der Android-Plattform einheitlich zu gestalten. Dadurch werden einige Fälle von Textbeschnitt mit großen Schriftgrößen beseitigt und können sich auch auf Bildschirmlayouts auswirken, sodass die Screenshot-Tests aktualisiert werden müssen. Bei großen Schriftgrößen sehen wir hier zum Beispiel Textbeschnitt:
- Sie ist nicht mehr vorhanden, wenn der Schriftabstand deaktiviert ist:
Sie können die neue Einstellung jetzt übernehmen, indem Sie die Typografie in Ihrem Design überschreiben (siehe Beispielcode).
Version 1.2.0-alpha09
19. April 2023
androidx.wear.compose:compose-*:1.2.0-alpha09
wurde veröffentlicht. Version 1.2.0-alpha09 enthält diese Commits.
API-Änderungen
- Fügen Sie
angularSizeDp
zurCurvedModifier
API hinzu, um die Winkelbreite in DP festzulegen (I89a52)
Fehlerkorrekturen
- In unserer Demo zur Zeitauswahl(Id0eb7) wurden Probleme mit den Bedienungshilfen behoben.
Version 1.2.0-alpha08
5. April 2023
androidx.wear.compose:compose-*:1.2.0-alpha08
wurde veröffentlicht. Version 1.2.0-alpha08 enthält diese Commits.
API-Änderungen
- Wir haben
ExpandableItemsState
inExpandableState
umbenannt. (If85ea) - Wir haben
expandableButton
hinzugefügt, um das Erstellen einer Schaltfläche zu vereinfachen, die minimiert wird, wenn der Inhalt maximiert wird. Außerdem wurden die Beispiele für maximierbare Elemente aktualisiert. (Iae309)
Fehlerkorrekturen
- Verbesserte maximierbare Beispiele, um mehr Möglichkeiten anzuzeigen. Die Animation von
expandableItem
wurde so geändert, dass der Inhalt durch die Animation zentriert bleibt. (I2f637) ToggleControls
wurde aktualisiert, um zusätzliche Neuzusammensetzungen bei der manuellen Animation der Farben mithilfe der Funktion „Status“ zu vermeiden. (I5d319)
Version 1.2.0-alpha07
22. März 2023
androidx.wear.compose:compose-*:1.2.0-alpha07
wurde veröffentlicht. Version 1.2.0-alpha07 enthält diese Commits.
API-Änderungen
- Wir haben die Expandable-Element-Komponenten (in 1.2.0-alpha06 hinzugefügt) vom Material auf das Fundament verschoben, da sie keinen aussagekräftigen Bezug zu
MaterialTheme
hatten. (Ib0525)
Fehlerkorrekturen
- Wir haben einen Absturz behoben, der auf einem Bildschirm mit
PickerGroup
aufgetreten ist. Dabei wurde sichergestellt, dassPickerGroup
den Fokus korrekt verarbeitet, wenn kein Picker im Fokus ist. Außerdem wird in unseren Auswahl-Demos das Scrollen per RSB unterstützt. (If8c19) - Wir haben die Dialogfeldübergänge verbessert: Der Intro-Übergang ist jetzt flüssiger und passt zum Outro-Übergang. (Ib5af9)
- Wir haben eine
DefaultTextStyle
zu Wear Compose hinzugefügt, mit der diePlatformTextStyle.includeFontPadding
-Eigenschaft standardmäßig auf „true“ gesetzt ist (dies ist die aktuelle Einstellung). Auf diese Weise können wir in Zukunft die standardmäßige Deaktivierung des Schriftabstands mit den Texterstellungsbibliotheken synchronisieren. Weitere Informationen zum Hintergrund finden Sie unter Korrektur des Schriftabstands in Compose. (I2aee8) - Eine Vorschauabhängigkeit von
UpsideDownCake
über die Aktivitätszusammensetzung wurde rückgängig gemacht, die die Veröffentlichung von Apps im Google Play Store blockiert hat. (I6443d)
Version 1.2.0-alpha06
8. März 2023
androidx.wear.compose:compose-*:1.2.0-alpha06
wurde veröffentlicht. Version 1.2.0-alpha06 enthält diese Commits.
API-Änderungen
- Fügen Sie die Komponente
CurvedBox
hinzu, die Komponenten in einer gekrümmten Welt übereinander platziert. (I29200) - Expandable-Element(e) hinzugefügt – zwei neue Komponenten zur Unterstützung entweder einer Gruppe maximierbarer Elemente in einem
ScalingLazyColumn
oder eines einzelnen maximierbaren Elements wie Text, bei dem sich die Anzahl der Zeilen erhöht. (I95dd5) - Wir haben die folgenden benutzerdefinierten Anmerkungen für die Vorschau zusammensetzbarer Funktionen auf Wear-Bildschirmen hinzugefügt:
WearPreviewSmallRound
zeigt eine Vorschau der zusammensetzbaren Funktion auf einem kleinen, runden Gerät an:WearPreviewLargeRound
zeigt eine Vorschau der zusammensetzbaren Funktion auf einem großen runden Gerät an.WearPreviewSquare
zeigt eine Vorschau der zusammensetzbaren Funktion auf einem quadratischen Gerät an. Außerdem sehen Sie eine Vorschau der zusammensetzbaren Funktionen auf einem Wear-Gerät mit verschiedenen Schriftgrößen inWearPreviewFontScales
und inWearPreviewDevices
eine Vorschau der zusammensetzbaren Funktionen auf verschiedenen Wear-Geräten an. Um diese Vorschauen nutzen zu können, müssen Sie die neueste Android Studio-Version (Giraffe Canary 6) oder eine neuere Version verwenden. Wenn diese Anmerkungen für Ihren Zweck nicht geeignet sind, können Sie die Vorschau trotzdem verwenden und weitere Anpassungen über Parameter ermöglichen. (I397ff) - Wir haben
HierarchicalFocusCoordinator
als experimentell gekennzeichnet, da es aufgrund seiner breiten Anwendbarkeit als Kandidaten für die Verschiebung in die zentralen Editorenbibliotheken gilt. (I3a768)
Fehlerkorrekturen
- Es wurde ein Fehler in
HierarchicalFocusCoordinator
behoben. Wenn die für denfocusEnabled
-Parameter übergebene Lambda geändert wurde, wird jetzt die neue Lambda-Funktion korrekt verwendet. (Icb353) - Wir haben die standardmäßig deaktivierte Inhaltsfarbe zu „Hintergrund“ geändert, wenn in
Button
,CompactButton
,Chip
,CompactChip
undToggleButton
Primärfarben als Hintergrund verwendet werden. Dadurch wird der Kontrast für die Barrierefreiheit verbessert. (I527cc)
Version 1.2.0-alpha05
22. Februar 2023
androidx.wear.compose:compose-*:1.2.0-alpha05
wurde veröffentlicht. Version 1.2.0-alpha05 enthält diese Commits.
API-Änderungen
- Die
PickerGroup
API wurde aktualisiert, damit die Mindesteinschränkungen optional an die zusammensetzbare Funktion weitergegeben werden können. Wenn dieser Wert auf „true“ gesetzt ist, sind die minimalen Einschränkungen, die von der übergeordneten zusammensetzbaren Funktion übergeben werden, für dasPickerGroup
zulässig. Wenn die Richtlinie auf „false“ gesetzt ist, setztPickerGroup
die minimalen Einschränkungen zurück. (I3e046) - Wir haben der Picker API
animateScrollToOption
hinzugefügt, um programmatische Animationen für eine bestimmte Auswahloption zu unterstützen (I6fe67).
Fehlerkorrekturen
- Wir haben
HorizontalPageIndicator
aktualisiert, damit linksläufige Layouts unterstützt werden. (Ia4359) - Screenshot-Tests für Rechts-nach-links-Layout in
HorizontalPageIndicator
(I6fbb8) hinzugefügt SwipeDismissableNavHostTest
wurden weitere Tests hinzugefügt, dieTestNavHostController
verwenden (I61d54)
Version 1.2.0-alpha04
8. Februar 2023
androidx.wear.compose:compose-*:1.2.0-alpha04
wurde veröffentlicht. Version 1.2.0-alpha04 enthält diese Commits.
Neue Funktionen
PickerGroup
zum gleichzeitigen Verarbeiten mehrerer Auswahlelemente mithilfe der Focus API. Sie steuert den Fokus zwischen den verschiedenen Auswahlen und ermöglicht die automatische Zentrierung der Auswahl basierend auf Parametern. Außerdem können Entwickler den Fokus zwischen verschiedenen Auswahlen ändern, während Ereignisse aus der Gruppe verarbeitet werden. Im TalkBack-Modus verarbeitetPickerGroup
den TalkBack-Fokus, indem es den Fokus in die ausgewählte Auswahl der Gruppe verschiebt. (I60840)
API-Änderungen
- Wir haben Stepper eine Überlastung mit einem zusätzlichen
enableRangeSemantics
-Parameter hinzugefügt, um das Deaktivieren der Standardbereichssemantik (Ia61d4) zu erleichtern.
Fehlerkorrekturen
- Verschachtelung von
ScalingLazyColumn
auf einer horizontal scrollenden Seite zulassen (Iec3f8, b/266555016) - Verbesserungen bei der Bereinigung von Stepper-Kdocs und
StepperTest
-Tests. (IC118e) - Die Abhängigkeit von
androidx.navigation
wurde auf Version 2.5.3 aktualisiert (If58ed)
Version 1.2.0-alpha03
25. Januar 2023
androidx.wear.compose:compose-*:1.2.0-alpha03
wurde veröffentlicht. Version 1.2.0-alpha03 enthält diese Commits.
API-Änderungen
- Wir haben
ScalingLazyColumn
und die zugehörigen Klassen vonandroidx.wear.compose.material.ScalingLazyColumn
zuandrdoidx.wear.compose.foundation.lazy.ScalingLazyColumn
migriert (siehe dieses Beispiel). Dieser neue Standort entspricht eher dem voncompose.foundation.lazy.LazyColumn
und ist natürlicher, da er keine gesonderte Material-Komponente ist. Diese Änderung erfolgt als Vorbereitung auf eine neue Material3-Bibliothek, an der wir parallel zu der bestehenden Material-Bibliothek arbeiten werden. (I060e7)
Die folgenden Änderungen sind Teil der ScalingLazyColumn
-Migration von Material zu Foundation.Lazy
:
PositionIndicator
APIs, die auf MaterialScalingLazyColumn
ausgerichtet sind, wurden eingestellt. Bitte aktualisieren Sie aufFoundation.Lazy ScalingLazyColumn
. Außerdem wurde das FeldanchorType
zuScalingLazyListLayoutInfo
hinzugefügt. (I29d95)ScalingLazyColumn
wurde im Wear Compose Material-Paket (I16d34) als veraltet markiert- Wir haben den
ScrollAway
-Modifikator aktualisiert, sodassScalingLazyListState
aus Wear ComposeFoundation.Lazy
verwendet wird, und die Überlastung eingestellt, dieScalingLazyListState
von Wear Compose-Material verbraucht hat. (Ifc42c) - Wir haben die Dialog APIs aktualisiert, um
ScalingLazyListState
vonFoundation.Lazy
zu verwenden, und die Überlastungen eingestellt, die MaterialScalingLazyListState
verwendet haben (Ic8960). - Wir haben die Picker APIs aktualisiert, um
ScalingParams
vonFoundation.Lazy
zu verwenden, und die Überlastungen eingestellt, die MaterialScalingParams
verwendet haben. (Idc3d8)
Fehlerkorrekturen
- Wir haben einen Fehler behoben, der zu unnötigen Neuzusammensetzungen in
ScalingLazyListState.centerItemIndex
führte. Dabei wurde sichergestellt, dass Updates nur dann gesendet werden, wenn sich der Wert tatsächlich ändert (Ia9f38). - Wir haben die Leistung von
SwipeToDismissBox
(I3933b) verbessert - Benchmark-Tests für
ScalingLazyColumn
in Wear Compose Foundation (Ie00f9) hinzugefügt - Wir haben einige interne
ScalingLazyColumn
-Klassenmethoden in Material so aktualisiert, dass ihre Entsprechungen ausFoundation.Lazy
(I38aab) verwendet werden. - Wir haben einige Probleme in Auswahltests behoben und weitere Tests zum Prüfen des Scrollens mit Offset hinzugefügt (I6ac34).
- Wir haben die
ScalingLazyColumn
-Integrationsdemos migriert, sodass sie vonFoundation.Lazy
anstelle von MaterialScalingLazyColumn
abhängig sind (Ic6caa). - Wir haben der
DatePicker
-Demo (I961cd) optionalefromDate/toDate
-Parameter hinzugefügt.
Version 1.2.0-alpha02
11. Januar 2023
androidx.wear.compose:compose-*:1.2.0-alpha02
wurde veröffentlicht. Version 1.2.0-alpha02 enthält diese Commits.
API-Änderungen
- Bei Android Compose-UI-Tests werden jetzt Layoutübergänge für jeden Frame ausgeführt, wenn Frames ausgeführt werden, um inaktiv zu werden (z.B. über
waitForIdle
). Dies kann sich auf Tests auswirken, bei denen die Bestätigung für einzelne Frames von Layoutanimationen durchgeführt wird. (I8ea08, b/222093277) - Der Parameter
minLines
wird Wear Text für ein konsistentes Verhalten mitBasicText
hinzugefügt (I24874). CompactChipTapTargetPadding
wurde veröffentlicht, sodass es in der Dokumentation erscheint (If1e70, b/234119038).
Fehlerkorrekturen
- Plattformübergreifende Builds für
wear.compose
-Pakete deaktivieren (Iad3d7) - Kdocs für
scrollToOption
(I6f9a0) korrigieren PlaceholderState.rememberPlaceholderState()
wurde aktualisiert, umrememberUpdatedState
so zu verwenden, dass der Status aktualisiert wird, wennonContentReady
Lambda ist. (I02635, b/260343754)- Wir haben ein Problem mit zitterndem Text in der Komponente „
Picker
“ durch die neue Compositing-Strategie behoben, die zuModifier.graphicsLayer
hinzugefügt wurde. (I99302) - Wir haben einen Fehler behoben, der in unserer
DatePicker
-Demo (I660bd) zum Flackern führte. - Wir haben die Zugänglichkeit der 12-Stunden-Zeit- und Datumsauswahl-Demos (I05e12) verbessert.
- Wir haben unsere Demos für die Uhrzeit- und Datumsauswahl aktualisiert, sodass die Auswahl nicht von RSB-Änderungen betroffen ist, wenn sie nicht ausgewählt sind (I4aecb).
Version 1.2.0-alpha01
7. Dezember 2022
androidx.wear.compose:compose-*:1.2.0-alpha01
wurde veröffentlicht. Version 1.2.0-alpha01 enthält diese Commits.
Neue Funktionen
- Wir haben die experimentelle Platzhalterfunktion so aktualisiert, dass der Effekt "Auswischen" sofort angewendet wird, wenn der Inhalt fertig ist, anstatt auf den Beginn der nächsten Animationsschleife zu warten. Wir haben auch einige Aktualisierungen am Schimmern und beim Löschen der Animationen vorgenommen. (I5a7f4)
API-Änderungen
- Wir haben eine
HierarchicalFocusCoordinator
zusammensetzbare Funktion hinzugefügt, mit der Unterstrukturen der Komposition als Fokus aktiviert oder deaktiviert werden können (I827cb). - Wir haben ein neues Attribut hinzugefügt, um die semantische Rolle für
ToggleButton
zu überschreiben (I67132) - Wir haben
TimeTextDefaults.TimeFormat12Hours
aktualisiert und den AM/PM-System fürTimeText
entfernt. Dadurch wird der Standardwert dertimeSource
-Parameter in derTimeText
API geändert. (I1eb7f) - Wir haben die Picker API erweitert, um die Barrierefreiheit für Bildschirme mit der Mehrfachauswahl zu verbessern. Mit der neuen Eigenschaft
userScrollEnabled
wird gesteuert, ob die Auswahl für das Scrollen durch Nutzer aktiv ist. (I3c3aa)
Fehlerkorrekturen
- Wir haben die Standardrahmenbreite für
OutlinedButton/OutlinedCompactButton
von 2 dp in 1 dp geändert, damit sie den endgültigen UX-Spezifikationen entspricht. (Icf84d) - Um die Wirkung des ersten Elements, das einem leeren
ScalingLazyColumn
hinzugefügt wird, beim Scrollen zu verringern, haben wir geschätztautoCentering topPadding
hinzugefügt, wenn der Inhalt leer ist. Diese Änderung berechnet den erforderlichen Abstand oben unter der Annahme eines anfänglichen Elements mit einer Höhe von 0.dp. FürScalingLazyListAnchorType.ItemStart
wird der korrekte Abstand oben berechnet. FürScalingLazyListAnchorType.ItemCenter
ist diese Berechnung falsch, da die Höhe der Elemente für die korrekte Größe des Inhalts erforderlich ist. Dies führt zu einem kleinen Scrolleffekt basierend auf der tatsächlichen Höhe der Elemente.(I239a4) - Wir haben das auf die
SwipeToDismiss
-Animation angewendete Hintergrundgitter aktualisiert, damit es der Wear-Plattform entspricht. (I9003e) - Wir haben die
PositionIndicator
-Verarbeitung vonLazyListState
undScalingLazyListState
für Listenelemente der Größe 0 korrigiert, um Fehler durch eine Division durch null zu vermeiden.(Ic28dd)
Version 1.1
Version 1.1.2
8. Februar 2023
androidx.wear.compose:compose-foundation:1.1.2
, androidx.wear.compose:compose-material:1.1.2
und androidx.wear.compose:compose-navigation:1.1.2
wurden veröffentlicht. Version 1.1.2 enthält diese Commits.
Fehlerkorrekturen
- Wir haben einen Fehler behoben, der zu unnötigen Neuzusammensetzungen in
ScalingLazyListState.centerItemIndex
führte. Dabei wurde sichergestellt, dass Updates nur dann gesendet werden, wenn sich der Wert tatsächlich ändert (Ia9f38).
Version 1.1.1
11. Januar 2023
androidx.wear.compose:compose-foundation:1.1.1
, androidx.wear.compose:compose-material:1.1.1
und androidx.wear.compose:compose-navigation:1.1.1
wurden veröffentlicht. Version 1.1.1 enthält diese Commits.
Fehlerkorrekturen
PlaceholderState.rememberPlaceholderState()
wurde aktualisiert, umrememberUpdatedState
so zu verwenden, dass der Status aktualisiert wird, wennonContentReady
Lambda ist. (I02635, b/260343754)
Version 1.1.0
7. Dezember 2022
androidx.wear.compose:compose-foundation:1.1.0
, androidx.wear.compose:compose-material:1.1.0
und androidx.wear.compose:compose-navigation:1.1.0
wurden veröffentlicht. Version 1.1.0 enthält diese Commits.
Wichtige Änderungen seit Version 1.0.0
- Stabile Version von Compose für Wear OS 1.1.0 (weitere Informationen).
- Eine Liste der wichtigsten Änderungen in Wear Compose 1.1 findest du in den Versionshinweisen für Compose for Wear OS 1.1 Beta01.
Neue Funktionen
- Wir haben die experimentelle Platzhalterfunktion so aktualisiert, dass der Effekt "Auswischen" sofort angewendet wird, wenn der Inhalt fertig ist, anstatt auf den Beginn der nächsten Animationsschleife zu warten. Wir haben auch einige Aktualisierungen am Schimmern und beim Löschen der Animationen vorgenommen. (I5a7f4)
Fehlerkorrekturen
- Wir haben die Standardrahmenbreite für
OutlinedButton/OutlinedCompactButton
von 2 dp in 1 dp geändert, damit sie den endgültigen UX-Spezifikationen entspricht. (Icf84d) - Um die Wirkung des ersten Elements, das einem leeren
ScalingLazyColumn
hinzugefügt wird, beim Scrollen zu verringern, haben wir geschätztautoCentering topPadding
hinzugefügt, wenn der Inhalt leer ist. Diese Änderung berechnet den erforderlichen Abstand oben unter der Annahme eines anfänglichen Elements mit einer Höhe von 0.dp. FürScalingLazyListAnchorType.ItemStart
wird der korrekte Abstand oben berechnet. FürScalingLazyListAnchorType.ItemCenter
ist diese Berechnung falsch, da die Höhe der Elemente für die korrekte Größe des Inhalts erforderlich ist. Dies führt zu einem kleinen Scrolleffekt basierend auf der tatsächlichen Höhe der Elemente.(I239a4) - Wir haben das auf die
SwipeToDismiss
-Animation angewendete Hintergrundgitter aktualisiert, damit es der Wear-Plattform entspricht.(I9003e) - Wir haben die
PositionIndicator
-Verarbeitung vonLazyListState
undScalingLazyListState
für Listenelemente der Größe 0 korrigiert, um Fehler durch eine Division durch null zu vermeiden.(Ic28dd)
Version 1.1.0-rc01
9. November 2022
androidx.wear.compose:compose-foundation:1.1.0-rc01
, androidx.wear.compose:compose-material:1.1.0-rc01
und androidx.wear.compose:compose-navigation:1.1.0-rc01
wurden veröffentlicht. Version 1.1.0-rc01 enthält diese Commits.
Fehlerkorrekturen
- Wir haben Grundprofilregeln für
Placeholders
,ScrollAway
,RadioButton
,Switch
,Checkbox
,OutlinedButton
,OutlinedCompactButton
,OutlinedChip
undOutlinedCompactChip
hinzugefügt. (I8249c) - Wir haben einen Fehler in
Modifier.scrollAway
behoben. Wenn der angegebeneitemIndex
-Wert ungültig ist (z. B. wenn dieser Artikelindex außerhalb des zulässigen Bereichs liegt), wird jetztTimeText
weiterhin angezeigt. (I2137a) - Wir haben die
SwipeToDismissBox
-Animation aktualisiert, damit sie der Plattformimplementierung entspricht. Nach der anfänglichen Animation gleitet der Bildschirm nach rechts, sobald das Schließen ausgelöst wurde. (I41d34) - Zur Optimierung haben wir
Modifier.scrollAway
so aktualisiert, dass nur diescrollState
innerhalb des Messwertblocks gelesen werden, um zu vermeiden, dass der Modifizierer nach jeder erneuten Messung neu zusammengesetzt wird. (I4c6f1) - Wir haben eine Dokumentation und ein Beispiel zu Platzhaltern hinzugefügt, um die korrekte Reihenfolge für
Modifier.placeholder
undModifier.placeholderShimmer
anzuzeigen, wenn sie auf dieselbe zusammensetzbare Funktion angewendet werden. (Ie96f4, b/256583229) - Wir haben die Standardrahmenbreite für
OutlinedCompactChip/OutlinedChip
von 2 dp in 1 dp geändert, damit sie den endgültigen UX-Spezifikationen entspricht. (Ib3d8e) - Wir haben einen Fehler in
rememberPickerState
behoben, bei dem aktualisierte Eingaben nicht gespeichert wurden, sodass zusammensetzbare Funktionen nach Änderungen an den Eingaben nicht aktualisiert wurden. (I49ff6, b/255323197) - Wir haben einige Aktualisierungen der Benutzeroberfläche an den Platzhaltern vorgenommen, 1) den Schimmerverlauf auf das 1,5-Fache der Bildschirmgröße geändert, 2) das Easing (kubische Bézierkurve) des Schimmerfortschritts hinzugefügt und 3) die Wisch-Animation (250 ms) beschleunigen. (Id29c1)
- Wir haben einen Fehler in der Benutzeroberfläche im Platzhalter-WipeOff-Effekt behoben, bei dem Chip- und Kartenhintergründe etwas früher entfernt wurden, da die Position der Komponente auf dem Bildschirm nicht berücksichtigt wurde. (I2c7cb)
- Wir haben die Platzhalter-Hintergrundzeichnung aktualisiert, um Farben zusammenzuführen und sie nach Möglichkeit nicht übereinander zu legen, um das Risiko einer Alpha-Überlagerung der verschiedenen zugeschnittenen Ebenen zu verringern, damit die zugrunde liegenden Farben an den Rändern des Platzhalter-Hintergrunds durchscheinen. (I2ea26)
- Wir haben die Berechnung von
ScalingLazyListState.centerItemIndex/centerItemOffset
korrigiert. Wenn zwei Elemente auf beiden Seiten der Mittellinie des Darstellungsbereichs liegen, wird das am nächsten gelegene Element alscenterItem
betrachtet. (I30709, b/254257769) - Wir haben einen Fehler in
ScalingLazyListState.layoutInfo.visibleItemsInfo
behoben, der falsche Offsets während derScalingLazyColumn
-Initialisierung meldete. Nun wird eine leere Liste zurückgegeben, bis alle Listenelemente sichtbar sind und die richtigen Offsets aufweisen. Wenn du nachScalingLazyListState.layoutInfo.visibleItemsInfo.isNotEmpty()
suchst, wird bestätigt, dass die Initialisierung vonScalingLazyColumn
abgeschlossen ist und Elemente sichtbar sind. (I3a3b8)
Version 1.1.0-beta01
24. Oktober 2022
androidx.wear.compose:compose-foundation:1.1.0-beta01
, androidx.wear.compose:compose-material:1.1.0-beta01
und androidx.wear.compose:compose-navigation:1.1.0-beta01
wurden veröffentlicht. Version 1.1.0-beta01 enthält diese Commits.
Funktionen der Funktion „Compose“ für Wear OS 1.1
1.1.0-beta01 von Compose for Wear OS gab an, dass die Funktion in diesem Release der Bibliothek abgeschlossen und die API gesperrt ist.
- Wear Compose 1.1 enthält die folgenden neuen Funktionen:
<ph type="x-smartling-placeholder">
- </ph>
- Auswahl – Verbesserte Barrierefreiheit der Auswahl, sodass Multi-Picker-Bildschirme mit Screenreadern navigierbar sind und die Inhaltsbeschreibung barrierefrei ist.
- Der
contentDescription
-Parameter der Auswahl wird jetzt nur für die ausgewählte Auswahloption verwendet und verwendet einen String, für den Nullwerte zulässig sind. Beim vorherigen Commit musste eine Zuordnung von der Option zur Inhaltsbeschreibung übergeben werden, es wurde aber nur die ausgewählte Option verwendet. - Auswahlelemente sind jetzt immer zentriert ausgerichtet. Das Beheben eines Fehlers beim Festlegen von
gradientRatio
auf null hatte zur Folge, dass sich die Ausrichtung änderte. Chip/ToggleChip
: Wir haben die Standardverläufe fürChip/ToggleChip
aktualisiert, damit sie den neuesten UX-Spezifikationen entsprechen.ChipDefaults.gradientBackgroundChipColors
wurde aktualisiert und beginnt nun bei 50% der Primärversion statt bei 32,5%.Chip/ToggleChip
– Überlastungen zum Ändern von Chipformen hinzugefügtChip/Button/ToggleButton
: Es wurde ein neuer umrissener Stil für Chips und Schaltflächen sowie die neuen zusammensetzbaren FunktionenOutlinedChip
undOutlinedButton
hinzugefügt, die ein transparentesChip/Button
mit dünnem Rahmen bieten.- Karte: Die Standardverläufe für Karten wurden aktualisiert, um sie an die neuesten UX-Spezifikationen anzupassen.
CardDefaults.cardBackgroundPainter
wurde so aktualisiert, dass es bei 30% der primären Kampagne beginnt und bei 20% vononSurfaceVariant
endet (zuvor 20% bis 10%onSurfaceVariant
).ToggleChip.toggleChipColors
ändert sich von einem linearen Farbverlauf von 75% Oberfläche zu 32,5% primärem zu 0% primären zu 50% primären Oberfläche. Button/ToggleButton
– Eigenschaften zum Ändern von Schaltflächenformen wurden hinzugefügt.- Design: Eine Reihe der Standardfarben in
MaterialTheme
wurde aktualisiert, um die Barrierefreiheit zu verbessern, da die Originalfarben nicht genügend Kontrast hatten. Dies führte zu Problemen für Nutzer, Hintergründe für Chips, Karten oder Schaltflächen von der Hintergrundfarbe des Designs zu unterscheiden. InlineSlider/Stepper
: Schaltflächenrollen wurden hinzugefügt, damitTalkback
sie als Schaltflächen erkennt.- Das Gerüst – „
PositionIndicator
“ ist jetzt so positioniert und dimensioniert, dass es nur den benötigten Platz einnimmt. Das ist zum Beispiel nützlich, wenn semantische Informationen hinzugefügt werden, sodass TalkBack jetzt die korrekten Grenzen desPositionIndicator
auf dem Bildschirm erhält. CurvedText/TimeText
:Modifier.scrollAway
wurde hinzugefügt, mit der ein Element basierend auf dem Scrollstatus vertikal ein- oder ausgeblendet wird (mit Überlastungen fürColumn
,LazyColumn
undScalingLazyColumn
).ScrollAway
wird in der Regel verwendet, umTimeText
aus der Ansicht zu scrollen, wenn der Nutzer beginnt, eine Liste von Artikeln nach oben zu scrollen.CurvedText/TimeText
– Unterstützung fürfontFamily
,fontStyle
undfontSynthesis
inCurvedTextStyle
hinzugefügt, nutzbar untercurvedText
undbasicCurvedText
CurvedText/TimeText
–fontWeight
wurde dem Konstruktor und der Kopiermethode fürCurvedTextStyle
hinzugefügtToggleControls
: Animierte Ein/Aus-Schaltflächen fürCheckbox
,Switch
undRadioButton
zur Verwendung mitToggleChip
undSplitToggleChip
wurden hinzugefügt. Diese können anstelle der statischen Symbole vonToggleChipDefaults
(switchIcon
,checkboxIcon
undradioIcon
) verwendet werden.- Platzhalter – Unterstützung für experimentelle Platzhalter hinzugefügt. Es gibt drei verschiedene visuelle Effekte, die ineinandergreifen.
- Erstens ein Platzhalter-Pinseleffekt für den Hintergrund, der in Containern wie Chips und Kacheln verwendet wird, um beim Laden von Inhalten über den normalen Hintergrund zu zeichnen.
- Zweitens:
Modifier.placeholder()
, mit dem ein stadionförmiges Platzhalter-Widget über dem geladenen Inhalt gezeichnet wird. - Drittens ein Modifikatorverlauf/Schimmereffekt (
Modifier.placeholderShimmer()
), der über die anderen Effekte gezogen wird, um Nutzer darauf hinzuweisen, dass auf das Laden von Daten gewartet wird.- Alle diese Effekte wurden so entwickelt, dass sie koordiniert sind und orchestriert werden.
- Core Compose-Abhängigkeiten von Version 1.2 auf 1.3 aktualisiert
API-Änderungen
- Schriftparameter (
fontFamily
,fontWeight
,fontStyle
undfontSynthesis
) können jetzt direkt als Parameter voncurvedText
angegeben werden (Idc422).
Fehlerkorrekturen
curveText
undbasicCurvedText
funktionieren jetzt ordnungsgemäß mit TalkBack, d. h. ihnen ist ein passender Größe und korrekt platzierter (aber leerer) Compose-UI-Knoten zugeordnet, bei dem der Text als Inhaltsbeschreibung verwendet wird. (I7af7c, b/210721259)- Fehlerkorrektur für
Picker
, wennPickerState.repeatedItems = false
eine explizite Einstellung von Parametern für das automatische Zentrieren in der internenScalingLazyColumn
-Auswahl hinzugefügt hat, damit die nullte Option in die Mitte der Ansicht gescrollt werden kann. (I8a4d7)
Version 1.1.0-alpha07
5. Oktober 2022
androidx.wear.compose:compose-foundation:1.1.0-alpha07
, androidx.wear.compose:compose-material:1.1.0-alpha07
und androidx.wear.compose:compose-navigation:1.1.0-alpha07
wurden veröffentlicht. Version 1.1.0-alpha07 enthält diese Commits.
Neue Funktionen
- Es wurden experimentelle Platzhalter unterstützt. Es gibt drei verschiedene visuelle Effekte, die ineinandergreifen. Erstens ein Platzhalter-Pinseleffekt für den Hintergrund, der in Containern wie Chips und Kacheln verwendet wird, um beim Laden von Inhalten über den normalen Hintergrund zu zeichnen. Zweitens:
Modifier.placeholder()
, mit dem ein stadionförmiges Platzhalter-Widget über dem geladenen Inhalt gezeichnet wird. Drittens ein Modifikatorverlauf/Schimmereffekt (Modifier.placeholderShimmer()
), der über die anderen Effekte gezogen wird, um Nutzer darauf hinzuweisen, dass auf das Laden von Daten gewartet wird. Alle diese Effekte wurden so entwickelt, dass sie koordiniert sind und orchestriert werden. (I3c339)
API-Änderungen
- Unterstützung für
fontWeight
,fontFamily
,fontStyle
undfontSynthesis
hinzugefügt inCurvedTextStyle
, nutzbar untercurvedText
undbasicCurvedText
. Diese Parameter können verwendet werden, um die Schriftart und den Stil für den gebogenen Text anzugeben.(Iaa1a8),(I72759) - Der Versatzparameter von
Modifier.scrollAway
wurde aus Konsistenz mitModifier.offset
auf „Dp“ aktualisiert (bisher war dies in Pixeln). Außerdem refaktoriert alsLayoutModifier
für mehr Effizienz. (I9f94b) - Im Rahmen der neuen API für die Ein/Aus-Schaltfläche haben wir
RadioButton’s circleColor
inringColor
umbenannt. (I28fa9) - Wir haben animierte
Checkbox
-,Switch
- undRadioButton
-Ein-/Aus-Schaltflächen fürToggleChip
undSplitToggleChip
hinzugefügt. Diese können anstelle der statischen Symbole vonToggleChipDefaults
(switchIcon
,checkboxIcon
undradioIcon
) verwendet werden. (I8a8c4)
Version 1.1.0-alpha06
21. September 2022
androidx.wear.compose:compose-foundation:1.1.0-alpha06
, androidx.wear.compose:compose-material:1.1.0-alpha06
und androidx.wear.compose:compose-navigation:1.1.0-alpha06
wurden veröffentlicht. Version 1.1.0-alpha06 enthält diese Commits.
Neue Funktionen
- Wir haben
Modifier.scrollAway
hinzugefügt, mit dem ein Element basierend auf dem Scrollstatus vertikal ein- oder ausgeblendet wird (mit Überlastungen fürColumn
,LazyColumn
undScalingLazyColumn
). MitScrollAway
wird in der Regel einTimeText
aus der Ansicht gescrollt, wenn der Nutzer beginnt, eine Liste von Elementen nach oben zu scrollen. (I61766)
Fehlerkorrekturen
PositionIndicator
ist jetzt so positioniert und groß, dass es nur den benötigten Platz einnimmt. Das ist zum Beispiel nützlich, wenn semantische Informationen hinzugefügt werden, sodass TalkBack jetzt die korrekten Grenzen desPositionIndicator
auf dem Bildschirm erhält. (Ie6106, b/244409133)
Version 1.1.0-alpha05
7. September 2022
androidx.wear.compose:compose-foundation:1.1.0-alpha05
, androidx.wear.compose:compose-material:1.1.0-alpha05
und androidx.wear.compose:compose-navigation:1.1.0-alpha05
wurden veröffentlicht. Version 1.1.0-alpha05 enthält diese Commits.
Fehlerkorrekturen
- Schaltflächenrollen wurden
InlineSlider
undStepper
hinzugefügt, damit TalkBack als Schaltflächen erkennt. (Icb46c, b/244260275) - Wir haben die Z-Reihenfolge der Positions- und Seitenindikatoren im Gerüst korrigiert. Die Indikatoren befinden sich jetzt über der Vignette und werden daher nicht von der Vignette verdeckt, sofern sie vorhanden ist. (Ib988f, b/244207528)
Version 1.1.0-alpha04
24. August 2022
androidx.wear.compose:compose-foundation:1.1.0-alpha04
, androidx.wear.compose:compose-material:1.1.0-alpha04
und androidx.wear.compose:compose-navigation:1.1.0-alpha04
wurden veröffentlicht. Version 1.1.0-alpha04 enthält diese Commits.
API-Änderungen
- Wir haben eine Reihe der Standardfarben im MaterialTheme aktualisiert, um die Barrierefreiheit zu verbessern, da die Originalfarben nicht genügend Kontrast hatten, was es Nutzern schwierig machte, Hintergründe für Chips, Karten oder Schaltflächen von der Hintergrundfarbe des Designs zu unterscheiden. Die aktualisierten Farben sind „Surface“ (0xFF202124->0xFF303133), onPrimary(0xFF202124->0xFF303133), onPrimary(0xFF202124->0xFF303133), primaryVariant(0xFF669DF6->0xFF8AB4F0x2). Die relativ geringfügigen Änderungen der Farben können sich jedoch auf vorhandene Screenshot-Tests auswirken. (81ab09)
Fehlerkorrekturen
- Beheben Sie einen Logikfehler in
ScalingLazyColumn
, der dazu führen konnte, dass Listen mit einer kleinen Anzahl von Listenelementen (normalerweise genau zwei) die Initialisierung nicht abschließen und daher transparent sind. (504347)
Version 1.1.0-alpha03
10. August 2022
androidx.wear.compose:compose-foundation:1.1.0-alpha03
, androidx.wear.compose:compose-material:1.1.0-alpha03
und androidx.wear.compose:compose-navigation:1.1.0-alpha03
wurden veröffentlicht. Version 1.1.0-alpha03 enthält diese Commits.
Neue Funktionen
- Wir haben einen neuen umrissenen Stil für
Chips
undButtons
sowie die neuen zusammensetzbaren FunktionenOutlinedChip
undOutlinedButton
hinzugefügt, die eine transparenteChip/Button
mit dünnem Rahmen bieten. (ID5972)
API-Änderungen
- Überladungen für das Ändern von Schaltflächenformen hinzugefügt (Icccde)
Fehlerkorrekturen
- Wir haben die Größe des Steuerelementbereichs für die Ein/Aus-Schaltfläche von
ToggleChip
korrigiert, da er nicht der UX-Spezifikation entsprach. Die UX-Spezifikationen erfordern einen 4 dp-Abstand zwischen dem Label und einem 24 x 24 dp großen Steuersymbolbereich mit einer Gesamtbreite von 28 dp. Die Implementierung gibt jedoch fälschlicherweise den 36x24.dp-Steuerbereich für die Ein/Aus-Schaltfläche aus. Dies führt dazu, dass 8 dp des nutzbaren Textlabel-Bereichs wegfallen. HINWEIS: Durch diese Fehlerkorrektur erhält das Textlabel mehr Platz, was sich (positiv) auf das Textlayout für überlaufenden Text auswirken kann. Wenn du Screenshot-Tests mitToggleChips
hast, müssen diese möglicherweise aktualisiert werden. (I514c8, b/240548670)
Version 1.1.0-alpha02
27. Juli 2022
androidx.wear.compose:compose-foundation:1.1.0-alpha02
, androidx.wear.compose:compose-material:1.1.0-alpha02
und androidx.wear.compose:compose-navigation:1.1.0-alpha02
wurden veröffentlicht. Version 1.1.0-alpha02 enthält diese Commits.
Neue Funktionen
- Wir haben die Abhängigkeiten von Compose für Wear OS von 1.2.0 auf 1.3.0-alpha0X von Compose-Bibliotheken geändert
API-Änderungen
- Überladungen für das Bearbeiten von Chipformen hinzugefügt (I02e87)
Fehlerkorrekturen
- Wir haben die Sichtbarkeit der Vignettierung beim Ein-/Ausblenden des Dialogfelds animiert, um der vorhandenen Skalierungsanimation zu entsprechen. (Ida33e)
- Wir haben einen Fehler behoben, bei dem eine Division durch Null bei einem Wechselverhalten beim Scrollen auftreten konnte. (I86cb6)
- Ein Fehler in
ChipDefaults.childChipColor()
wurde behoben, durch den die deaktivierte Hintergrundfarbe vollständig transparent war. (I2b3c3, b/238057342)
Version 1.1.0-alpha01
29. Juni 2022
androidx.wear.compose:compose-foundation:1.1.0-alpha01
, androidx.wear.compose:compose-material:1.1.0-alpha01
und androidx.wear.compose:compose-navigation:1.1.0-alpha01
wurden veröffentlicht. Version 1.1.0-alpha01 enthält diese Commits.
API-Änderungen
- Der
contentDescription
-Parameter des Pickers wird jetzt nur für die ausgewählte Auswahloption verwendet. Er verwendet einen String, für den Nullwerte zulässig sind. Bisher musste eine Zuordnung von der Option zur Inhaltsbeschreibung übergeben werden, aber nur die ausgewählte Option wurde verwendet. (Ife6a7) - Wir haben die Barrierefreiheit der Auswahl so verbessert, dass mehrere Auswahlbildschirme mit Screenreadern navigierbar sind und die Inhaltsbeschreibung barrierefrei ist (I64edb).
Fehlerkorrekturen
- Wir haben die Basisprofilregeln aktualisiert, die im Paket mit der Wear Compose-Bibliothek enthalten sind (I9c694).
- Wir haben die Richtung des Farbverlaufs für Chips im Modus von rechts nach links korrigiert. War oben links->unten rechts, ist jetzt oben rechts->unten links. (Ic2e77)
- Wir haben die Standardverläufe für
Chip/ToggleChip/Card
aktualisiert, damit sie den neuesten UX-Spezifikationen entsprechen.ChipDefaults.gradientBackgroundChipColors
wurde aktualisiert und beginnt nun bei 50% der Primärversion statt bei 32,5%.CardDefaults.cardBackgroundPainter
wurde so aktualisiert, dass es bei 30% der primären Kampagne beginnt und bei 20% vononSurfaceVariant
endet (zuvor 20% bis 10%onSurfaceVariant
).ToggleChip.toggleChipColors
ändert sich von einem linearen Farbverlauf von 75% Oberfläche zu 32,5% primärem zu 0% primären zu 50% primären Oberfläche. (I43bbd) - Wir haben hinter
Chip/ToggleChips
eine Hintergrundfarbe (MaterialTheme.color.surface
) mit Farbverlauf hinzugefügt, damit sie auch in dem unwahrscheinlichen Fall, dass eine helle Farbe verwendet wird, gut sichtbar sind. (Ibe1a4, b/235937657) - Auswahlelemente sind jetzt immer zentriert ausgerichtet. Das Beheben eines Fehlers beim Festlegen von
gradientRatio
auf null hatte zur Folge, dass sich die Ausrichtung änderte. (I712b8)
Version 1.0
Version 1.0.2
7. September 2022
androidx.wear.compose:compose-foundation:1.0.2
, androidx.wear.compose:compose-material:1.0.2
und androidx.wear.compose:compose-navigation:1.0.2
wurden veröffentlicht. Version 1.0.2 enthält diese Commits.
Fehlerkorrekturen
- Wir haben die Z-Reihenfolge der Positions- und Seitenindikatoren im Gerüst korrigiert. Die Indikatoren befinden sich jetzt über der Vignette und werden daher nicht von der Vignette verdeckt, sofern sie vorhanden ist. (Ib988f, b/244207528)
Version 1.0.1
24. August 2022
androidx.wear.compose:compose-foundation:1.0.1
, androidx.wear.compose:compose-material:1.0.1
und androidx.wear.compose:compose-navigation:1.0.1
wurden veröffentlicht. Version 1.0.1 enthält diese Commits.
Fehlerkorrekturen
- Beheben Sie einen Logikfehler in
ScalingLazyColumn
, der dazu führen konnte, dass Listen mit einer kleinen Anzahl von Listenelementen (normalerweise genau zwei) die Initialisierung nicht abschließen und daher transparent sind. (076c61)
Version 1.0.0
27. Juli 2022
androidx.wear.compose:compose-foundation:1.0.0
, androidx.wear.compose:compose-material:1.0.0
und androidx.wear.compose:compose-navigation:1.0.0
wurden veröffentlicht. Version 1.0.0 enthält diese Commits.
Hauptfunktionen von Version 1.0.0
- Dies ist die erste stabile Version von Compose für Wear OS (weitere Informationen).
- Compose für Wear OS baut auf den zentralen Compose-Bibliotheken auf und bietet zusätzliche Wearable-spezifische Komponenten und gegebenenfalls alternative Implementierungen zentraler Compose-Komponenten, die auf Wearable-Geräte zugeschnitten sind.
- Eine Liste der Hauptkomponenten von Wear Compose finden Sie in den Versionshinweisen für Compose for Wear OS Beta01.
Fehlerkorrekturen
- Wir haben die Sichtbarkeit der Vignettierung beim Ein-/Ausblenden des Dialogfelds animiert, um der vorhandenen Skalierungsanimation zu entsprechen. (Ida33e)
- Wir haben einen Fehler behoben, bei dem eine Division durch Null bei einem Wechselverhalten beim Scrollen auftreten konnte. (I86cb6)
- Ein Fehler in
ChipDefaults.childChipColor()
wurde behoben, durch den die deaktivierte Hintergrundfarbe vollständig transparent war. (I2b3c3, b/238057342)
Version 1.0.0-rc02
22. Juni 2022
androidx.wear.compose:compose-foundation:1.0.0-rc02
, androidx.wear.compose:compose-material:1.0.0-rc02
und androidx.wear.compose:compose-navigation:1.0.0-rc02
wurden veröffentlicht. Version 1.0.0-rc02 enthält diese Commits.
Fehlerkorrekturen
- Wir haben die Richtung des Farbverlaufs für Karten im RTL-Modus (rechts nach links) korrigiert. Es war oben links->unten rechts und jetzt oben rechts->unten links. (Ic2e77)
- Wir haben die Standardverläufe für
Chip/ToggleChip/Card
aktualisiert, damit sie den neuesten UX-Spezifikationen entsprechen.ChipDefaults.gradientBackgroundChipColors
wurde aktualisiert und beginnt nun bei 50% der Primärversion statt bei 32,5%.CardDefaults.cardBackgroundPainter
wurde aktualisiert und beginnt nun bei 30% der primären Variante und endet bei 20% vononSurfaceVariant
(zuvor 20% bis 10% auf der Oberfläche).ToggleChip.toggleChipColors
ändert sich von einem linearen Farbverlauf von 75% der Oberfläche zu einer 32,5% primären Oberfläche zu einer 0% primären Oberfläche zu 50% der primären Oberfläche. (I43bbd) - Wir haben hinter
Chip/ToggleChips
eine Hintergrundfarbe (MaterialTheme.color.surface
) mit Farbverlauf hinzugefügt, damit sie auch in dem unwahrscheinlichen Fall, dass eine helle Farbe verwendet wird, gut sichtbar sind. (Ibe1a4, b/235937657) - Wir haben die Basisprofilregeln aktualisiert, die im Paket mit der Wear Compose-Bibliothek enthalten sind (I9c694).
Version 1.0.0-rc01
15. Juni 2022
androidx.wear.compose:compose-foundation:1.0.0-rc01
, androidx.wear.compose:compose-material:1.0.0-rc01
und androidx.wear.compose:compose-navigation:1.0.0-rc01
wurden veröffentlicht. Version 1.0.0-rc01 enthält diese Commits.
API-Änderungen
- Schnittstellen in Erstellungsbibliotheken werden jetzt mit jdk8-Standardschnittstellenmethoden erstellt (I5bcf1).
Fehlerkorrekturen
- Wir haben den expliziten Aufruf von
fillMaxWidth()
für den Listenheader entfernt, da er nicht erforderlich ist. Dies kann zu Problemen führen, wenn eineScalinglazyColumn
aus einer Mischung ausListHeader()
- undChip()
-Komponenten besteht, da die Breite tendenziell größer oder kleiner wird, wennListHeader
-Elemente aus der Ansicht herausgescrollt werden. (I37144, b/235074035) - Wir haben einen Fehler im
ScalingLazyColumn
behoben, der dazu führen konnte, dass die Listenelemente erst nach dem Scrollen korrekt gezeichnet werden, wenn das 0. Listenelement groß genug war (einschließlich Abstände). (Ic6159, b/234328517) - Wir haben das Easing „
ScalingLazyColumn
“ geringfügig angepasst, da Elemente den Bildschirmrand erreichen und den Aktualisierungen der UX-Spezifikation entsprechen. Alte 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 dasscalingParams
vonScalingLazyColumn
(Ie375c) überschreiben. - Wir haben für das Element „
CompactChip
“ einen Abstand hinzugefügt, damit die Größe des Berührungszielbereichs von mindestens 48 dp gemäß den Richtlinien für Bedienungshilfen von Material erfüllt ist. Dies kann sich auf alle Layouts auswirken, die Sie mitCompactChips
verwenden, da diese zusätzlichen Speicherplatz belegen. (I3d57c)
Version 1.0.0-beta03
1. Juni 2022
androidx.wear.compose:compose-foundation:1.0.0-beta03
, androidx.wear.compose:compose-material:1.0.0-beta03
und androidx.wear.compose:compose-navigation:1.0.0-beta03
wurden veröffentlicht. Version 1.0.0-beta03 enthält diese Commits.
Neue Funktionen
ScalingLazyColumn
funktioniert jetzt im Modus@Preview
zum Schreiben. (I3b3b6, b/232947354)
API-Änderungen
- Wir haben den Standardwert für die Eigenschaft
ScalingLazyColumn.horizontalAlignment
von „Start“ in „CenterHorizontally
“ geändert. Damit wird sichergestellt, dass Listenelemente, die nicht die gesamte Breite der Spalte ausfüllen, im Sinne einer bestmöglichen Sichtbarkeit aufeinander ausgerichtet werden. Wenn Sie zum vorherigen Verhalten zurückkehren möchten, legen SiehorizontalAlignment = Alignment.Start
fest.(I9ed4b)
Bekannte Probleme
- Die Tipp-/Berührungshöhe von CompactChip ist kleiner als die Vorgaben für Bedienungshilfen (Material). Dieses Problem wird in der nächsten Version (15. Juni) korrigiert. Wenn du CompactChip verwendest, wirkt sich dies auf deine Layouts aus, da CompactChips jetzt einen zusätzlichen Abstand darüber und darunter haben. Passen Sie Ihre Layouts an und testen Sie sie oder sehen Sie sich die Fehlerkommentare an, um eine Behelfslösung zur Verwendung des vorhandenen Verhaltens zu erhalten. (b/234332135)
Fehlerkorrekturen
- Neue Demo zum Animieren des Hinzufügens oder Entfernens eines Starttexts auf einem
TimeText
. (I16d75) - Tests für
HorizontalPageIndicator.PagesState
(I64ed0) hinzufügen TimeText
wird näher an die UX-Spezifikationen angepasst (Ib7ea1)
Version 1.0.0-beta02
18. Mai 2022
androidx.wear.compose:compose-foundation:1.0.0-beta02
, androidx.wear.compose:compose-material:1.0.0-beta02
und androidx.wear.compose:compose-navigation:1.0.0-beta02
wurden veröffentlicht. Version 1.0.0-beta02 enthält diese Commits.
Neue Funktionen
- Die Auswahl reagiert jetzt immer auf Scroll-Ereignisse, auch im Lesemodus. So müssen Nutzer nicht erst eine Auswahl durch Tippen auswählen, bevor sie scrollen können. Im Lesemodus werden andere Optionen als die aktuell ausgewählten durch einen Shim in
gradientColor
verdeckt. (I72925) - Wir haben das UX-Verhalten von
Chip/ToggleChip/CompactChip/SplitToggleChip
geändert, damit sie nicht mehr standardmäßigfillMaxWidth
ausführen. Stattdessen passen sie sich an ihre Inhalte an. Um das vorherige Verhalten beizubehalten, fügen Sie einfachmodifier = Modifier.fillMaxWidth()
(I60a2c, b/232206371) hinzu.
Fehlerkorrekturen
- Der
CurvedTextStyle
-Konstruktor, der einenTextStyle
verwendet, berücksichtigt jetzt auch dasfontWeight
. Dies kann in zukünftigen Versionen der API dem Konstruktor und den Kopiermethoden hinzugefügt werden (Ieebb9). - Verbesserungen beim Wischen am Rand. Wenn
Modifier.edgeSwipeToDismiss
verwendet wird und ein Wischen vom Randbereich nach links ausgelöst wird, wird kein Wischen zum Schließen mehr ausgelöst, wenn sich die Wischrichtung nach rechts ändert. Bisher war es möglich, die Funktion zum Schließen durch Wischen nach links und dann nach rechts auszulösen.(I916ea) - In
HorizontalPageIndicator
werden jetzt bis zu 6 Seiten auf dem Bildschirm angezeigt. Wenn es insgesamt mehr als sechs Seiten gibt, wird links oder rechts ein Indikator in halber Größe mit einem sanften Übergang zwischen den Seiten angezeigt.(I2ac29) - Das standardmäßige Andockverhalten bei
ScalingLazyColumn
undPicker
wurde verbessert (I49539). - Verbesserungen beim Wischen am Rand. Wenn
Modifier.edgeSwipeToDismiss
verwendet wird, wird die Wischgeste zum Schließen nur ausgelöst, wenn die erste Berührung am Rand landet und nach rechts gewischt wird. Bisher war es möglich, durch Wischen von einem beliebigen Teil des Bildschirms zum Schließen zu wischen, wenn ein Scrollen den Anfang erreicht hat.(I8ca2a)
Version 1.0.0-beta01
11. Mai 2022
androidx.wear.compose:compose-foundation:1.0.0-beta01
, androidx.wear.compose:compose-material:1.0.0-beta01
und androidx.wear.compose:compose-navigation:1.0.0-beta01
wurden veröffentlicht. Version 1.0.0-beta01 enthält diese Commits.
Funktionen der Funktion „Compose“ für Wear OS 1.0
Die 1.0.0-beta01
von Compose für Wear OS markiert einen wichtigen Meilenstein, da die Funktionen der Mediathek vollständig sind und die API gesperrt ist.
Zu den Wear Compose Material-Komponenten in Version 1.0 gehören:
- Material Design: Es wird als Ersatz für „Compose for Mobile“
MaterialTheme
verwendet und bietet Farben, Formen und Typografie für Bauteile auf Wearables, die die UX-Richtlinien für Wear Material Design implementieren. Button
,CompactButton
undToggleButton
– für die Schaltfläche steht nur ein Platz für ein Symbol, ein Bild oder einen kurzen Text (maximal 3 Zeichen) zur Verfügung. Kreisförmig mit den empfohlenen Größen für Standard-, große oder kleine Schaltflächen.CompactButton
bietet einen einzelnen Slot für beliebige Inhalte (Symbol, Bild oder Text) und ist kreisförmig mit einer sehr kleinen Hintergrundgröße.CompactButton
hat einen optionalen transparenten Rahmen um den Hintergrund, der den anklickbaren Bereich vergrößert.ToggleButton
ist eine Schaltfläche, über die in einem einzelnen Bereich beliebige Inhalte (kurzer Text, Symbol oder Bild) ausgewählt werden können. Der Status „Ein/Aus“ (aktiviert/deaktiviert) ist farbig und mit unterschiedlichen Symbolen, ob aktiviert oder deaktiviert ist.- Karten - zur Anzeige von Informationen zu Anwendungen, wie z. B. Benachrichtigungen. Flexibles Design für verschiedene Anwendungsfälle mit
AppCard
undTitleCard
, das unterschiedliche Layouts und Unterstützung für Bilder als Karteninhalte oder Hintergründe bietet. - Chips - stadionförmige Komponenten ähnlich wie Schaltflächen, aber mit einem größeren Bereich und mehreren Schlitzen für Beschriftungen, sekundäre Beschriftungen und Symbole. In verschiedenen Größen und mit Unterstützung von Bildern als Hintergründe
- SwitchChips und SplitToggleChips – ein Chip mit einem aktivierten/nicht aktivierten Status und einem zusätzlichen
ToggleControl
-Slot, um ein Symbol wie einen Schalter oder ein Optionsfeld anzuzeigen, um den Status der Komponente anzuzeigen. Außerdem hat derSplitToggleChip
zwei antippbare Bereiche: einen anklickbaren und einen ein-/ausschaltbaren Bereich. - CircularProgressIndicator – Fortschrittsanzeige für Wear-Material mit zwei Varianten. Die erste drückt den Anteil des Abschlusses einer laufenden Aufgabe aus und unterstützt eine Lücke in der kreisförmigen Spur zwischen Start- und Endwinkel. Die zweite gibt einen unbestimmten Fortschritt für eine nicht angegebene Wartezeit an.
- CurdText: ist Teil der DSL zur Beschreibung von
CurvedLayouts
, zusammen mitcurvedRow
undcurvedColumn
, um Komponenten um kreisförmige Geräte herum anzuordnen. Weitere Informationen zuCurvedLayout
undCurvedModifier
finden Sie unten im Abschnitt „Wear Component Foundation“. Diese Funktion hat eine ähnliche Rolle wie Modifikatoren in der nicht gekrümmten Welt und ermöglicht die Konfiguration verschiedener Aspekte von Layout, Padding, Farbverläufen usw. - Dialogfeld, Benachrichtigung und Bestätigung: Ein Dialogfeld im Vollbildmodus wird über andere Inhalte gelegt und unterstützt das Schließen durch Wischen. Sie belegt einen einzelnen Slot, bei dem es sich voraussichtlich um spezielle Wear-Material-Dialoginhalte wie „Warnung“ oder „Bestätigung“ handelt. Die Benachrichtigung ist ein vorgegebener Dialoginhalt mit Platz für Symbol, Titel und Nachricht. Es weist entweder eine Überlastung von zwei Plus- und Negativschaltflächen auf, die nebeneinander angezeigt werden, oder einem Schlitz für einen oder mehrere vertikal übereinander gestapelte Chips. Bei der Bestätigung handelt es sich um vorgegebene Dialoginhalte, die eine Nachricht für einen bestimmten Zeitraum anzeigen. Sie hat eine Fläche für ein Symbol oder Bild (das könnte animiert sein).
- HorizontalPageIndicator: Zeigt die horizontale Seitenposition in einer Form, die dem Wearable-Formfaktor entspricht. Die Smartwatch nimmt den Vollbildmodus ein und zeigt auf runden Geräten eine gebogene Anzeige. Kann mit der Anzeige der Seite „Begleitenden“ verwendet werden.
- Symbol: Eine Wear-Implementierung von Symbol, die Farbe und Alpha aus dem Wear Material-Design übernimmt. Ein anklickbares Symbol findest du unter Schaltfläche oder Chip.
- Auswahl: zeigt eine scrollbare Liste von Elementen an, aus der eine Auswahl getroffen werden kann. Standardmäßig werden Elemente unbegrenzt in beide Richtungen wiederholt. Kann im Lesemodus angezeigt werden, um nicht ausgewählte Optionen auszublenden.
- PositionIndicator - zeigt die Scroll-Position oder andere Positionshinweise in einer Form, die dem Wearable-Formfaktor entspricht. Die Smartwatch nimmt den ganzen Bildschirm ein. Auf runden Geräten wird eine gekrümmte Anzeige angezeigt.
- Gerüst: Implementiert die grundlegende visuelle Layoutstruktur von Wear Material Design. Diese Komponente bietet eine API, mit der mehrere Wear Material-Komponenten (z. B.
TimeText
,PositionIndicator
undVignette
) für die Bildschirmkonstruktion zusammengestellt werden. Dabei wird eine geeignete Layoutstrategie gewährleistet und die erforderlichen Daten erfasst, damit diese Komponenten einwandfrei zusammenwirken. - ScalingLazyColumn – eine scrollbare Skalierungs-/Fischaugenlistenkomponente, die ein wichtiger Bestandteil der Wear Material Design-Sprache ist. Bietet Skalierungs- und Transparenzeffekte für die Inhaltselemente.
ScalingLazyColumn
ist darauf ausgelegt, eine potenziell große Anzahl von Inhaltselementen zu verarbeiten, die nur bei Bedarf materialisiert und zusammengestellt werden. - Schieberegler - ermöglicht Nutzern, eine Auswahl aus einem Wertebereich zu treffen. Der Auswahlbereich wird als Balken dargestellt, der optional mit Trennzeichen angezeigt werden kann.
- Stepper: Eine Vollbildkomponente, mit der Nutzer über die Schaltflächen zum Erhöhen und Verringern oben und unten auf dem Bildschirm eine Auswahl aus einem Bereich von Werten treffen können, wobei in der Mitte ein Platz für Text oder einen Chip vorhanden ist.
- SwipeToDismissBox - steuert die Wischgeste zum Schließen. Für den Hintergrund, der nur während der Wischgeste angezeigt wird, und für den Inhalt im Vordergrund wird ein einziger Bereich benötigt. Kann optional mit der Androidx-Navigationsbibliothek mithilfe von
SwipeDismissableNavHost
kombiniert werden (siehe Wear Compose-Navigationsbibliothek unten). - Text: Eine Wear-Implementierung der Komponente zum Schreiben von Material Text, bei der Farbe und Alpha aus dem Wear-Material-Design übernommen werden.
- TimeText - eine Komponente zur Anzeige der Uhrzeit und des Anwendungsstatus oben auf dem Bildschirm. Passt sich durch Verwendung von gebogenem Text auf runden Displays an die Bildschirmform an.
Vignettierung – eine Bildschirmbearbeitung für das Gerüst, bei der der obere und untere Bereich des Bildschirms unkenntlich gemacht wird, wenn scrollbarer Content verwendet wird.
Die Wear Compose Foundation enthält außerdem die folgenden Komponenten:
CurvedLayout – Wear Foundation
CurvedLayout
ist eine zusammensetzbare Layoutoption, bei der die untergeordneten Elemente in einem Bogen platziert und nach Bedarf gedreht werden. Dies ähnelt einem Zeilenlayout, das zu einem Kreisringsegment gebogen ist. Beachte, dass der Inhalt einerCurvedLayout
keine zusammensetzbare Lambda-Funktion ist, sondern eine DSL (domainspezifische Sprache). Alle Elemente in der DSL von CurvedLayout unterstützen einen optionalen Modifikatorparameter, der ausCurvedModifier
erstellt wurde.„basicCurvedText“ – ein Element in der
CurvedLayout
-DSL,basicCurvedText
ermöglicht es Entwicklern, auf einfache Weise gebogenen Text zu schreiben, der der Krümmung eines Kreises folgt (normalerweise am Rand eines runden Bildschirms).basicCurvedText
kann nur innerhalb vonCurvedLayout
erstellt werden, um eine optimale Leistung zu gewährleisten, wie etwa die Möglichkeit, die Positionierung anzugeben, und die Verwendung vonCurvedModifiers
. In den meisten Fällen sollte stattdessen „kurventext“ verwendet werden, da hier Material-Design verwendet wird.CurdComposable: umschließt normalen zusammensetzbaren Inhalt, sodass er mit
CurvedLayout
verwendet werden kann. WenncurvedComposable
mehrere Elemente enthält, werden diese übereinander gezeichnet (wie ein Kasten). Wenn Sie mehrere zusammensetzbare Funktionen entlang einer Kurve platzieren möchten, umschließen Sie diese jeweils mitcurvedComposable
.CurdRow und CurdColumn – ähnlich wie Zeile und Spalte können
curvedRow
undcurvedColumn
in einemCurvedLayout
verschachtelt werden, um Elemente nach Bedarf anzuordnen. Für eincurvedRow
können die Winkellayoutrichtung und radiale Ausrichtung angegeben werden. Für eincurvedColumn
können die Winkelausrichtung und die Radialrichtung angegeben werden.CurvedModifier: Alle gebogenen Komponenten akzeptieren einen Modifikatorparameter, der mit
CurvedModifier
erstellt werden kann: Hintergrund, Größe, Gewichtung und Abstände werden unterstützt.Die folgende Komponente ist auch in der Wear Compose-Navigation enthalten:
SwipeDismissableNavHost - stellt einen Platz in der Compose-Hierarchie zur Verfügung, an dem eine eigenständige Navigation erfolgen kann. Eine Rückwärtsnavigation wird durch eine Wischgeste ermöglicht. Inhalte werden in einem
SwipeToDismissBox
mit der aktuellen Navigationsebene angezeigt. Wenn Sie zum Schließen wischen, wird gegebenenfalls die vorherige Navigationsebene im Hintergrund angezeigt.In den vorherigen Versionshinweisen für die verschiedenen Alphaversionen finden Sie weitere Informationen dazu.
API-Änderungen
CurvedModifier.padding*
-Funktionen wurden hinzugefügt. Sie werden verwendet, um zusätzlichen Abstand um eine gebogene Komponente herum anzugeben. (I4dbb4)CompositionLocal
interne Klasse wurde entfernt (I42490)- Zur Orientierung haben wir konstante Werte für die Symbolgrößen
Button
,CompactButton
undToggleButton
hinzugefügt. (I57cab) - Aktivierten Parameter zu
AppCard
undTitleCard
hinzufügen. Jetzt haben sie eine ähnliche API wieandroidx.compose.material
-Karten. Ist der Parameter auf „false“ gesetzt, kann die Karte nicht angeklickt werden. (Idc48d, b/228869805)
Fehlerkorrekturen
- Der Stepper deaktiviert jetzt die Schaltflächen zum Verringern und Erhöhen, wenn die Unter-/Obergrenze erreicht ist, und wendet ContentAlpha.disable auf iconColor an (I4be9f).
- Wir haben einen Abstand von 1 dp um Picker-Inhalte hinzugefügt, wenn sie mit einem Farbverlauf gezeichnet werden, um Bildsprünge beim Wischen zu vermeiden. (I0b7b9)
- Screenshottests für
PositionIndicator
hinzufügen (I5e8bc) - Weitere Tests für
AppCard
undTitleCard
hinzufügen (I85391, b/228869805)
Version 1.0.0-alpha21
20. April 2022
androidx.wear.compose:compose-foundation:1.0.0-alpha21
, androidx.wear.compose:compose-material:1.0.0-alpha21
und androidx.wear.compose:compose-navigation:1.0.0-alpha21
wurden veröffentlicht. Version 1.0.0-alpha21 enthält diese Commits.
Neue Funktionen
- Neue Modifikatoren für gebogene Elemente hinzugefügt, um den Hintergrund eines gebogenen Elements anzugeben:
CurvedModifier.background
,.radialGradientBackground
und.angularGradientBackground
(I8f392) - Angabe des Überlaufmodus für gebogenen Text (Clip/Ellipsen/sichtbar) zulassen. (I8e7aa)
- Es wurde ein
CurvedModifier.weight
-Modifikator hinzugefügt, der dem in „Schreiben“ ähnelt. Dies kann für die untergeordneten Elemente von CurvedLayout (für die Breite) und für untergeordnete Elemente von CurvedColumn (für die Höhe) verwendet werden. (I8abbd) - Die Modifikatoren
CurvedModifier.size
,.angularSize
und.radialSize
wurden hinzugefügt, um die Größe eines gebogenen Elements anzugeben. (I623c7)
API-Änderungen
- Ordnen Sie die Parameter in der Wear Compose API neu an, damit der Hintergrund und die Farbe einheitlich sind (I43208).
- Im Uhrzeigersinn entfernt und
insideOut
-Parameter und in neuen Klassen durch ausdrucksstärkere Konstanten ersetzt. Die Ausrichtungsrichtung für das gebogene Layout kann jetztLayoutDirection
erkannt und übernommen werden, wenn keine Angabe erfolgt (If0e6a). - Wir haben
autoCenter: Boolean
durchautoCenter: AutoCentringParams
ersetzt, um ein API-Problem mitScalingLazyColumn
zu beheben. (Ia9c90) - Wir haben
iconTintColor
undtoggleControlTintColor
in der gesamten API (Chip/ToggleChip/Dialog/Slider/Stepper/...) iniconColor
undtoggleControlColor
umbenannt, da die Farbe auf den Slot „icon/toggleControl“ angewendet wird. (ID 238) PageIndicatorStyle
-Enum in Wertklasse (I2dc72) umschreiben- Wir haben einigen Plätzen in unseren Composables
RowScope/ColumnScope/BoxScope
hinzugefügt, um Entwicklern zu zeigen, von welchen Annahmen das Layout ausgegangen wird. Auf diese Weise können Entwickler zusätzliche Modifikatoren für einige Slot-Inhalte verwenden und vermeiden, dass zusätzliche Layoutelemente bereitgestellt werden müssen. Außerdem haben wir einige kleinere Aktualisierungen an den Farben der AppCard bzw. der Titelkarte vorgenommen, sodasstimeColor
undappColor
standardmäßig aufcontentColor
festgelegt sind. Diese Eigenschaften können bei Bedarf trotzdem alle einzeln überschrieben werden. (I26b59) SwipeToDismissBoxState.Companion
Objekt wurde als privat gekennzeichnet (I39e84)- Korrigieren Sie die Reihenfolge der Parameter für
InlineSlider
undStepper
. Einfache Änderung zur Einhaltung der API-Richtlinien (I11fec) - Wir haben das Saver-Objekt für
SwipeToDismissBoxState
entfernt, da es nicht verwendet wurde. (Ifb54e) - Wir haben
CompactChip
aktualisiert, um sie an die neueste UX-Spezifikation anzupassen. Der Abstand wurde auf horizontal = 12.dp und vertikal = 0.dp reduziert. Die Schriftart für das Label wurde von "Schaltfläche" zu "Untertitel1" geändert. Die empfohlenen Symbolgrößen sind 20 x 20, wenn sowohl das Symbol als auch das Label vorhanden sind, und 24 x 24 für einen kompakten Symbolchip. Für den Anwendungsfall „Nur Symbol“ wurde außerdem sichergestellt, dass das Symbol zentriert ist. (IEa2be) - Wir haben
ScalingLazyListLayoutInfo
einige neue Felder hinzugefügt, damit Entwickler sehen können, wie vielcontentPadding
undautoCenteringPadding
bereits angewendet wurden. Diese können für Entwickler bei der Berechnung von Fling/Scrollen nützlich sein (I7577b). - Wir haben In-/Out-Übergänge für Dialog implementiert. Der Parameter
showDialog
wurde hinzugefügt und das Dialogfeld steuert jetzt seine eigene Sichtbarkeit. Dadurch kann Dialog die Intro- und Outro-Animationen ausführen, wenn das Dialogfeld angezeigt/ausgeblendet wird. Die Outro-Animation wird nicht ausgeführt, wenn der Nutzer das Dialogfeld durch Wischen zum Schließen verlässt. Wir haben auch einen Standardwert für den Status in der kürzlich hinzugefügtenSwipeToDismissBox
-Überlastung hinzugefügt. (I682a0) - Zur besseren Unterstützung von i18n und a11y haben wir
ToggleChip
undSplitToggleChip
geändert, sodass sie keine Standardeinstellungen für den SlottoggleControl
mehr haben. Außerdem haben wirToggleChipDefaults
geändert, sodass die folgenden Methoden jetzt ImageVector anstelle von Symbol zurückgeben (beachten Sie, dass sie nicht mehr @Composables zurückgeben, sondern mit Kleinbuchstaben beginnen),SwitchIcon()->switchIcon()
,CheckboxIcon->checkboxIcon()
undRadioIcon()->radioIcon()
. Dies ermöglicht und ermutigt Entwickler, ihre eigenenIcon()
-Komponierbaren mit einem geeignetencontentDescription
-Satz zu erstellen. (I5bb5b) - Wir haben einen
SwipeDismissableNavHostState
-Parameter zuSwipeDismissableNavHost
hinzugefügt. Dies unterstützt die Verwendung von Kantenwischen auf Bildschirmen, die als Navigationsziele verwendet werden, daSwipeToDismissBoxState
jetzt hochgezogen und verwendet werden kann, um sowohlSwipeDismissableNavHostState
als auchModifier.edgeSwipeToDismiss
auf Bildschirmen zu initialisieren, die ein Edge-Wischen erfordern. (I819f5, b/228336555)
Fehlerkorrekturen
- Geschwungene Layouts sollten bei Bedarf aktualisiert werden. (Ie8bfa, b/229079150)
- Fehlerkorrektur für https://issuetracker.google.com/issues/226648931 (Ia0a0a, b/226648931)
- Unnötige experimentelle Anmerkungen entfernt (I88d7e)
Version 1.0.0-alpha20
6. April 2022
androidx.wear.compose:compose-foundation:1.0.0-alpha20
, androidx.wear.compose:compose-material:1.0.0-alpha20
und androidx.wear.compose:compose-navigation:1.0.0-alpha20
wurden veröffentlicht. Version 1.0.0-alpha20 enthält diese Commits.
Neue Funktionen
- Fügen Sie
edgeSwipeToDismiss
-Modifikator fürSwipeToDismiss
hinzu.swipeToDismiss
darf nur am linken Rand des Darstellungsbereichs aktiv sein. Wird verwendet, wenn die Mitte des Bildschirms horizontales Paging unterstützen muss, z. B. das 2-D-Scrollen einer Karte oder horizontales Wischen zwischen Seiten.(I3fcec, b/200699800)
API-Änderungen
- Grundlegende Implementierung von
CurvedModifiers
. Dies eröffnet Möglichkeiten zur Anpassung von gebogenen Inhalten. Es gibt jedoch noch keineCurvedModifiers
und es ist möglich, später benutzerdefinierte Modifikatoren zu erstellen. (I9b8df) EdgeSwipe
Aktualisierung der Dokumentation zu Modifikatoren und der Standardwerte (I6d00d) zum besseren VerständnisPageIndicator
Slot in Scaffold hinzufügen. Wenn SiePageIndicator
direkt zu Scaffold hinzufügen, können wir dafür sorgen, dass es auf kreisförmigen Geräten korrekt angezeigt wird. (Ia6042)- Entfernen Sie die Standardsymbole aus den Parametern
InlineSlider
und Stepper. So können Entwickler auf die Anforderungen an Lokalisierung und Barrierefreiheit achten. In Demos und Beispielen wurde die Verwendung von Standardsymbolen gezeigt. (I7e6fd) - Nachgestellte und führende Parameternamen durch Start und Ende in TimeText ersetzen (Iaac32)
- Wir haben eine
SwipeToDismissBox
-Überlastung mit einemonDismissed
-Parameter hinzugefügt, um zu unterstützen, dass häufig ein Navigationsereignis ausgelöst wird, wenn die Wischgeste abgeschlossen ist. (I50353, b/226565726) ExperimentalWearMaterialApi
-Anmerkungen aus derTimeText
-Nutzung entfernt (Ide520)- Wir haben
ScalingLazyList/Column
Bereichs- und Informationsschnittstellen als versiegelt gekennzeichnet, da sie nicht für externe Entwickler gedacht sind. So können wir in Zukunft neue Mitglieder hinzufügen, ohne Änderungen an Binärprogrammen vornehmen zu müssen. (I7d99f) - Wir haben der Auswahl eine neue
flingBehaviour
-Eigenschaft und einePickerDefaults.flingBehaviour()
-Methode hinzugefügt, um die Konfiguration des Suchverhaltens zu ermöglichen, z. B. die RSB-Unterstützung. MitPickerState
wird jetzt dieScrollableState
-Schnittstelle implementiert. (Ib89c7)
Fehlerkorrekturen
- Aktualisieren Sie die ART-Basisprofilregeln (Android Runtime) für Wear Compose-Bibliotheken. ART kann Profilregeln auf Geräten nutzen, um im Voraus eine bestimmte Teilmenge der Anwendung zu kompilieren und so die Leistung der Anwendung zu verbessern. Dies hat keine Auswirkungen auf Debug-fähige Anwendungen. (Iaa8ef)
- Dokumentation verbessern (I2c051)
Version 1.0.0-alpha19
23. März 2022
androidx.wear.compose:compose-foundation:1.0.0-alpha19
, androidx.wear.compose:compose-material:1.0.0-alpha19
und androidx.wear.compose:compose-navigation:1.0.0-alpha19
wurden veröffentlicht. Version 1.0.0-alpha19 enthält diese Commits.
API-Änderungen
CurvedRow
wurde inCurvedLayout
umbenannt und in einen Bereich mit DSL umgestaltet. Mithilfe dieser DSL können komplexere, gebogene Layouts mithilfe einer Reihe von verschachteltencurvedRow
- undcurvedColumn
-Elementen angegeben werden. Diese entsprechen den Äquivalenten für das gebogene Layout für Zeile und Spalte. Innerhalb dieser Layout-Elemente können drei Elemente verwendet werden:curvedComposable
(zum Hinzufügen von @Composable),basicCurvedText
(gekrümmter Text der Stiftung) undcurvedText
(Kleidungsmaterial mit gebogenem Text tragen). (Ib776a)- Machen Sie die Seite für das
PositionIndicator
konfigurierbar. Die Basisposition von PositionIndicator kann nun als End (auf die Layout-Richtung wahrnehmbar), Gegenüber-Rsb (berücksichtigt die Bildschirmdrehung, gegenüber dem physischen RSB) oder als absolute Werte (Links &) konfiguriert werden Richtig. (I2f1f3) - Für
SwipeToDismissBox
haben wirSwipeDismissTarget
.Original inSwipeToDismissValue.Default
undSwipeDismissTarget.Dismissal
inSwipeToDismissValue.Dismissed
umbenannt. Außerdem haben wirSwipeToDismissBoxDefaults.BackgroundKey
undSwipeToDismissBoxDefaults.ContentKey
nachSwipeToDismissKeys.Background
bzw.SwipeToDismissKeys.Content
verschoben. (I47a36) - Wir haben der Auswahl einen schreibgeschützten Modus für Bildschirme mit mehreren Auswahlfeldern hinzugefügt, in denen jeweils nur eine Auswahl bearbeitet werden kann. Wenn die Auswahl schreibgeschützt ist, werden die aktuell ausgewählte Option und gegebenenfalls ein Label angezeigt. (I879de)
SwipeToDismissBoxState
wurde refaktoriert, um den Bereich vonExperimentalWearMaterialApi
aufModifier.swipeable
undSwipeableState
zu beschränken, die jetzt intern verwendet werden.SwipeToDismissBoxState
hat jetztcurrentValue
-,targetValue
-,isAnimationRunning
- undsnapTo
-Mitglieder, um häufige Anwendungsfälle zu unterstützen. Bitte teile uns mit, wenn du weitere Properties zur Verfügung stellen möchtest. Außerdem wurde das Verhalten vonSwipeableState
für den Fall behoben, dass der Versatz beim Wischen innerhalb eines Rundungsfehlers eines Ankers lag. (I58302)
Fehlerkorrekturen
- Vereinfachter und korrigierter Code zur Erkennung, ob der Inhalt einer
ScalingLazyColumn
gescrollt werden kann. Damit wird entschieden, ob ein Bildlaufleiste oder nicht) (I7bce0) - Ein Fehler in der Positionsanzeige wurde behoben, der bei Verwendung mit mehr als einem Status und beim Wechseln zwischen diesen Statusangaben bestand (I320b5).
- Wir haben die Typografie/Schriftarten des Standarddesigns zum Schreiben von Text für Wear OS so aktualisiert, dass er unseren neuesten UX-Richtlinien entspricht. Dabei sind die Werte display1 (40.sp) und display2 (34.sp) jetzt kleiner als die vorherigen Werte. Außerdem wurden verschiedene kleinere Aktualisierungen der Zeilenhöhe und des Zeilenabstands vorgenommen. (Beispiel 3077)
- Wir haben
SwipeToDismissBox
einen neuen Widerstand hinzugefügt. So wird eine Bewegung nur dann ausgelöst, wenn zum Schließen gewischt wird und nicht in die entgegengesetzte Richtung. (Ifdfb9) - Wir haben einige der Standardparameterwerte für die
CircularProgressIndicator
-Funktionen geändert, um sie an die UX-Richtlinien für Wear Material Design anzupassen. Für die Spinner-/Indeterminant-Version wurden Größe (40->24.dp), AnzeigeColor (primär->onBackground), transparente TrackColor (30%->10%) und Strichbreite (4->3dp) aktualisiert. Für die Progress/Determinate-Version wurde die trackColor-Transparenz (30%->10%) aktualisiert. (I659cc) - Wir haben die Standard-Skalierungsparameter von
ScalingLazyColumn
entsprechend den neuesten UX-Spezifikationen von Wear Material Design aktualisiert. Dies führt dazu, dass Listenelemente beginnend näher an der Listenmitte skaliert werden, aber am Listenrand weniger skaliert werden als zuvor. (Ica8f3) - Einige Anpassungen an
ScalingLazyColumnDefaults.snapFlingBehavior
, um das Ende der Animation zu verbessern (If3260)
Version 1.0.0-alpha18
9. März 2022
androidx.wear.compose:compose-foundation:1.0.0-alpha18
, androidx.wear.compose:compose-material:1.0.0-alpha18
und androidx.wear.compose:compose-navigation:1.0.0-alpha18
wurden veröffentlicht. Version 1.0.0-alpha18 enthält diese Commits.
API-Änderungen
- Mehrere Verbesserungen an PositionIndicator: ShowResult in PositionIndicatorVisibility umbenannt. Einige Leistungsverbesserungen, um Neuberechnungen zu vermeiden, wenn sie nicht benötigt werden (Iaed9d)
- Die empfohlene Farbe für
SplitToggleChip
wurde aktualisiert. SplitToggleChips haben jetzt einen einfarbigen Hintergrund, wenn sie aktiviert oder deaktiviert sind. Die Einfärbung des Umschaltsteuerelements gibt an, ob die Komponente aktiviert ist oder nicht. Wir haben eine neueToggleDefaults.splitToggleChipColors()
hinzugefügt, um das neue Farbschema zu unterstützen. Außerdem haben wir dietoggleChipColors()
-Methoden beim Entfernen von „splitBackgroundOverlayColor“ (I7e66e) vereinfacht. - Wir haben dem
ScalingLazyListItemInfo
„unAdjustedSize“ hinzugefügt, da es aufgrund der Genauigkeit der Gleitkommazahl nicht sicher ist, die ursprüngliche Elementgröße mit der skalierten Größe und dem Skalierungsfaktor zu berechnen. (I54657, b/221079441) HorizontalPageIndicator
hinzufügen. Dieser Wert steht für die Gesamtzahl der Seiten und eine ausgewählte Seite. Kann je nach Form des Geräts linear oder gekrümmt sein. Es unterstützt auch eine benutzerdefinierte Indikatorform, die definiert, wie jeder Indikator visuell dargestellt wird. (Iac898)- Wir haben
PickerState
aktualisiert, sodass „numberOfOptions“ aktualisiert werden kann. Dies unterstützt Anwendungsfälle wieDatePicker
, bei denen sich die Anzahl der Tage im Monat je nach ausgewähltem Monat ändert. Der Konstruktorparameter für PickerState wurde entsprechend in initialNumberOfOptions geändert. (Iad066) PositionIndicator
ausblenden, wenn eine Bildlaufleiste angezeigt wird und nicht Scrollen. (Id0a7f)- Aus Gründen der Einheitlichkeit mit dem Gerüst zeigt unsere Vollbild-Dialogkomponente jetzt ein
PositionIndicator
und einVignette
an. Außerdem verwenden wir jetztScalingLazyColumn
anstelle vonColumn
. Das bedeutet, dass sich der Inhalt des Dialogfelds jetzt inScalingLazyListScope
befindet und normalerweise von Element { /* content */ } eingeschlossen sein muss. Das Dialogfeld unterstützt den Parameter „ verticalArrangement“ entsprechend. (Idee 13) - Wir haben den Namen
ToggleChip
undSplitToggleChip
der Eigenschaft „switchIcon“ in „switchControl“ geändert, um sie besser an Material Design anzupassen und Designern und Entwicklern bei der Navigation in der API zu helfen. (If5921, b/220129803) - Wir haben der Funktion „Wear-Material“-Designtypologie einen neuen Eintrag „caption3“ hinzugefügt.Caption3 ist eine kleine Schriftart, die für das Schreiben von zusätzlichem Text im Langformat wie z. B. rechtliche Texte verwendet wird. (I74b13, b/220128356)
Fehlerkorrekturen
- Beenden Sie das Andocken der Animation, wenn wir dort sind. (Idb69d)
- Animieren Sie Änderungen in PositionIndicator. (I94cb9)
- Aufgrund von UI/UX-Feedback haben wir die automatische Zentrierung von
ScalingLazyColumn
so geändert, dass nur genügend Platz vorhanden ist, um sicherzustellen, dass die Elemente mit dem IndexScalingLazyListState.initialCenterItemIndex
oder höher vollständig bis zur Mitte des Darstellungsbereichs gescrollt werden können. So können Entwickler ein oder zwei Elemente zu einem Element anfänglich in der Mitte platzieren, die nicht in die Mitte gescrollt werden können. Das bedeutet, dass das automatische Zentrieren vonScalingLazyColumn
nicht überinitialCenterItemIndex/initialCenterItemScrollOffset
hinausgescrollt werden kann (I22ee2). - Wir haben eine Demo für die Datumsauswahl hinzugefügt und einen Fehler in
PickerState
behoben, bei dem die initialSelectedOption angewendet wurde, bis die Auswahl angezeigt wurde. (Id0d7e) - Um das Beschneiden breiterer
ScalingLazyColumn
-Elemente auf runden Bildschirmen zu reduzieren, wurde der standardmäßige horizontale Abstand von Inhalten von 8 auf 10 dp erhöht. (I0d609) - Achte darauf, dass beim Scrollen
PositionIndicator
angezeigt wird. (Ied9a2)
Version 1.0.0-alpha17
23. Februar 2022
androidx.wear.compose:compose-foundation:1.0.0-alpha17
, androidx.wear.compose:compose-material:1.0.0-alpha17
und androidx.wear.compose:compose-navigation:1.0.0-alpha17
wurden veröffentlicht. Version 1.0.0-alpha17 enthält diese Commits.
Neue Funktionen
- Wir haben Snap-Unterstützung hinzugefügt, die mit
ScalingLazyColumn
verwendet werden kann. Legen SieflingBehavior = ScalingLazyColumnDefaults.flingWithSnapBehavior(state)
fest, um die Snap-Unterstützung zu aktivieren. (I068d3, b/217377069) - Wir haben einige Demos für Picker hinzugefügt, wählen Sie entweder das 24- oder das 12-Stunden-Format aus. (IE5552)
API-Änderungen
- Problem mit
TimeText
benutzerdefinierten Schriftarten und Stile auf quadratischem Gerät (Iea76e) ScalingLazyListLayoutInfo
hat jetztreverseLayout
,viewportSize
und Ausrichtungseigenschaften, die mit denen vonLazyListLayoutInfo
übereinstimmen (I4f258, b/217917020)ScalingLazyColumn
hat jetzt eineuserScrollEnabled
-Property, die der PropertyLazyList
entspricht (I164d0, b/217912513).- Die Auswahl hat jetzt standardmäßig oben und unten einen Farbverlauf (Iab92a).
Fehlerkorrekturen
- Wir haben
ScalingLazyColumn
geändert, sodass die Datei nicht mehr gierig den gesamten Bereich des übergeordneten Elements ausfüllt. Stattdessen wird seine Größe von der Größe seines Inhalts genommen. Das stimmt damit mit dem Verhalten vonLazyColumn
überein. Wenn Sie das alte Verhalten wiederherstellen möchten, übergeben SieModifier.fillMaxWidth()/width()/widthIn()
anScalingLazyColumn
(I51bf8). - Wir haben die Ausnahmemeldung in
SwipeDismissableNavHost.kt
verbessert, die ausgelöst wurde, wenn der Navigations-Backstack leer war. (I1b1dc)
Version 1.0.0-alpha16
9. Februar 2022
androidx.wear.compose:compose-foundation:1.0.0-alpha16
, androidx.wear.compose:compose-material:1.0.0-alpha16
und androidx.wear.compose:compose-navigation:1.0.0-alpha16
wurden veröffentlicht. Version 1.0.0-alpha16 enthält diese Commits.
Neue Funktionen
CircularProgressIndicator
hinzufügen. Fortschrittsanzeigen zeigen die Länge eines Prozesses oder eine nicht angegebene Wartezeit an. Unterstützt im Vollbildmodus eine Lücke (Cutout) für TimeText oder andere Komponenten. (Iab8da)
API-Änderungen
- Die Auswahl verfügt jetzt über den Parameter
flingBehavior
. Durch den Standardwert wird beim Scrollen/Fingen an die nächstgelegene Option angedockt. (I09000) - Zusätzliche Integer API für InlineSlider und Stepper (I1b5d6)
Fehlerkorrekturen
- Wir haben den standardmäßigen initialCenterItemIndex für
ScalingLazyListState
von 0 nach 1 geändert. Das bedeutet, dass das zweite Listenelement (Index == 1) bei der Initialisierung in der Mitte des Darstellungsbereichs und das erste Element (index == 0) davor platziert wird, wenn es nicht bei der Zustandskonstruktion mitScalingLazyListState.rememberScalingLazyListState(initialCenterItemIndex =
)
überschrieben wird. Dies ermöglicht einen besseren standardmäßigen visuellen Effekt, da der Großteil des Darstellungsbereichs mit Listenelementen gefüllt wird. (I0c623, b/217344252) - Wir haben den standardmäßigen
extraPadding
fürScalingLazyColumn
von 10% auf 5 % reduziert, damit genügend Listenelemente gezeichnet werden können (auch wenn wir die Größe einiger Elemente verkleinern). Dadurch wird vermieden, dass zusätzliche Listenelemente zusammengestellt werden, die möglicherweise nicht im Darstellungsbereich angezeigt werden. Wenn nicht standardmäßige Skalierungsparameter verwendet werden, beispielsweise eine extremere Skalierung, kann der Entwickler das zusätzliche Padding mitviewportVerticalOffsetResolver
anpassen. (I76be4) - Problem mit TimeText in mehreren Zeilen auf einem quadratischen Gerät beheben (Ibd3fb)
- Wir haben
ScalingLazyColumn
geändert, sodass die Datei nicht mehr gierig den gesamten Bereich des übergeordneten Elements ausfüllt. Stattdessen wird seine Größe von der Größe seines Inhalts genommen. Dies entspricht dem Verhalten vonLazyColumn
. Wenn du das alte Verhalten wiederherstellen möchtest, übergibModifier.fillMaxSize()
anScalingLazyColumn
. HINWEIS: Diese Änderung ist unvollständig und wird im nächsten Alpharelease berücksichtigt. (I3cbfa)
Version 1.0.0-alpha15
26. Januar 2022
androidx.wear.compose:compose-foundation:1.0.0-alpha15
, androidx.wear.compose:compose-material:1.0.0-alpha15
und androidx.wear.compose:compose-navigation:1.0.0-alpha15
wurden veröffentlicht. Version 1.0.0-alpha15 enthält diese Commits.
API-Änderungen
- Wir haben die neue Property
autoCentering
zuScalingLazyColumn
hinzugefügt. Ist dieser Wert auf „true“ gesetzt (Standardeinstellung), können alle Elemente, einschließlich des ersten und letzten Elements, gescrollt werden, sodass sie in der Mitte des Darstellungsbereichs der Liste sichtbar sind. Wenn Sie die automatische Zentrierung verwenden, sollten Sie den vertikalen Inhaltsabstand wahrscheinlich auf 0.dp festlegen. Wenn sowohl das automatische Zentrieren als auch der vertikale Inhaltsabstand zur Verfügung steht, ist vor dem ersten und nach dem letzten Listenelement zusätzlicher Platz verfügbar, sodass noch weiter gescrollt werden kann. (I2a282, b/214922490) - Wir haben eine
Dialog
-Komponente hinzugefügt, die es jeder zusammensetzbaren Funktion ermöglicht, ein Vollbild-Dialogfeld auszulösen, das über anderen Inhalten platziert wird. Wenn das Dialogfeld angezeigt wird, lässt es sich durch Wischen schließen. Während der Wischgeste werden die Inhalte des übergeordneten Elements im Hintergrund angezeigt. Der Dialoginhalt mussAlert
oderConfirmation
sein (aus den früheren KomponentenAlertDialog
undConfirmationDialog
umbenannt) –Alert
,Confirmation
undDialog
sind alle imandroidx.wear.compose.material.dialog
-Paket. „Warnmeldung“ und „Bestätigung“ können als Navigationsziele verwendet werden. Außerdem wurde bei Bedarf ColumnScope zu den Parametern für Benachrichtigungen und Bestätigung hinzugefügt. (Ia9014) - Wir haben „
onSurfaceVariant2
“ aus „Compose for Wear OS Material Design Colors“ entfernt und „Verwendungen in der Mediathek“ durch „onSurfaceVariant
“ ersetzt. (ICD592) - Es wurde eine Methode hinzugefügt, mit der eine Option im
PickerState
programmatisch ausgewählt werden kann. Die ursprünglich ausgewählte Option kann jetzt auch beim Erstellen einerPickerState
angegeben werden. (I92bdf) - Wir haben Unterstützung für die Anpassung des Interaktionsverhaltens von
ScalingLazyColumn
hinzugefügt. (I1ad2e, b/208842968) NavController.currentBackStackEntryAsState()
wurde derWear.Compose.Navigation
-Bibliothek hinzugefügt. (If9028, b/212739653)Modifier.onRotaryScrollEvent()
undModifier.onPreRotaryScrollEvent()
für Wear-Geräte mit drehbarer Seitentaste wurden hinzugefügt.(I18bf5, b/210748686)
Version 1.0.0-alpha14
12. Januar 2022
androidx.wear.compose:compose-foundation:1.0.0-alpha14
, androidx.wear.compose:compose-material:1.0.0-alpha14
und androidx.wear.compose:compose-navigation:1.0.0-alpha14
wurden veröffentlicht. Version 1.0.0-alpha14 enthält diese Commits.
Neue Funktionen
Wir haben
ScalingLazyListState
eine Reihe von Methoden hinzugefügt, mit denen Entwickler das Scrollen zu bestimmten Listenelementen steuern und auch den anfänglichen Listeneintrag und den Versatz festlegen können.Im Rahmen dieser Änderung haben wir auch die ScalingLazyList so geändert, dass sie um den Mittelpunkt des Darstellungsbereichs der ScalingLazyList und nicht um den Anfang des Darstellungsbereichs herum ausgerichtet ist.
Dem
ScalingLazyList
wurde die neue EigenschaftanchorType: ScalingLazyListAnchorType = ScalingLazyListAnchorType.ItemCenter
hinzugefügt, mit der gesteuert werden kann, ob die Mitte (ScalingLazyListAnchorType.ItemCenter
) oderEdge
(ScalingLazyListAnchorType.ItemStart
) an der Mittellinie des Darstellungsbereichs ausgerichtet werden soll.Aus diesem Grund haben sich
ScalingLazyListItemInfo.offset
undScalingLazyListItemInfo.adjustedOffset
geändert. Sie spiegeln jetzt den Versatz des Elements in Bezug auf die Position des Listenelements und denanchorType
der Liste wider. Beispiel: Für eineScalingLazyColumn
mit demanchorType
-WertItemCenter
und ein Listenelement, das mit seiner Mitte in der Mitte des Darstellungsbereichs positioniert ist, wäre der Versatz0
.Die neuen Methoden sind
scrollTo
,animatedScrollTo
,centerItemIndex
undcenterItemOffset
. (I61b61)Wir haben einen Handler für die Schaltfläche „Zurück“ zu
SwipeDismissableNavHost
hinzugefügt, sodass durch Drücken von „Zurück“ zur vorherigen Ebene in der Navigationshierarchie gewechselt wird. (I5b086, b/210205624)
Version 1.0.0-alpha13
15. Dezember 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha13
, androidx.wear.compose:compose-material:1.0.0-alpha13
und androidx.wear.compose:compose-navigation:1.0.0-alpha13
wurden veröffentlicht. Version 1.0.0-alpha13 enthält diese Commits.
API-Änderungen
- Wir haben
RangeIcons
intern gemacht (intern referenziert vonInlineSlider
undStepper
). (I927ec)
Fehlerkorrekturen
Es wurde ein Problem behoben, bei dem
SwipeDismissableNavHost
der Hierarchie „Compose“ ein Ziel hinzugefügt hat, bevor es den Lebenszyklusstatus „CREATED
“ erreicht hat, was zu einerIllegalStateException
führte. Diese Korrektur war eine Voraussetzung, um die Abhängigkeit vonnavigation-compose
auf2.4.0-beta02
und darüber hinaus zu aktualisieren. (I40a2b, b/207328687)Es wurde eine Drawables-Enum-Klasse hinzugefügt, um Drawable-Ressourcen in der Wear Compose-Bibliothek abzurufen, sodass eine Reflexion nicht mehr erforderlich ist. Dadurch wird ein Fehler behoben, bei dem Mediathek-Drawables bei
minifyEnabled=true
odershrinkResources=true
entfernt wurden. (Ib2a98)Tests für
Stepper
in Wear Compose hinzugefügt (I2d03a)Beispiele für
SwipeDismissableNavHost
in der Wear Compose-Navigation wurden hinzugefügt. (I85f06)
Version 1.0.0-alpha12
1. Dezember 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha12
, androidx.wear.compose:compose-material:1.0.0-alpha12
und androidx.wear.compose:compose-navigation:1.0.0-alpha12
wurden veröffentlicht. Version 1.0.0-alpha12 enthält diese Commits.
Neue Funktionen
Wir haben eine Stepper-Komponente hinzugefügt, mit der Nutzende eine Auswahl aus einem Wertebereich treffen können. Stepper ist ein Vollbild-Steuerelement mit Schaltflächen zum Erhöhen und Verringern oben und unten sowie einem Slot in der Mitte (erwartet, dass entweder ein Chip oder ein Text verwendet wird). Die Symbole der Schaltflächen können bei Bedarf angepasst werden. (I625fe)
Wir haben zwei neue zusammensetzbare Funktionen für die Anzeige von Dialogfeldern hinzugefügt: AlertDialog wartet auf eine Antwort des Nutzers und zeigt einen Titel, ein Symbol, eine Nachricht und entweder a) zwei Schaltflächen für einfache positive/negative Entscheidungen oder b) vertikal gestapelte Chips oder Ein-/Aus-Chips für flexiblere Optionen an. ConfirmationDialog zeigt eine Bestätigung mit einem Zeitlimit an. Dieses einfache Dialogfeld hat Plätze für einen Titel und ein (animiertes) Symbol. (Ic2cf8)
API-Änderungen
- Fügen Sie den vorgeschlagenen Werten für die Dialogdauer Einheiten (Millisekunden) hinzu. (I09b48)
Version 1.0.0-alpha11
17. November 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha11
, androidx.wear.compose:compose-material:1.0.0-alpha11
und androidx.wear.compose:compose-navigation:1.0.0-alpha11
wurden veröffentlicht. Version 1.0.0-alpha11 enthält diese Commits.
Neue Funktionen
- Wir haben eine Auswahlkomponente hinzugefügt, mit der Nutzer ein Element aus einer scrollbaren Liste auswählen können. Standardmäßig wird die Liste der auswählbaren Elemente "unendlich" wiederholt in beide Richtungen, um den Eindruck eines rotierenden Zylinders von der Seite zu vermitteln. In späteren Versionen werden zwei Funktionen hinzugefügt: das Andocken an einen Wert nach einem Wischen oder Ziehen; Hinzufügen einer Funktion zu PickerState, um zum aktuellen Wert zu gelangen/zum aktuellen Wert zu scrollen (I6461b)
API-Änderungen
- Ein ScalingLazyItemScope und einige neue Modifikatoren fillParentMaxSize/fillParentMaxWidth/fillParentMaxHeight wurden hinzugefügt, um zu ermöglichen, dass die Größe von Listenelementen an die Größe des übergeordneten Containers angepasst wird. Für Elemente kann festgelegt werden, dass sie die gesamte Größe oder einen Teil der Größe des übergeordneten Elements ausfüllen. Dadurch werden Funktionen angezeigt, die bereits in der LazyRow/Column (I4612f) verfügbar sind.
- ScalingLazyColumn wird jetzt unterstützt, damit Elemente einen Schlüssel haben können. Außerdem wurden Convenience-Methoden hinzugefügt, mit denen Elemente aus Arrays und Listen hinzugefügt werden können. (IC1f89)
Fehlerkorrekturen
- Weitere Beispiele für TimeText (I8cb64)
Version 1.0.0-alpha10
3. November 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha10
, androidx.wear.compose:compose-material:1.0.0-alpha10
und androidx.wear.compose:compose-navigation:1.0.0-alpha10
wurden veröffentlicht. Version 1.0.0-alpha10 enthält diese Commits.
Neue Funktionen
Es wurde ein InlineSlider für Wear Compose hinzugefügt. Mit InlineSlider können Nutzer aus einem Wertebereich eine Auswahl treffen. Der Auswahlbereich wird als Balken zwischen den Mindest- und Höchstwerten des Bereichs angezeigt, aus dem Nutzer einen einzelnen Wert auswählen können. (If0148)
Sehen Sie sich das neue Schreiben für WearOS Codelab an.
API-Änderungen
- Der Macro-Benchmark hat jetzt einen
minSdkVersion
von23
. (If2655)
Fehlerkorrekturen
- Umgang mit Umstellungen aktualisieren in SwipeDismissableNavHost in a SideEffect (I04994, b/202863359)
- Umgang mit Umstellungen aktualisieren in SwipeDismissableNavHost (I1cbe0, b/202863359)
Version 1.0.0-alpha09
27. Oktober 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha09
, androidx.wear.compose:compose-material:1.0.0-alpha09
und androidx.wear.compose:compose-navigation:1.0.0-alpha09
wurden veröffentlicht. Version 1.0.0-alpha09 enthält diese Commits.
Neue Funktionen
- Wir haben die Entwicklervorschau der Funktion „Compose“ für Wear OS eingeführt. In unserem Blogpost werden die wichtigsten zusammensetzbaren Funktionen vorgestellt und Links zu weiteren Ressourcen für den Einstieg veröffentlicht.
API-Änderungen
- Entwickler können jetzt alle Farben des Farbdesigns von Wear Material Design anpassen. (I4759b, b/199754668)
Fehlerkorrekturen
- SwipeToDismissBox-Beispiele hinzugefügt, die den Status beibehalten (Ibaffe)
- Es wurden Links zu developer.android.com-Leitfäden von KDocs für CurvedText, TimeText und SwipeToSchließenBox aus. (I399d4)
- SwipeDismissableNavHost löst jetzt aus, wenn kein aktuelles Ziel vorhanden ist (zeigt an, dass NavGraph wurde nicht mit der Funktion wear.compose.navigation.composable entwickelt. Dienstprogramm) (I91403)
- Zusätzliche Dokumentation und Beispiele für die Verwendung der Zeitquelle in TimeText (I4f6f0) wurden hinzugefügt.
Version 1.0.0-alpha08
13. Oktober 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha08
, androidx.wear.compose:compose-material:1.0.0-alpha08
und androidx.wear.compose:compose-navigation:1.0.0-alpha08
wurden veröffentlicht. Version 1.0.0-alpha08 enthält diese Commits.
API-Änderungen
- Wir haben die Properties „AppCard“ und „TitleCard“
body
in „content
“ umbenannt und an das Ende der Property-Liste verschoben, damit sie als nachgestelltes Lambda angegeben werden können. Außerdem wurdebodyColor
incontentColor
umbenannt, um die Konsistenz mit den neuen Namen der Anzeigenflächen zu gewährleisten. (I57e78)
Fehlerkorrekturen
- Links zu developer.android.com hinzugefügt Anleitungen von KDocs zu Schaltflächen, Karten, Chips, Designs für die Positionsangabe und die Skalierung von Lazy Column-Komponenten. (I22428)
- Das Problem mit Wear OS SwipeToDismissBox wurde behoben, wenn das Wischen manchmal nicht funktionierte. (I9387e)
- Beispiele für Button, CompactButton, Chip, CompactChip, AppCard, TitleCard, SwitchButton, SwitchChip, SplitToggleChip (Iddc15)
- MicroBenchmark-Leistungstests wurden hinzugefügt für Card, Chip, SwitchChip, TimeText und ScalingLazyColumn. (If2fe9)
Version 1.0.0-alpha07
29. September 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha07
, androidx.wear.compose:compose-material:1.0.0-alpha07
und androidx.wear.compose:compose-navigation:1.0.0-alpha07
wurden veröffentlicht. Version 1.0.0-alpha07 enthält diese Commits.
Neue Funktionen
- Es wurde eine CurvedText-Komponente in Material hinzugefügt. Diese Komponente ermöglicht es Entwicklern, auf einfache Weise gekrümmten Text zu schreiben, der der Krümmung eines Kreises folgt (normalerweise am Rand eines runden Bildschirms). (I19593)
API-Änderungen
- Es wurden Tests für TimeText hinzugefügt (Idfead).
- Wandelt ArcPaddingValues in eine Schnittstelle um. (Iecd4c)
- Animation zu „SwipeToDismissBox“ hinzugefügt (I9ad1b)
- Der Parameter hasBackground wurde zu SwipeToDismissBox hinzugefügt damit die Wischgeste deaktiviert werden kann, keine Hintergrundinhalte vorhanden sind. (I313d8)
rememberNavController()
nimmt jetzt eine optionale Gruppe vonNavigator
Instanzen, die demNavController
zurückgegeben, um eine bessere Unterstützung zu ermöglichen (optional) Navigatoren wie die von Navigation für Begleitpersonen. (I4619e)- Verweis auf NamedNavArgument von Navigation-common und entfernen Text aus wear.compose.navigation aufrufen. (I43af6)
Fehlerkorrekturen
- Fehler beim CurvedRow-Test-Test auf kleineren Geräten behoben. (If7941)
- Das mögliche Flackern auf CurvedRow bei Aktualisierung des Inhalts wurde behoben. und sorgt dafür, dass die gebogene Zeile neu gemessen wird (Ie4e06).
- ChipDefaults.degreeBackgroundChipColors() wurde entsprechend den Änderungen an den UX-Spezifikationen aktualisiert. Der Farbverlauf beginnt jetzt mit MaterialTheme.colors.primary mit alpha 32,5% und endet mit MaterialTheme.colors.surface mit Alpha bei 0% auf einem Hintergrund von MaterialTheme.colors.surface mit 75% Alpha. (ID1548)
- Wir haben die Farben für SwitchChips im ausgewählten Zustand aktualisiert, damit sie den neuesten UX-Spezifikationen für Wear Material Design entsprechen. Bei ausgewählten Umschaltchips haben sie jetzt einen Farbverlaufshintergrund: MaterialTheme.color.surface @ 0% Alpha, oben links, MaterialTheme.color.primary @ 32% Alpha, unten rechts, auf einem Hintergrund von MaterialTheme.color.surface @ 75% Alpha. Dies führt zu einem feineren Unterschied zwischen aktiviert und deaktiviert für den Chip umschalten. (Idd40b)
Version 1.0.0-alpha06
15. September 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha06
, androidx.wear.compose:compose-material:1.0.0-alpha06
und androidx.wear.compose:compose-navigation:1.0.0-alpha06
wurden veröffentlicht. Version 1.0.0-alpha06 enthält diese Commits.
Neue Funktionen
- Wir haben Scaffold eine zusammensetzbare Anwendung auf oberster Ebene hinzugefügt, die eine Struktur zur Handhabung von PositionIndicators (wie Scroll oder Volume) bietet, einen Bereich oben auf dem Bildschirm zur Anzeige der Uhrzeit und des Anwendungsstatus sowie eine Vignette, mit der der obere und untere Rand des Bildschirms für scrollbare Inhalte unkenntlich gemacht werden kann. Der Hauptbereich des Scaffold ist der Bereich, in dem die Anwendungsinhalte platziert werden. (I5e0bf)
- TimeText-Implementierung für Wear Compose wurde hinzugefügt (I5654c).
Navigationsbibliothek für Wear Compose
Wir haben die erste Version der Wear Compose-Navigationsbibliothek hinzugefügt, die eine Integration zwischen den Wear Compose- und der Androidx-Navigationsbibliothek ermöglicht. Sie bietet eine einfache Möglichkeit, zwischen @Composable-Funktionen als Ziele in Ihrer Anwendung zu wechseln.
Diese erste Version bietet folgende Vorteile:
- Eine zusammensetzbare Funktion für
SwipeDismissableNavHost
, die ein Navigationsdiagramm hostet und mit Wischgesten eine Rückwärtsnavigation ermöglicht - Erweiterung „
NavGraphBuilder.composable
“ zur Unterstützung beim Erstellen von Navigationsdiagrammen rememberSwipeDismissableNavController()
, um den Windenstatus zuzulassen
- Eine zusammensetzbare Funktion für
Beispielanwendung, bei der wir zwei Bildschirme erstellen und zwischen ihnen wechseln:
val navController = rememberSwipeDismissableNavController() SwipeDismissableNavHost( navController = navController, startDestination = "start" ) { composable("start") { Column( horizontalAlignment = Alignment.CenterHorizontally, verticalArrangement = Arrangement.Center, modifier = Modifier.fillMaxSize(), ) { Button(onClick = { navController.navigate("next") }) { Text("Go") } } } composable("next") { Column( horizontalAlignment = Alignment.CenterHorizontally, verticalArrangement = Arrangement.Center, modifier = Modifier.fillMaxSize(), ) { Text("Swipe to go back") } } }
Wear Compose Navigation ist als separate Bibliothek gepackt, sodass einfache WearCompose-Anwendungen, die eine eigene handgerollte Navigation implementieren, nicht auf die Androidx-Navigationsbibliothek angewiesen sind.
API-Änderungen
SwipeDismissableNavHost
wurde zur Unterstützung aktualisiertrememberSaveable
, indem Sie die Schlüsselidentität für Hintergrund und Inhalt festlegen (I746fd)- Wir haben einen PositionIndicator-Adapter hinzugefügt, der LazyListState verarbeiten kann (I21b88).
- „SwipeToDismissBox“ wurde aktualisiert, um „merkSaveable“ zu unterstützen (Ie728b)
- Wir haben die Unterstützung umgekehrterLayout für die ScalingLazyColumn hinzugefügt. So können Sie die Scrollrichtung und das Layout umkehren (I9e2fc).
performGesture
undGestureScope
wurden eingestellt, die Folgendes enthalten: wurde durchperformTouchInput
undTouchInjectionScope
ersetzt. (Ia5f3f, b/190493367)- Wir haben VignetteValue in VignettePosition umbenannt und VignetteValue.Beide in VignettePosition.TopAndBottom umbenannt. (I57ad7)
- Wir haben ScalingLazyColumnState in ScalingLazyListState, „ScalingLazyColumnItemInfo“ in ScalingLazyListItemInfo, „ScalingLazyColumnLayoutInfo“ in ScalingLazyListLayoutInfo und „ScalingLazyColumnScope“ in ScalingLazyListScope umbenannt, für den Fall, dass wir künftig eine ScalingLazyRow-Implementierung hinzufügen möchten. (I22734)
Fehlerkorrekturen
- Die CompactChip-Dokumentation wurde aktualisiert, um zu beschreiben, was passiert, wenn weder ein Symbol noch ein Label angegeben wurde. (I4ba88)
- Wir haben einige Anpassungen an den Komponenten der Wear-Karte vorgenommen. (I6b3d0)
<ph type="x-smartling-placeholder">
- </ph>
- Der Abstand zwischen Titel und Text wurde von 8 dp auf 2 dp reduziert.
- Die Schriftart der Kopfzeile der Titelkarte wurde von "body" in "title3" geändert.
- Der Hintergrundverlauf der Karte wurde geändert, um den Hintergrund dunkler zu machen.
Version 1.0.0-alpha05
1. September 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha05
und androidx.wear.compose:compose-material:1.0.0-alpha05
wurden veröffentlicht. Version 1.0.0-alpha05 enthält diese Commits.
API-Änderungen
- ArcPaddingValues als @Stable (I57deb) markieren
- ScalingLazyColumnState implementiert jetzt die ScrollableState-Schnittstelle, die Entwicklern programmatischen Zugriff zum Scrollen der Komponente bietet. (I47dbc)
Fehlerkorrekturen
- Wir haben den Abstand zwischen Symbol und Text im Chip und mit umgeschaltetem Chip verkleinert, um sie an die Aktualisierungen der UX-Spezifikationen anzupassen. (I83802)
Version 1.0.0-alpha04
18. August 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha04
und androidx.wear.compose:compose-material:1.0.0-alpha04
wurden veröffentlicht. Version 1.0.0-alpha04 enthält diese Commits.
Neue Funktionen
- Es wurden eine SwipeToDismissBox und ein Swipe-Modifikator hinzugefügt, mit dem unterstützen eine Wischgeste zum Schließen von links nach rechts. Obwohl unabhängig von Navigationskomponenten wird erwartet, dass dies zum Verlassen eines Bildschirms und Navigieren zu einem anderen verwendet wird. Hinzugefügt Integrationstests zur Demonstration der Wischgeste zum Schließen. (I7bbaa)
- Wir haben die Schnittstellen ScalingLazyColumnItemInfo und ScalingLazyColumnLayoutInfo zur Klasse „ScalingLazyColumnState“ hinzugefügt, damit Entwickler die tatsächlichen Positionen und Größen von Elementen in der ScalingLazyColumn sehen können, nachdem die Skalierung angewendet wurde. Wir haben auch einen Fehler bei der Berechnung der Skalierung bei der Einstellung „Oben“ behoben. wird auf die ScalingLazyColumn angewendet. (I27c07)
API-Änderungen
- Klasse „CurvedTextStyle“ hinzufügen, um den Stil des geschwungenen Textes festzulegen Optionen. Ähnlich wie TextStyle, unterstützt jetzt aber nur Farbe, fontSize und Hintergrund. Weitere Stiloptionen werden in Zukunft hinzugefügt. (I96ac3)
- Wir haben die Schnittstellen ScalingLazyColumnItemInfo und ScalingLazyColumnLayoutInfo zur Klasse „ScalingLazyColumnState“ hinzugefügt, damit Entwickler die tatsächlichen Positionen und Größen von Elementen in der ScalingLazyColumn sehen können, nachdem die Skalierung angewendet wurde. Wir haben auch einen Fehler bei der Berechnung der Skalierung bei der Einstellung „Oben“ behoben. wird auf die ScalingLazyColumn angewendet. (I27c07)
@ExperimentalWearMaterialApi
wurde zuSwipeDismissTarget
-Enum hinzugefügt, das Teil derSwipeToDismissBox
API ist. (I48b5e)
Fehlerkorrekturen
- Testmaterial für SwipeToDismissBox hinzugefügt (I9febc)
Version 1.0.0-alpha03
4. August 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha03
und androidx.wear.compose:compose-material:1.0.0-alpha03
wurden veröffentlicht. Version 1.0.0-alpha03 enthält diese Commits.
API-Änderungen
- CurvedText-Komponente hinzugefügt, mit der Entwickler auf einfache Weise Text schreiben können, Die Krümmung als Kreis (normalerweise am Rand eines runden Bildschirms) (Id1267)
- Wir haben
CardDefaults.imageBackgroundPainter()
inCardDefaults.imageWithScrimBackgroundPainter()
umbenannt, um deutlich zu machen, dass das Hintergrundbild mit einem Gitter darüber gezeichnet ist. (I53206) - Hinzufügen der ScalingLazyColumn-Komponente, die eine Listenkomponente für Wear-Material bereitstellt, die eine Fischaugenansicht ermöglicht, bei der der Listeninhalt verkleinert wird und transparent wird, wenn er zum Rand der Komponente hin skaliert wird. (I7070c)
Fehlerkorrekturen
- Wir haben die Standardfarbe der appName-Inhalte auf der AppCard als Reaktion auf ein Update der UX-Spezifikationen geändert. Die Standardfarbe für „appName“ ist jetzt
MaterialTheme.colors.onSurfaceVariant
. Außerdem wurde eine fehlende Parameterdokumentbeschreibung für die Titelfläche hinzugefügt. (Ic4ad1)
Version 1.0.0-alpha02
21. Juli 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha02
und androidx.wear.compose:compose-material:1.0.0-alpha02
wurden veröffentlicht. Version 1.0.0-alpha02 enthält diese Commits.
Neue Funktionen
- Die neue Klasse CurvedRow wurde hinzugefügt, um zusammensetzbare Funktionen in einem Bogen darzustellen (I29941).
- Es wurde ein neuer Kartentyp für die Verwendung in Apps hinzugefügt (TitleCard). Außerdem können Karten als Hintergrund verwendet werden, um den Inhalt von Karten hervorzuheben (I53b0f).
API-Änderungen
- Unterstützung für die radiale Ausrichtung auf CurvedRow (ähnlich wie die vertikale Ausrichtung in einer Zeile) (Id9de5)
- Neue Klasse CurvedRow zu angeordneten zusammensetzbaren Funktionen in einem Bogen hinzufügen (I29941)
- Es wurde ein neuer Kartentyp für die Verwendung in Apps hinzugefügt (TitleCard). Außerdem können Karten als Hintergrund verwendet werden, um den Inhalt von Karten hervorzuheben (I53b0f).
- Wir haben Ein/Aus-Symbole (Kästchen, Schalter und Optionsfelder) zu „SwitchChipDefaults“ hinzugefügt, um Entwicklern die Konfiguration von „UmschaltChip“ und „SplitToggleChips“ zu erleichtern (I7b639).
- Der Abstand für Start- und Endinhalt für Chips wurde aktualisiert. Er beträgt nun konstant 14 dp, unabhängig davon, ob auf dem Chip ein Symbol vorhanden ist oder nicht (zuvor war er 12 dp, wenn ein Symbol vorhanden war, und 14 dp, wenn nicht). (I34c86)
Fehlerkorrekturen
- Tests für CurvedRow (I93cdb) hinzufügen
- Wear Compose-Abhängigkeiten mit Compose 1.0.0-rc01 verknüpfen. (Ie6bc9)
- Die Übergabe von Hintergrundbildern in „Karten und Chips“ wurde so geändert, dass das Bild zugeschnitten und nicht gestreckt wird, um die Proportionen des Bildes beizubehalten. (I29b41)
- Es wurden weitere Demos und Integrationstests für die Schaltfläche und die Ein/Aus-Schaltfläche hinzugefügt. (5e27ed2)
- Es wurden weitere Chiptests hinzugefügt, um die Inhaltsfarben für „imageBackgroundChips“ abzudecken (Ia9183).
Version 1.0.0-alpha01
1. Juli 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha01
und androidx.wear.compose:compose-material:1.0.0-alpha01
wurden veröffentlicht. Version 1.0.0-alpha01 enthält diese Commits.
Neue Funktionen
Wear Compose ist eine auf Kotlin basierende Bibliothek, die Wear Material Design unterstützt, eine Erweiterung von Material Design für Wear OS-Wearables. Diese erste Alphaversion enthält frühe, funktionale Implementierungen des folgenden Elements:
- Materialdesign: Konfiguriert die Farben, Typografie und Formen in den Komponenten dieser Bibliothek einheitlich.
- Chip, CompactChip – Chips haben die Form eines Stadions und es gibt verschiedene Varianten für Symbol-, Label- und sekundäre Labelinhalte.
- – SwitchChip, SplitToggleChip – eine spezielle Art von Chip mit einem Slot für ein zweistufiges Ein/Aus-Symbol, z. B. ein Optionsfeld oder Kästchen. Darüber hinaus hat der SplitToggleChip zwei antippbare Bereiche, einen anklickbaren und einen ein-/ausschaltbaren Bereich.
- Schaltfläche, CompactButton – runde Schaltfläche mit einer einzelnen Inhaltsfläche für ein Symbol oder minimalen Text (maximal 3 Zeichen).
- Ein/Aus-Schaltfläche: Eine Schaltfläche zum Ein- oder Ausschalten einer Aktion mit nur einem Platz für ein Symbol oder minimalen Text (maximal 3 Zeichen).
- Karte, AppCard – rechteckige Form mit abgerundeten Ecken. Platz für Inhalte wie App-Symbol, Zeit, Titel und Textkörper.
In zukünftigen Versionen wird das Widget-Set um Unterstützung für Auswahlelemente, Schieberegler, Listen, Seitenindikatoren, Dialogfelder, Scroll-RSB-Indikatoren, Toasts und mehr in Wear Material Design erweitert.
Darüber hinaus werden andere Wearable-spezifische Funktionen wie gebogene Layouts und Texte sowie ein Gerüst unterstützt, um Entwicklern die Erstellung von Wearable-Apps/-Overlays zu erleichtern.
Wear Compose Material wurde nach den gleichen Prinzipien entwickelt wie das Compose-Material, ist jedoch auf Wearables ausgerichtet. Beim Erstellen eines Wearable-Geräts sollte die Wear Compose Material-Bibliothek anstelle der Compose Material-Bibliothek verwendet werden.
Die beiden „Material“-Bibliotheken sollten als sich gegenseitig ausschließen und nicht in derselben App kombiniert werden. Wenn Entwickler die Compose Material-Bibliothek in ihre Abhängigkeiten einbinden, würde Folgendes vorschlagen: a) fehlende Komponenten in der Wear Compose Material-Bibliothek, teilen Sie uns bitte mit, was Sie benötigen, oder b) verwenden Sie eine Komponente, die wir nicht für die Verwendung auf einem Wearable-Gerät empfehlen.