Wear Compose
Letzte Aktualisierung | Stabile Version | Releasekandidat | Beta-Ausgabe | Alpharelease |
---|---|---|---|---|
17. April 2024 | 1.3.1 | − | − | 1.4.0-alpha07 |
Abhängigkeiten deklarieren
Zum Hinzufügen einer Abhängigkeit von Wear musst du deinem Projekt das Google Maven-Repository hinzufügen. Weitere Informationen finden Sie im Maven-Repository von Google.
Fügen Sie der Datei build.gradle
für Ihre Anwendung oder Ihr Modul die Abhängigkeiten für die benötigten Artefakte hinzu:
Groovig
dependencies { implementation "androidx.wear.compose:compose-foundation:1.3.1" // For Wear Material Design UX guidelines and specifications implementation "androidx.wear.compose:compose-material:1.3.1" // For integration between Wear Compose and Androidx Navigation libraries implementation "androidx.wear.compose:compose-navigation:1.3.1" // For Wear preview annotations implementation("androidx.wear.compose:compose-ui-tooling:1.3.1") // NOTE: DO NOT INCLUDE a dependency on androidx.compose.material:material. // androidx.wear.compose:compose-material is designed as a replacement // not an addition to androidx.compose.material:material. // If there are features from that you feel are missing from // androidx.wear.compose:compose-material please raise a bug to let us know. }
Kotlin
dependencies { implementation("androidx.wear.compose:compose-foundation:1.3.1") // For Wear Material Design UX guidelines and specifications implementation("androidx.wear.compose:compose-material:1.3.1") // For integration between Wear Compose and Androidx Navigation libraries implementation("androidx.wear.compose:compose-navigation:1.3.1") // For Wear preview annotations implementation("androidx.wear.compose:compose-ui-tooling:1.3.1") // NOTE: DO NOT INCLUDE a dependency on androidx.compose.material:material. // androidx.wear.compose:compose-material is designed as a replacement // not an addition to androidx.compose.material:material. // If there are features from that you feel are missing from // androidx.wear.compose:compose-material please raise a bug to let us know. }
Weitere Informationen zu Abhängigkeiten finden Sie unter Build-Abhängigkeiten hinzufügen.
Feedback
Dein Feedback hilft uns, Jetpack zu verbessern. Lassen Sie uns wissen, wenn Sie neue Probleme entdecken oder Ideen zur Verbesserung dieser Bibliothek haben. Sehen Sie sich die vorhandenen Probleme in dieser Bibliothek an, bevor Sie eine neue erstellen. Durch Klicken auf die Stern-Schaltfläche können Sie zu einem vorhandenen Problem abstimmen.
Weitere Informationen finden Sie in der Dokumentation zum Issue Tracker.
Wear Compose Material3 Version 1.0
Version 1.0.0-alpha21
17. April 2024
androidx.wear.compose:compose-material3:1.0.0-alpha21
wird freigegeben. Version 1.0.0-alpha21 enthält diese Commits.
- Dieser Release wurde aufgrund eines technischen Fehlers im vorherigen Release ausgelöst, der dazu führte, dass Quell-JAR-Dateien fehlen. In diesem Release gibt es keine neuen Commits.
Version 1.0.0-alpha20
3. April 2024
androidx.wear.compose:compose-material3:1.0.0-alpha20
wird freigegeben. Version 1.0.0-alpha20 enthält diese Commits.
Fehlerkorrekturen
- Wir haben die Alphas im „gedrückten“ und fokussierten Zustand für den Kontrast angepasst. (I59f0a)
- Aufgrund der neuesten Änderungen an Typografiestilen und Zeilenhöhen haben wir die Abstände zwischen primären und sekundären Labels in
Button
,ToggleButton
undRadioButton
hinzugefügt. (I2c0ba)
Version 1.0.0-alpha19
6. März 2024
androidx.wear.compose:compose-material3:1.0.0-alpha19
wird freigegeben. Version 1.0.0-alpha19 enthält diese Commits.
API-Änderungen
- Wir haben „
TimeText
“ zur Material3-Bibliothek von Wear Compose hinzugefügt. Diese Komponente zeigt die aktuelle Uhrzeit und zusätzliche Statusangaben oben auf dem Bildschirm an. Die neue, prägnante Material3 API vermeidet Duplikate von linearen und gebogenen Inhalten. (I4d7c3) - Wir haben die Parameternamen für
RadioButton
vononSelected
zuonSelect
geändert. (I1a971) - Tokenisieren Sie
RadioButton
undSplitRadioButton
und refaktorieren Sie die vorhandenen Methoden, um die Anzahl derCompositionLocal
-Lookups zu reduzieren. Fügen Sie dazu im Cache gespeicherte Instanzen von Farben hinzu und legen Sie die MethodenRadioButtonColors
undSplitRadioButtonColors
intern fest. (I02b33)
Version 1.0.0-alpha18
21. Februar 2024
androidx.wear.compose:compose-material3:1.0.0-alpha18
wird freigegeben. Version 1.0.0-alpha18 enthält diese Commits.
API-Änderungen
- Wir haben das Standardmuster für
CardColors
,ToggleButtonColors
undSplitToggleButtonColors
überarbeitet, indem wir intern im Cache gespeicherte Instanzen erstellt und die Nutzung vonCompositionLocal
reduziert haben. (If3fec)
Version 1.0.0-alpha17
7. Februar 2024
androidx.wear.compose:compose-material3:1.0.0-alpha17
wird freigegeben. Version 1.0.0-alpha17 enthält diese Commits.
API-Änderungen
- Wir haben die Button API so aktualisiert, dass standardmäßig
buttonColors
verwendet wird. Das doppeltefilledButtonColors
wurde entfernt. (I4fe3b) - Wir haben die Standardmuster für
ButtonColors
,IconButtonColors
undTextButtonColors
überarbeitet, indem wir intern eine im Cache gespeicherte Instanz erstellt und die Nutzung vonCompositionLocal
reduziert haben. (I5f51c) - Wir haben den Aufwand von
rememberUpdatedState
in komponentenspezifischen Farbklassen entfernt und Zugriffsmethoden innerhalb von Farbklassen als intern gekennzeichnet. (If6571)
Fehlerkorrekturen
Modifier.minimumInteractiveComponentSize
wurde aktualisiert und verwendet nunModifier.node
. (Iba6b7)
Version 1.0.0-alpha16
24. Januar 2024
androidx.wear.compose:compose-material3:1.0.0-alpha16
wird freigegeben. Version 1.0.0-alpha16 enthält diese Commits.
Neue Funktionen
- Wir haben
CompactButton
hinzugefügt, das dieselben ausgefüllten, ausgefüllten Tonwerte und umrissenen Farben wie für die Schaltfläche verwenden kann.(I05df0)
API-Änderungen
- Wir haben
RadioButton
/SplitRadioButton
als Container für Auswahlsteuerelemente hinzugefügt, z. B. die Funksteuerung. Sie unterscheidet sich insofern vom vorhandenenToggleButton
, alsRadioButton
auswählbar ist (und in einer Auswahlgruppe ausgeführt wird), währendToggleButton
ein- und ausgeschaltet ist und unabhängig ist. (I61275) - Wir entfernen
LocalContentAlpha
aus der Wear Compose Material3-Bibliothek, um die Einheitlichkeit mit der Compose Material3-Bibliothek zu vereinheitlichen. (I49a0a) - „Wear Material“- und „Wear Material3“-Komponenten, durch die in der API ein
MutableInteractionSource
verfügbar gemacht wird, wurden aktualisiert, sodass jetzt eineMutableInteractionSource
verfügbar ist, die Nullwerte zulässt und standardmäßig auf null gesetzt ist. Hier gibt es keine semantischen Änderungen: Wenn Sie null übergeben, bedeutet das, dass dasMutableInteractionSource
nicht angezogen werden soll. Es wird bei Bedarf innerhalb der Komponente erstellt. Wenn Sie den Wert auf null ändern, können einige Komponenten niemals eineMutableInteractionSource
zuweisen. Andere Komponenten können eine Instanz nur bei Bedarf verzögert erstellen, was die Leistung dieser Komponenten verbessert. Wenn SieMutableInteractionSource
nicht verwenden, das 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) - In den Bibliotheken
wear:compose-material
undwear:compose-material3
wird eine neue Ripple API hinzugefügt, die das eingestellterememberRipple
ersetzt. Außerdem wird ein temporäresCompositionLocal
(LocalUseFallbackRippleImplementation
) hinzugefügt, um Material-Komponenten auf die verworfenenrememberRipple/RippleTheme
APIs zurückzusetzen. Diese wird in der nächsten stabilen Version entfernt und ist nur als vorübergehende Migrationshilfe gedacht, wenn du eine benutzerdefinierteRippleTheme
angibst. 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 ihrer Dokumentation vorgenommen. (I60efc) - Wir haben
ColorScheme
aktualisiert, sodass sie unveränderlich ist. Dadurch werden einzelne Farbaktualisierungen weniger effizient, aber die gängige Verwendung von Farben wird effizienter. Der Grund für diese Änderung ist, dass die Aktualisierung einzelner Farben bei den meisten Apps nicht mehr hauptsächlich verwendet werden würde. Dies ist immer noch möglich, aber es wird sich stärker neu zusammensetzen als zuvor, was wiederum die Anzahl der staatlichen Abonnements über den gesamten materiellen Code erheblich reduziert und sich auf die Initialisierungs- und Laufzeitkosten für mehr Standardanwendungsfälle auswirkt. (Ibc2d6) - Die APIs
ToggleButton
undSplitToggleButton
wurden aktualisiert, damit deaktivierte Farben angepasst werden können. Darüber hinaus werden Material Design-Tokens jetzt für Farb- und Typografiewerte verwendet. (If087c) - Die Hintergrundfarben des Schaltflächenbilds wurden aktualisiert, sodass jetzt Material Design-Tokens verwendet werden. (Iba215)
- Die Komponenten „
Checkbox
“, „Switch
“ und „RadioButton
“ sind jetzt nur noch schreibgeschützt. Die Klickbehandlung wurde entfernt. Diese Komponenten werden voraussichtlich in(Split)ToggleButton
verwendet, wo der Klick verarbeitet wird. Die Komponenten sind jetzt deutlicher als reine Anzeigeelemente gekennzeichnet und nicht für die eigenständige Verwendung unter Wear vorgesehen. (I2322e)
Fehlerkorrekturen
- Wir haben in Wear Compose Material 3 Tokens für Bewegungswerte für die Dauer und Easings hinzugefügt. (I437cd)
- Wir haben einen Fehler in
ToggleButton
,SplitToggleButton
,Checkbox
,Switch
undRadioButton
behoben, sodass Ankündigungen für Bedienungshilfen 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
wird freigegeben. Version 1.0.0-alpha15 enthält diese Commits.
API-Änderungen
- Die Grundebene
SwipeToDismissBox
wurde inBasicSwipeToDismissBox
umbenannt. Dadurch kann zwischen der Grundebene und der Material3-EbeneSwipeToDismissBox
unterschieden werden. Letzterer ruft die Farben aus demMaterialTheme
ab, die in Gitternetzen verwendet werden sollen, und delegiert die verbleibende Implementierung an dieBasicSwipeToDismissBox
. (Ibecfc)
Fehlerkorrekturen
- Wir haben die Ebene mit dem Materialkern 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
wird freigegeben. Version 1.0.0-alpha14 enthält diese Commits.
API-Änderungen
- Wir haben den
indicatorStyle
-Parameter aus dem Material3-HorizontalPageIndicator
entfernt. Er wird stattdessen der Bildschirmform des Geräts (linear oder rund) hinzugefügt. (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
wird freigegeben. Version 1.0.0-alpha13 enthält diese Commits.
API-Änderungen
- Wir haben
TitleCard
ein optionales Untertitelfeld hinzugefügt. (Ifc45a) - Wir haben Material Design-Farbtokens für
TextButton
hinzugefügt. (I769dc)
Version 1.0.0-alpha12
20. September 2023
androidx.wear.compose:compose-material3:1.0.0-alpha12
wird freigegeben. Version 1.0.0-alpha12 enthält diese Commits.
API-Änderungen
- Wir haben
IconButton
aktualisiert, sodass nun Material Design-Tokens verwendet werden. (I3f137) - Wir haben
IconToggleButton
aktualisiert, sodass nun 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
wird freigegeben. Version 1.0.0-alpha11 enthält diese Commits.
Fehlerkorrekturen
- Wir haben die Typografie für Material3-Karten zu
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
wird freigegeben. Version 1.0.0-alpha10 enthält diese Commits.
Neue Funktionen
- Füge „
HorizontalPageIndicator
“ in die Wear Material3-Mediathek ein. (Ifee99)
API-Änderungen
- Aktualisieren Sie den Schaltflächencode, um Material3-Designtokens zu verwenden. (I92fe4)
- Sie deklarieren Wear Material 3 Stepper und Slider APIs als experimentell, da die Details der Benutzeroberfläche noch nicht fertiggestellt sind. (I84d54)
- Wir haben die Größen „
ExtraSmall
“ aus den rundenTextButton
undTextToggleButton
entfernt, da diese Größe nur fürIconButton
gilt. (Ibc7d5)
Fehlerkorrekturen
- Wir haben die Richtlinien zur Typografie für TextToggleButton aktualisiert, um LabelLarge für LargeButtonSize (Ib10fa) zu verwenden
- Wir haben die Richtlinien zur Typografie für TextButton aktualisiert, um LabelLarge für LargeButtonSize (I8f3a7) zu verwenden
- Wir haben die Mindestberührungszielgruppe für die Karte für Barrierefreiheit auf 48 dp festgelegt. (Ieb9b1)
- Demo für AppCard mit Bild hinzufügen, AppCard mit Hintergrunddemo entfernen (Id735f)
- Ein Fehler in runden Schaltflächen wurde behoben, bei dem Modifikatoren nicht richtig verkettet waren. (I5e162)
Version 1.0.0-alpha09
9. August 2023
androidx.wear.compose:compose-material3:1.0.0-alpha09
wird freigegeben. 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 , wie zuvor in den Kommentaren angegeben. (Icb401) - Wir haben die Typografie für Wear Material3 aktualisiert, um den aktuellen Material3-Richtlinien zu entsprechen. (I1bad6)
Fehlerkorrekturen
- Wir haben die Farben für
Button
,IconButton
undTextButton
im Einklang mit dem Material3-Design aktualisiert. (Ib2495) - Die Sichtbarkeit von Kästchenmarkierungen bei deaktivierten Status wurde korrigiert. (Ib25bf)
Version 1.0.0-alpha08
26. Juli 2023
androidx.wear.compose:compose-material3:1.0.0-alpha08
wird freigegeben. Version 1.0.0-alpha08 enthält diese Commits.
Neue Funktionen
- Wir haben die folgenden Auswahleinstellungen für Material3 hinzugefügt:
Switch
,Checkbox
,RadioButton
. (Ib918c) - Wir haben
IconToggleButton
undTextToggleButton
zu Material3 hinzugefügt, einer kreisförmigen Ein/Aus-Schaltfläche mit einer einzelnen Fläche für Symbol bzw. Text. Für verschiedene Größen vonToggleButton
empfehlen wir die Verwendung vonModifier.touchTargetAwareSize
mit den Größen der entsprechenden Ein-/Aus-Schaltflächen. (I9f015) - Wir haben
ListHeader
undListSubheader
zu unseren Material3-Komponenten hinzugefügt. (Ibaefe) - Wir haben Material3
SwipeToDismissBox
hinzugefügt, das die neue FoundationSwipeToDismissBox
aufruft und Standardfarbwerte aus dem Design bereitstellt. (I275fb) - Wir haben Material3
InlineSlider
zu Wear Compose hinzugefügt. Nutzende können damit eine Auswahl aus einem Bereich von Werten treffen. Der Auswahlbereich wird als Balken zwischen dem Mindest- und Höchstwert des Bereichs angezeigt, aus dem Nutzer einen einzelnen Wert auswählen können.InlineSlider
eignet sich ideal zum Anpassen von Einstellungen wie Lautstärke oder Helligkeit. (I7085f)
API-Änderungen
- Wir haben das Design von „Formen“ in Wear Material 3 aktualisiert und verwenden nun
RoundedCornerShape
anstelle von „Form“. (Idb133) - Wir haben die Höhenkonstanten für Button öffentlich gemacht (Idbfde).
- Aktualisierte API-Dateien, um die Kompatibilitätsunterdrückung zu erklären (I8e87a, b/287516207)
- Wir haben
InlineSliderColors
in Wear Compose Material 3 aktualisiert und enthalten nun öffentliche Konstruktor- und öffentliche Properties. (I6b632) - Wir haben alle Farbklassen in Wear Compose Material 3 aktualisiert und enthalten nun öffentliche Konstruktoren und öffentliche Properties. (I17702)
- Wir haben die Konstanten für horizontale und vertikale Abstände für Schaltflächen öffentlich gemacht. (Ieeaf7)
Fehlerkorrekturen
- Bei Bedarf wird die Höhe der Schaltfläche jetzt an Inhalte angepasst, die aufgrund der großen Schriftgröße gewachsen sind, um bei Bedarf Barrierefreiheit zu ermöglichen (Iaf302).
- Wir haben eine Reihe von Schaltflächen-Demos aktualisiert, um Probleme mit der Barrierefreiheit zu beheben. (I61ce9)
Stepper
undInlineSlider
unterstützen jetzt wiederholte Klicks bei langem Drücken, sodass Sie den Wert vonStepper
undInlineSlider
schnell erhöhen oder verringern können, indem Sie die Schaltflächen „+“ oder „-“ gedrückt halten (I27359).
Version 1.0.0-alpha07
21. Juni 2023
androidx.wear.compose:compose-material3:1.0.0-alpha07
wird freigegeben. Version 1.0.0-alpha07 enthält diese Commits.
Neue Funktionen
- Wir haben der Material 3-Bibliothek von Compose für Wear OS die Komponente „
Stepper
“ hinzugefügt. Sie ist ähnlich wie die vorherige Material-Version, berücksichtigt jedoch vom Entwicklerfeedback standardmäßig die Bereichssemantik. In den Fällen, in denen eine Bereichssemantik erforderlich ist, wirdModifier.rangeSemantics
bereitgestellt. IC39fD - Wir haben
curvedText
zur Material 3-Bibliothek von Compose für Wear OS hinzugefügt. (Ia8ae3)
Fehlerkorrekturen
wear.compose.foundation
wurde zu einer 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
wird freigegeben. Version 1.0.0-alpha06 enthält diese Commits.
Fehlerkorrekturen
- Wir haben
TextButton
aktualisiert, damit die Erweiterungsfunktion „toDisabledColor
“ für korrekte deaktivierte Alphawerte verwendet wird. (I814c8)
Version 1.0.0-alpha05
24. Mai 2023
androidx.wear.compose:compose-material3:1.0.0-alpha05
wird freigegeben. Version 1.0.0-alpha05 enthält diese Commits.
Neue Funktionen
- Material3 wurde um
TextButton
ergänzt, einer runden Schaltfläche mit einer einzigen Fläche für Text. Für verschiedene Größen vonTextButton
empfehlen wir die Verwendung vonModifier.touchTargetAwareSize
undExtraSmallButtonSize
,SmallButtonSize
,DefaultButtonSize
undLargeButtonSizeIcon
inTextButtonDefaults
. Das standardmäßigeTextButton
hat keinen Rahmen und einen transparenten Hintergrund für Aktionen mit geringer Betonung. Verwenden Sie für Aktionen, die eine hohe Betonung erfordern,filledTextButtonColors
. Für eine mittlere Betonung, umrisseneTextButton
, setzen Sie den Rahmen aufButtonDefaults.outlinedButtonBorder
. Für einen Mittelweg zwischen umrissen und ausgefüllten Elementen verwenden SiefilledTonalTextButtonColors
. (I667e4) - Wir haben
Card
,OutlinedCard
,AppCard
undTitleCard
zur Wear Compose-Material3-Bibliothek hinzugefügt.AppCard
undTitleCard
können auch wie umrissen mithilfe vonCardDefaults.outlinedCardColors
undCardDefaults.outlinedCardBorder
dargestellt werden(I80e72).
API-Änderungen
- Wir haben den Parameter „Button label“ an das Ende verschoben, um die nachgestellte Lambda-Syntax zu unterstützen, und den Parameter „role“ wurde entfernt, da er mit
Modifier.semantics
überschrieben werden kann.ButtonColors
-Konstruktoren sind jetzt öffentlich. (Ie1b6d)
Version 1.0.0-alpha04
10. Mai 2023
androidx.wear.compose:compose-material3:1.0.0-alpha04
wird freigegeben. Version 1.0.0-alpha04 enthält diese Commits.
Neue Funktionen
- Material3 wurde um
IconButton
ergänzt, einer runden Schaltfläche mit einer einzigen Fläche 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
. Wir stellen auchIconButtonDefaults.iconSizeFor
bereit, 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
wird freigegeben. Version 1.0.0-alpha03 enthält diese Commits.
API-Änderungen
- Wir haben die Material 3-Schaltfläche-Komponente hinzugefügt – unsere stadionförmige Schaltfläche, die in der Wear Compose-Material-Bibliothek früher als Chip bezeichnet wurde (sie wurde in „Button“ umbenannt, damit sie mit der Compose-Material 3-Bibliothek vereinheitlicht wird). Die Standardschaltfläche hat einen ausgefüllten Hintergrund und es gibt verschiedene Schaltflächenvarianten für
FilledTonal
(unauffälliger Hintergrund), Umriss (transparent mit schmalem Rahmen) und "Child" (transparenter Hintergrund ohne Rahmen, wird für zusätzliche Aktionen mit der geringsten Auffälligkeit verwendet). Runde 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
wird freigegeben. Version 1.0.0-alpha02 enthält diese Commits.
Fehlerkorrekturen
- Wir haben Wear Compose Material 3 ein
DefaultTextStyle
hinzugefügt, dasPlatformTextStyle.includeFontPadding
standardmäßig auf „true“ (die aktuelle Einstellung) setzt. So können wir in Zukunft das standardmäßige Deaktivieren des Schriftabstands mit den Bibliotheken im Tool „Compose“ synchronisieren. Weitere Informationen finden Sie im Hilfeartikel Probleme mit dem Textabstand in der Funktion „Hintergrund“ beheben. (I7e461)
Version 1.0.0-alpha01
22. März 2023
androidx.wear.compose:compose-material3:1.0.0-alpha01
wird freigegeben. Version 1.0.0-alpha01 enthält diese Commits.
Neue Funktionen
Material 3 ist die nächste Weiterentwicklung von Material Design und umfasst aktualisierte Themen und neu gestaltete Komponenten. Material 3 in Wear Compose ist mit der Material 3 Compose-Bibliothek auf Android kompatibel. Diese erste Alphaversion enthält frühe, funktionale Implementierungen für Folgendes:
Wir werden Wear Material (
androidx.wear.compose:compose-material
) und Wear Material 3 (androidx.wear.compose:compose-material3
) parallel weiter entwickeln. In zukünftigen Material 3-Versionen wird das Widget-Set um weitere bekannte Komponenten von Compose für Wear OS erweitert, z. B. Schaltflächen, Auswahlelemente und Schieberegler.Die Bibliotheken „Wear Material“ und „Wear Material 3“ schließen sich gegenseitig aus und sollten nicht in derselben App kombiniert werden, da sie sich auf unterschiedliche Themen beziehen, was zu unerwarteten Inkonsistenzen führen würde.
Version 1.4
Version 1.4.0-alpha07
17. April 2024
androidx.wear.compose:compose-*:1.4.0-alpha07
wird freigegeben. Version 1.4.0-alpha07 enthält diese Commits.
API-Änderungen
- Wir haben
Modifier.rotary
hinzugefügt, einen neuen Modifikator, der rotierende Ereignisse mit scrollbaren Containern verbindet, sodass Nutzer auf ihrem Wear OS-Gerät über eine Krone oder einen drehbaren Glasrand scrollen können. Darüber hinaus unterstützenScalingLazyColumn
und die Auswahl jetzt standardmäßig die Dreheingabe mit neuen Überlastungen, die den ParameterrotaryBehavior
zum Festlegen der Konfiguration für das Scrollen oder Andocken enthalten. Wenn der ParameterrotaryBehavior
auf „Andocken“ festgelegt ist, wird empfohlen, Snap auch über den ParameterflingBehavior
für das Scrollen durch Tippen bereitzustellen. I2ef6f - Drag-and-Fling-Quellen für
NestedScroll
werden durchUserInput
undSideEffect
ersetzt, um die erweiterte Definition dieser Quellen zu ermöglichen, die jetzt Animationen (Nebeneffekt) sowie Mausrad und Tastatur (UserInput) enthalten. (I40579) - Wir haben
SelectableChip
undSplitSelectableChip
hinzugefügt, um zwischen Ein-/Aus-Schaltflächen wieSwitch/Checkbox
und auswählbaren Steuerelementen wieRadioButton
zu unterscheiden. Dadurch werden die zuvor hinzugefügten Überlastungen vonToggleChip/SplitToggleChip
durchselectionControl
-Parameter ersetzt. (Ia0217) - Der Sichtbarkeitsmodifikator von
IndeterminateStrokeWidth
inProgressIndicatorDefaults
wurde auf „Öffentlich“ aktualisiert. (I5b5a4)
Version 1.4.0-alpha06
3. April 2024
androidx.wear.compose:compose-*:1.4.0-alpha06
wird freigegeben. Version 1.4.0-alpha06 enthält diese Commits.
Fehlerkorrekturen
- Im Rahmen der Migration von Horologist zur Migration des Rotary-Verhaltens auf AndroidX haben wir einen internen Entwurf der Drehunterstützung hinzugefügt. (I617d1)
- Im Rahmen der umfassenden Migration von Horologist zur Migration des Rotary-Verhaltens auf AndroidX haben wir einen internen Entwurf zur Unterstützung des haptischen Feedbacks hinzugefügt. (I5568a)
Version 1.4.0-alpha05
20. März 2024
androidx.wear.compose:compose-*:1.4.0-alpha05
wird freigegeben. Version 1.4.0-alpha05 enthält diese Commits.
API-Änderungen
- Die Properties
initialCenterItemIndex
undinitialCenterItemScrollOffset
vonScalingLazyListState
wurden veröffentlicht. (I0c616) - Wir haben
FullScreenStrokeWidth
vonProgressIndicatorDefaults
veröffentlicht. (Ibea23)
Fehlerkorrekturen
- Wir haben die Leistung von
PositionIndicator
verbessert, indem wir die Anzahl der Aufrufe vonScalingLazyColumn
auflayoutInfo
verringert haben. (Idc83d)
Version 1.4.0-alpha04
6. März 2024
androidx.wear.compose:compose-*:1.4.0-alpha04
wird freigegeben. 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 annimmt. Sollte mit dem SteuerelementRadioButton
verwendet werden, um eine auswählbare Semantik anstelle einer umschaltbaren Semantik für Bedienungshilfen bereitzustellen (I1d6d9) - Wir haben die Parameternamen für die neue
selectionControl
-Überlastung vononSelected
aufonSelect
fürToggleChip
undSplitToggleChip
aktualisiert (I1a971).
Version 1.4.0-alpha03
21. Februar 2024
androidx.wear.compose:compose-*:1.4.0-alpha03
wird freigegeben. Version 1.4.0-alpha03 enthält diese Commits.
API-Änderungen
- Der Wrapper
Modifier.inspectable
wurde verworfen. Da diese API mehr Entwertungen Ihres Modifizierers als nötig erstellt, wird davon abgeraten. Entwicklern wird empfohlen, die MethodeinspectableProperties()
fürModifierNodeElement
zu implementieren, wenn sie Modifikatoreigenschaften für Tools zur Verfügung stellen möchten. (Ib3236)
Fehlerkorrekturen
- Ein Dokumentationsfehler für
WearPreview*
-Annotationen wurde behoben. (Id526d)
Version 1.4.0-alpha02
7. Februar 2024
androidx.wear.compose:compose-*:1.4.0-alpha02
wird freigegeben. Version 1.4.0-alpha02 enthält diese Commits.
Fehlerkorrekturen
- Wir haben einen Fehler behoben, bei dem eine durch Wischen zum Reveal ausgelöste Aktion mit einer für ein Element festgelegten Aktion interagiert (und abgebrochen) konnte, indem mit dem Wischen eines anderen Elements begonnen wurde.(Ide059)
- Wir haben die
ListHeader
aktualisiert, um Höhenanpassungen zu unterstützen, wenn Inhalte eine höhere Höhe für große Schriftgrößen benötigen. (I7290c, b/251166127)
Version 1.4.0-alpha01
24. Januar 2024
androidx.wear.compose:compose-*:1.4.0-alpha01
wird freigegeben. Version 1.4.0-alpha01 enthält diese Commits.
Neue Funktionen
- Wir haben
SwipeDismissableNavHost
eine Eintragsanimation für In-App-Übergänge hinzugefügt.(cfeb79a) PositionIndicator
wird jetzt standardmäßig angezeigt, wenn zum ersten Mal ein Bildschirm aufgerufen wird. Diese Änderung wurde eingeführt, um die Qualitätsrichtlinien für Wear OS zu erfüllen. Dies bedeutet leider, dass Screenshot-Tests auf Bildschirmen mitPositionIndicator
aktualisiert werden müssen, da diePositionIndicator
zuvor nicht angezeigt worden wären. 419cef7
API-Änderungen
- Wir haben den Bibliotheken
wear:compose-material
undwear:compose-material3
eine neue Ripple API hinzugefügt, die das eingestellterememberRipple
ersetzt. Außerdem wird ein temporäresCompositionLocal
(LocalUseFallbackRippleImplementation
) hinzugefügt, um Material-Komponenten auf die verworfenenrememberRipple/RippleTheme
APIs zurückzusetzen. Diese wird in der nächsten stabilen Version entfernt und ist nur als vorübergehende Migrationshilfe gedacht, wenn du eine benutzerdefinierteRippleTheme
angibst. Informationen zur Migration und weitere Hintergrundinformationen zu dieser Änderung findest du unter developer.android.com. (af92b21) - Wir haben
ColorScheme
aktualisiert, sodass sie unveränderlich ist. Dadurch werden einzelne Farbaktualisierungen weniger effizient, aber die gängige Verwendung von Farben wird effizienter. Der Grund für diese Änderung ist, dass die Aktualisierung einzelner Farben bei den meisten Apps nicht mehr hauptsächlich verwendet werden würde. Dies ist immer noch möglich, aber es wird sich stärker neu zusammensetzen als zuvor, was wiederum die Anzahl der staatlichen Abonnements über den gesamten wesentlichen Code erheblich reduziert und sich auf die Initialisierungs- und Laufzeitkosten für mehr Standardanwendungsfälle auswirkt. f5c48b7 - Wear Material- und Wear-Material3-Komponenten, die ein
MutableInteractionSource
in ihrer API freigeben, wurden aktualisiert, sodass jetzt einMutableInteractionSource
verfügbar ist, für den Nullwerte zulässig sind, der standardmäßig auf null gesetzt ist. Hier gibt es keine semantischen Änderungen: Wenn Sie null übergeben, bedeutet das, dass dasMutableInteractionSource
nicht angezogen werden soll. Es wird bei Bedarf innerhalb der Komponente erstellt. Wenn Sie den Wert auf null ändern, können einige Komponenten niemals eineMutableInteractionSource
zuweisen. Andere Komponenten können eine Instanz nur bei Bedarf verzögert erstellen, was die Leistung dieser Komponenten verbessert. Wenn SieMutableInteractionSource
nicht verwenden, das 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 wird sichergestellt, dass die Daten beim Wechseln zu einem anderen Bildschirm gespeichert und beim Zurückkehren zum ursprünglichen Bildschirm wiederhergestellt werden. (5c80095)
Fehlerkorrekturen
- Die Einstellung
ReduceMotion
wurde aktualisiert, sodass ein Lebenszyklussensitiver Listener verwendet wird. 7c6b122 - Wir haben den Listener von
TouchExplorationStateProvider
so aktualisiert, dass er den Lebenszyklus berücksichtigt (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 für Bedienungshilfen 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
wird freigegeben. Version 1.3.1 enthält diese Commits.
Fehlerkorrekturen
- Wir haben einen Fehler behoben, bei dem eine durch Wischen zum Reveal ausgelöste Aktion durch Wischen eines anderen Elements mit einer ausgewählten Aktion interagiert (und abgebrochen) konnte. (ID059)
Version 1.3.0
24. Januar 2024
androidx.wear.compose:compose-*:1.3.0
wird freigegeben. Version 1.3.0 enthält diese Commits.
Wichtige Änderungen seit Version 1.2.0
- Die Klasse
SwipeToDismissBoxState
, die AufzählungSwipeToDismissValue
und die ErweiterungsfunktionModifier.edgeSwipeToDismiss
sind jetzt alle Teil des Paketsandroidx.wear.compose.foundation
, nicht mehr Teil des Paketsandroidx.wear.compose.material
. 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 Version 1.3.0-alpha02 wurde eine Änderung eingeführt, durch die die Höhe der Objekte
Chip
undToggleChip
erhöht wird, um die vom Nutzer ausgewählte Schriftskalierung zu unterstützen. Dies kann zu Überschneidungen führen. Um dieses Problem zu beheben, wird für die Formlarge
fürMaterialTheme
jetzt ein größerer Eckenradius verwendet (26 dp statt 24 dp). FürChip
- undToggleChip
-Objekte wird dieser neue Eckenradius verwendet, damit Inhalte an den Ecken von Chip undToggleChip
nicht abgeschnitten werden.- Die meisten
Chips
undToggleChips
bleiben aufgrund ihrer Standardhöhe von 52 dp unverändert.Chip
- undToggleChip
-Objekte, die mehrere Zeilen mit primärem oder sekundärem Labeltext enthalten oder deren Höhe überschrieben wurde, können jedoch dazu führen, dass Screenshot-Tests nicht funktionieren.
- Die meisten
Weitere Änderungen
Eine vollständigere Liste der Änderungen in Version 1.3.0 finden Sie in den Versionshinweisen zu Betaversion01.
Empfehlungen für die Implementierung
- Wenn Ihre App es Nutzern ermöglicht, den Inhalt des Bildschirms zu schwenken, z. B. in einer kartenbasierten App, deaktivieren Sie die Wischhandhabung, 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 bei Animationen zum Einblenden oder Ändern der Position in einer Scrollliste zu deaktivieren. - Während du darauf wartest, dass eine Medien-App die Inhalte zur Wiedergabe lädt, wird eine leere zusammensetzbare Funktion
Placeholder
angezeigt. - Wenn Sie bei Bedarf eine Sammlung von maximierbaren Elementen erstellen möchten, können Sie die experimentelle Klasse
ExpandableStateMapping
verwenden.
Version 1.3.0-rc01
10. Januar 2024
androidx.wear.compose:compose-*:1.3.0-rc01
wird freigegeben. Version 1.3.0-rc01 enthält diese Commits.
Fehlerkorrekturen
-
Wir haben die große Form „
MaterialTheme
“ so aktualisiert, dass ein abgerundeter Eckenradius von 26 dp verwendet wird. Sie wird jetzt von Chip undToggleChip
verwendet. Diese Änderung ist erforderlich, um Höhenanpassungen zu unterstützen, wenn Inhalte eine höhere Höhe für große Schriftgrößen erfordern. Andernfalls werden durch die vorhandene Stadionform Teile des Textinhalts abgeschnitten.Diese Änderung kann zu Fehlern bei Screenshot-Tests führen. (I2e6ae)
Version 1.3.0-beta02
13. Dezember 2023
androidx.wear.compose:compose-*:1.3.0-beta02
wird freigegeben. Version 1.3.0-beta02 enthält diese Commits.
Fehlerkorrekturen
- Die beabsichtigte Wischbewegung wurde in
BasicSwipeToDismissBox
wiederhergestellt. In einer früheren Version wurde diese Änderung so vorgenommen, dass der Schiebeteil 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
wird freigegeben. Version 1.3.0-beta01 enthält diese Commits.
Mit Version 1.3 Beta 01 von Compose für Wear OS wird angegeben, dass diese Version der Bibliothek vollständig funktionsfähig ist und die API gesperrt ist (sofern sie nicht als experimentell gekennzeichnet ist). Wear Compose 1.3 bietet die folgenden neuen Funktionen:
SwipeToDismissBoxState
,SwipeToDismissValue
undModifier.edgeSwipeToDismiss
wurden vonandroidx.wear.compose.material
zuandroidx.wear.compose.foundation
migriert, zusammen mit der zugrunde liegenden Implementierung des Wischens zum Schließen inBasicSwipeToDismissBox
. Dadurch kann die Gestenhandhabung für das Schließen durch Wischen unabhängig von Material Design verwendet werden, z. B. über dieSwipeDismissableNavHost
inandroidx.wear.compose.navigation
.SwipeToDismissBox
ausandroidx.wear.compose.material
wird weiterhin für die Verwendung mit Material Design empfohlen, da Farben aus derMaterialTheme
abgerufen und dann die verbleibende Implementierung anBasicSwipeToDismissBox
delegiert wird.SwipeDismissableNavHost
unterstützt jetzt einen neuenuserSwipeEnabled
-Parameter, mit dem die Wischhandhabung für Bildschirme deaktiviert werden kann, auf denen sie nicht benötigt wird.BasicSwipeToDismissBox
hat die Fokusbehandlung mitHierarchicalFocusCoordinator
verbessert.SwipeToReveal
hat neue zusammensetzbare Funktionen (SwipeToRevealCard
undSwipeToRevealChip
) in Material, die den empfohlenen UX-Richtlinien fürCard
undChip
entsprechen. Außerdem kann die sekundäre Aktion rückgängig gemacht werden.DefaultTextStyle
deaktiviert jetzt den Schriftabstand, damit er auf der Android-Plattform einheitlich ist.Chip
undToggleChip
passen jetzt ihre Höhe an Inhalte an, die aufgrund der großen Schriftgröße gewachsen sind, um die Barrierefreiheit zu verbessernPositionIndicator
verfügt jetzt über individuelle Spezifikationen für die Ein- und Ausblendungs- und Positionswechsel-Animationen. Aus Leistungsgründen empfehlen wir, das Einblenden und die Positionsänderung zu deaktivieren, wenn sie mit scrollbaren Listen verwendet werden.ExpandableStateMapping
bietet eine neue Möglichkeit,ExpandableStates
zu generieren, wenn sie on demand und nicht unbedingt mit einem@Composable
-Bereich erstellt werden müssen.- In
Placeholder
kann jetzt zurückgesetzt werden, wenn die Inhalte nicht mehr bereit sind. Außerdem wird die Einstellung „Bewegung reduzieren“ jetzt auf den Schimmereffekt und die Wischbewegungen aufPlaceholder
angewendet.
Bekannte Probleme
PositionIndicator
wird anfangs nicht angezeigt, wenn zum ersten Mal ein Bildschirm aufgerufen wird. Wir beabsichtigen, eine Änderung in einer frühen Alphaversion von 1.4 vorzunehmen, damit sie anfangs zu sehen sein wird, jedoch ohne Animation.
API-Änderungen
- Die Grundebene
SwipeToDismissBox
wurde inBasicSwipeToDismissBox
umbenannt. Dadurch kann zwischen der Grundebene und der MaterialebeneSwipeToDismissBox
deutlicher unterschieden werden. Letzterer ruft die Farben aus demMaterialTheme
ab, die in Gitternetzen verwendet werden sollen, und delegiert die verbleibende Implementierung an dieBasicSwipeToDismissBox
. (Ibecfc) rememberExpandableStateMapping
wurde als experimentell gekennzeichnet und die Leistung vonexpandableItem
wurde verbessert. (I5f6bc)- Wir haben die Klasse
SwipeToRevealAction
in der MaterialSwipeToReveal
Card und den Chip APIs durch eine Slot-basierte API mit den zusammensetzbaren FunktionenSwipeToRevealPrimaryAction
,SwipeToRevealSecondaryAction
undSwipeToRevealUndoAction
ersetzt. Im Beispielcode finden Sie Beispiele zur 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 durch begrenzt gebogenen Text bei begrenzter Größe ausgelöst wurde (I50efe).
- Wir haben einen potenziellen NaN-Absturz im Zusammenhang mit
curvedComposable
(I970eb) behoben - Wir haben die Entfernung der Highlight-Animation bei Positionsänderungen auf
PositionIndicator
rückgängig gemacht. (Ieb424) - Wir haben die Materialkernschicht für Material-Chip entfernt, um die Leistung zu verbessern. (If2dcb)
Version 1.3.0-alpha08
18. Oktober 2023
androidx.wear.compose:compose-*:1.3.0-alpha08
wird freigegeben. Version 1.3.0-alpha08 enthält diese Commits.
API-Änderungen
- Wir haben
PositionIndicator
-Überlastungen einzelne Flags hinzugefügt, um verschiedene Animationen zu steuern:showFadeInAnimation
,showFadeOutAnimation
undshowPositionAnimation
. Die vorherige API wurde eingestellt und leitet Aufrufe an die neue weiter. WennPositionIndicator
mit einer scrollbaren Liste verwendet wird, empfehlen wir aus Leistungsgründen und aus Gründen der UX-Einheitlichkeit, die FlagsshowFadeInAnimation
undshowPositionAnimation
zu deaktivieren. WennPositionIndicator
als eigenständiges Signal verwendet wird, z. B. für die Lautstärkeänderung, empfehlen wir, alle drei Animationen zu aktivieren. (I44294) - Nach der Migration der Funktion „Zum Schließen wischen“ zu
wear.compose.foundation
haben wir MaterialSwipeToDismissBoxState
,SwipeToDismissValue
undedgeSwipeToDismiss
eingestellt. Bitte durchwear.compose.foundation
-Entsprechungen ersetzen. (Iee8c9)
Fehlerkorrekturen
- Wir haben die Basisprofile für das Fundament, Material und die Navigationsbibliotheken aktualisiert. (Idb060)
- Wir haben eine Verhaltensänderung für
PositionIndicator
rückgängig gemacht, die in einer vorherigen Änderungsliste eingeführt wurde, sodassPositionIndicator
beim ersten Anzeigen eines Bildschirms animiert war. Wir beabsichtigen eine ähnliche Änderung in einer frühen Alphaversion von 1.4, sodassPositionIndicator
zunächst angezeigt wird, jedoch ohne Animation. (I41843) - Wir haben einige Leistungsprobleme in
PositionIndicator
behoben. (I1c654, b/302399827) - Die Leistung der Standardimplementierung des Anbieters der Touchscreen-Erkundung wurde so optimiert, dass auf
State<Boolean>
und nicht auf dem abgeleiteten Status zurückgegriffen wird. (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
wird freigegeben. Version 1.3.0-alpha07 enthält diese Commits.
API-Änderungen
- Wir haben
PositionIndicator
einzelne Flags hinzugefügt, um verschiedene Animationen zu steuern:showFadeInAnimation
,showFadeOutAnimation
undshowPositionAnimation
. Die vorherige API wurde eingestellt und leitet Aufrufe an die neue weiter. WennPositionIndicator
mit einer scrollbaren Liste verwendet wird, empfehlen wir aus Leistungsgründen und aus Gründen der UX-Einheitlichkeit, die FlagsshowFadeInAnimation
undshowPositionAnimation
zu deaktivieren. WennPositionIndicator
als eigenständiges Signal verwendet wird, z. B. für die Lautstärkeänderung, empfehlen wir, alle drei Animationen zu aktivieren. (Ia2d63)
Fehlerkorrekturen
- Wir haben Verbesserungen an der Wischgeste vorgenommen, um Bewegungen anzuzeigen. Wir haben dem primären Aktionstext eine Überblendungsanimation hinzugefügt und die sekundäre Aktion ausgeblendet bzw. die Symbolskalierung bei vollständiger Wischbewegung geändert. (Ib7223)
- Wir empfehlen, Aktionen beim Wischen zum Anzeigen zugänglich zu machen. Außerdem haben wir benutzerdefinierte Bedienungshilfen zu unseren „Wischen zum Anzeigen“-Beispielen hinzugefügt. (I42224)
- Wir haben die Leistung von
SwipeToDismissBox
verbessert. Dazu gehört auch eine Refaktorierung, damit die ursprüngliche Logik keine Neuzusammensetzung auslöst.SwipeToDismissBox
wird jetzt im Vollbildmodus gezeichnet. (Ie0aa2) - Ein Fehler, durch den das
PositionIndicator
fälschlicherweise verschwunden ist, wurde behoben. (I2091a) - Leistung von
PositionIndicator
durch Optimierung von Neuzusammensetzungen verbessert. In der Folge wurden neue Flags zur Steuerung der Animationen (fadeIn
,fadeOut
undpositionChange
) hinzugefügt (siehe API-Änderungen) (Ifac7d). - Wir haben MicroBenchmark-Tests für
PositionIndicator
(Idf875) hinzugefügt.
Version 1.3.0-alpha06
20. September 2023
androidx.wear.compose:compose-*:1.3.0-alpha06
wird freigegeben. Version 1.3.0-alpha06 enthält diese Commits.
Fehlerkorrekturen
Modifier.edgeSwipeToDismiss
wird jetzt mitSwipeToReveal
unterstützt. (I95774, b/293444286)- Wir haben Beispiele für Material
SwipeToRevealChip
undSwipeToRevealCard
hinzugefügt. (Ieb974) - Wir haben die Basisprofile für die Bibliotheken „Wear Compose Foundation“ und „Material“ aktualisiert. (I1dd1f)
Version 1.3.0-alpha05
6. September 2023
androidx.wear.compose:compose-*:1.3.0-alpha05
wird freigegeben. Version 1.3.0-alpha05 enthält diese Commits.
Fehlerkorrekturen
- Wir haben die Funktion „Zum Anzeigen wischen“ hinzugefügt, sodass jeweils nur ein Element gezogen werden kann. (I3cd7a)
- Die Dokumentation von
ScalingLazyColumnDefaults
wurde verbessert, um sie besser an das tatsächliche Verhalten anzupassen. (I886d3)
Version 1.3.0-alpha04
23. August 2023
androidx.wear.compose:compose-*:1.3.0-alpha04
wird freigegeben. Version 1.3.0-alpha04 enthält diese Commits.
Neue Funktionen
- Für die sekundäre Aktion von
SwipeToReveal
kann die Aktion rückgängig gemacht werden. (I7a22d)
API-Änderungen
- Füge „
HorizontalPageIndicator
“ in die Wear Material3-Mediathek ein. (Ifee99) - Die Vorschautools für Wear Compose wurden so aktualisiert, dass die
androidx.wear.tooling.preview
-Bibliothek verwendet werden kann. (Ib036e)
Fehlerkorrekturen
- Ein Fehler in runden Schaltflächen wurde behoben, bei dem Modifikatoren nicht richtig verkettet waren. (I5e162)
Version 1.3.0-alpha03
9. August 2023
androidx.wear.compose:compose-*:1.3.0-alpha03
wird freigegeben. Version 1.3.0-alpha03 enthält diese Commits.
API-Änderungen
- Wir haben zwei neue zusammensetzbare Funktionen in „Material“ hinzugefügt, um
SwipeToReveal
mit Kacheln und Chips zu implementieren. Diese zusammensetzbaren Funktionen folgen den empfohlenen UX-Richtlinien für die Komponente und erleichtern Entwicklern die Implementierung vonSwipeToReveal
mit den vorhandenen Komponenten in Wear Material. (I7ec65) - Wir haben die
FloatRange
-Annotationen als API-Einschränkungen aktiviert, die zuvor in den Kommentaren erwähnt wurden. (Icb401)
Fehlerkorrekturen
- Die anfängliche Scroll-Logik von
ScalingLazyColumn
wurde innerhalb vononGloballyPositioned()
verschoben. (Ic90f1) - Wir verwenden jetzt
drawWithCache
inPositionIndicator
,ProgressIndicator
undSelectionControls
, um die Strichzuordnungen zu optimieren. (I5f225, b/288234617) - Die Sichtbarkeit von Kästchenmarkierungen bei deaktivierten Status wurde korrigiert. (Ib25bf)
- Wir haben
Placeholder
aktualisiert, um das Zurücksetzen so zu ermöglichen, dass der Platzhalter angezeigt wird, wenn der Inhalt nicht mehr den Status „Bereit“ hat. (ibd820) - Wir haben Fehler in unzuverlässigen
Placeholder
-Tests behoben (Idb560)
Version 1.3.0-alpha02
26. Juli 2023
androidx.wear.compose:compose-*:1.3.0-alpha02
wird freigegeben. 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 bei Bedarf erstellt werden müssen, nicht unbedingt im Bereich@Composable
(Iff9e0). SwipeToDismissBox
wurde vonandroidx.wear.compose.material
zum Paketandroidx.wear.compose.foundation
migriert. (I275fb)- Die API-Dateien wurden aktualisiert, um die Kompatibilitätsunterdrückung zu erklären. (I8e87a, b/287516207)
- Wir haben die Höhenkonstanten für
Chip
,CompactChip
undToggleChip
veröffentlicht (Idbfde). - Wir haben die horizontalen und vertikalen Abstände für
Chip
undCompactChip
öffentlich gemacht. (Ieeaf7) - Es wurde eine Funktion zum Deaktivieren der Wischhandhabung in
SwipeDismissableNavHost
über den neuen ParameteruserSwipeEnabled
hinzugefügt. (Id2a0b, b/230865655) - Wir haben die Wear Compose-Navigationsbibliothek aktualisiert, um das neue
SwipeToDismissBox
der Wear Compose Foundation zu verwenden. (I4ff8e)
Fehlerkorrekturen
- Wir haben einen Fehler bei der Z-Reihenfolge behoben, bei dem in
expandedItem
nach dem Klicken auf eine Schaltfläche nicht der richtige Inhalt angezeigt wurde, wenn eine Schaltfläche mit entsprechenden Schaltflächen versehen war. (I1899d, b/289991514) - Verbessern Sie die Fokusbehandlung von
SwipeToDismissBox
(und damitSwipeDismissableNavHost
) mithilfe vonHierarchicalFocusCoordinator
(I45362, b/277852486) - Die Gestenhandhabung in
SwipeableV2
wurde korrigiert . (I89737) - Wir haben die Basisprofile für unsere Version 1.2 fertiggestellt. (Id5740)
- Nach der Migration von
SwipeToDismissBox
zu „Foundation“ leitet die Material-SwipeToDismissBox
-Implementierung nun an Foundation weiter und stellt Standardfarbwerte aus dem Design bereit.(If8451) ListHeader
wurde eine Überschriftensemantik hinzugefügt. (Ic5420)Chip
undToggleChip
passen jetzt bei Bedarf ihre Höhe an Inhalte an, die aufgrund großer Schriftarten größer wurden. (Iaf302)- Ein Fehler in der semantischen Rolle des antippbaren Bereichs von
SplitToggleChip
im Hinblick auf die Barrierefreiheit wurde behoben. (Ieed3a) - Mit der Einstellung „Bewegung reduzieren“ werden jetzt der Schimmereffekt und die Wischbewegung auf Platzhaltern deaktiviert. (I91046)
Stepper
undInlineSlider
unterstützen jetzt wiederholte Klicks bei langem Drücken. Du kannst die Werte fürStepper
undInlineSlider
also 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
wird freigegeben. Version 1.3.0-alpha01 enthält diese Commits.
Fehlerkorrekturen
- Wie in
1.2.0-alpha07
und1.2.0-alpha10
angekündigt, ändern wir nunDefaultTextStyle
, um den Schriftabstand zu deaktivieren, damit er auf der Android-Plattform einheitlich ist. Dadurch werden einige Fälle von Text-Clipping mit großen Schriftgrößen behoben und es kann sich auch auf Bildschirmlayouts auswirken, sodass Screenshot-Tests aktualisiert werden müssen. Hier sehen Sie beispielsweise Text-Clipping (Ic6a86).
- Sie ist nicht mehr vorhanden, wenn der Textabstand deaktiviert ist:
- Wir haben
wear.compose.foundation
aktualisiert und sind nun eine API-Abhängigkeit vonwear.compose.material
(I72004, b/285404743). - Wir haben einen Fehler in
SwipeToDismissBox
behoben. Die Tasten für Hintergrund und Inhalt werden jetzt an den Speicherblock übergeben, sodass neue Modifikatoren erstellt werden, wenn sich der Inhalt oder Hintergrund ändert. (Ib876c, b/280392104) - Wir haben
TimeText
aktualisiert, sodass bei der Auswahl des 12- oder 24-Stunden-Formats die Sprache verwendet wird. (If4a3d) - Wir haben eine Inkonsistenz der
SwipeToDismissBox
contentScrimColor
-Standardparameter behoben. (I2d70f) - Wir haben die Bewegungsbehandlung in
SwipeToReveal
verbessert. (I28fb7)
Bekannte Probleme
- Die Unterstützung von von Nutzern konfigurierten Schriftgrößen ist eine Anforderung für die Barrierefreiheit. Wir wissen, dass mehrzeilige Chips bei der Darstellung mit großen Schriftgrößen zu Textausschnitten führen können. Deshalb aktualisieren wir den Chip in einer frühen Alphaversion von 1.3, 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
wird freigegeben. Version 1.2.1 enthält diese Commits.
Fehlerkorrekturen
- Ein Fehler wurde behoben, bei dem das
PositionIndicator
fälschlicherweise verschwunden ist. 7a167f
Version 1.2.0
9. August 2023
androidx.wear.compose:compose-*:1.2.0
wird freigegeben. 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 finden Sie in den Versionshinweisen zu Compose for Wear OS 1.2 Beta01.
Version 1.2.0-rc01
26. Juli 2023
androidx.wear.compose:compose-*:1.2.0-rc01
wird freigegeben. Version 1.2.0-rc01 enthält diese Commits.
Fehlerkorrekturen
- Wir haben die Basisprofile für unsere Version 1.2 (Id5740) fertiggestellt.
Version 1.2.0-beta02
7. Juni 2023
androidx.wear.compose:compose-*:1.2.0-beta02
wird freigegeben. Version 1.2.0-beta02 enthält diese Commits.
Neue Funktionen
- Wir haben die neue experimentelle Variable
LocalReduceMotion
CompositionLocal
hinzugefügt, die Skalierung und Ausblenden aufScalingLazyColumn
deaktiviert. (I58024)
Fehlerkorrekturen
- Wir haben die Basisprofile für das Fundament und die Materialbibliotheken aktualisiert(I4725d).
- Wir haben eine Inkonsistenz in den Standardwerten für
SwipeToDismissBox
-contentScrimColor
-Parameter (I2d70f) behoben. - Wir haben den Standardwert von
DefaultTextStyle
für die EinstellungIncludeFontPadding
(I737ed) korrigiert.
Version 1.2.0-beta01
24. Mai 2023
androidx.wear.compose:compose-*:1.2.0-beta01
wird freigegeben. Version 1.2.0-beta01 enthält diese Commits.
Funktionen von Compose für Wear OS 1.2
Mit dem Release 1.2 Beta01 von Compose für Wear OS wird angegeben, dass diese Version der Bibliothek vollständig funktionsfähig ist und die API gesperrt ist (sofern sie nicht als experimentell gekennzeichnet ist). Wear Compose 1.2 bietet folgende neue 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 von maximierbaren Elementen undexpandableButton
, um das Erstellen einer Schaltfläche zu vereinfachen, die nach dem Maximieren des Inhalts minimiert wird.HierarchicalFocusCoordinator
: Mit dieser experimentellen zusammensetzbaren Funktion können Unterstrukturen der Komposition als „Fokus aktiviert“ oder „Fokus deaktiviert“ gekennzeichnet werden.Picker
: Die API enthält jetztuserScrollEnabled
, um zu steuern, ob die Auswahl zum Scrollen durch den Nutzer aktiviert werden kann.PickerGroup
: eine neue zusammensetzbare Funktion, mit der mehrere Auswahlelemente zusammen verarbeitet werden können. Sie verwaltet den Fokus zwischen den Auswahlelementen mithilfe derHierarchicalFocusCoordinator
API und ermöglicht die automatische Zentrierung von Auswahlelementen.Placeholder
: Wir haben Änderungen an den „Schimmern“- und „Wischen“-Animationen vorgenommen. Der Effekt „Auswischen“ wird jetzt sofort angewendet, wenn der Inhalt bereit ist.ScalingLazyColumn
: Wir habenScalingLazyColumn
und die zugehörigen Kurse vonandroidx.wear.compose.material.ScalingLazyColumn
zuandroidx.wear.compose.foundation.lazy.ScalingLazyColumn
migriert. Führe eine Aktualisierung durch, um dieFoundation.Lazy
-Version zu verwenden.SwipeToReveal
: Wir haben experimentelle Unterstützung für das Wischen zum Anzeigen hinzugefügt, um auf sekundäre Aktionen zuzugreifen und das bestehende Muster für langes Drücken zu ergänzen.Stepper
– hat jetzt eine Überlastung mit einem zusätzlichenenableRangeSemantics
-Parameter, um das Deaktivieren der Standardbereichssemantik zu vereinfachen.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 gibt es die folgenden Anmerkungen und Anmerkungen in mehreren Vorschauen:WearPreviewFontScales
zeigt eine Vorschau der zusammensetzbaren Funktionen auf einem Wear-Gerät mit mehreren Schriftgrößen an, währendWearPreviewDevices
eine Vorschau der zusammensetzbaren Funktionen auf verschiedenen Wear-Geräten anzeigt.- Wir haben Wear Compose ein
DefaultTextStyle
hinzugefügt, das diePlatformTextStyle.includeFontPadding
-Eigenschaft auf „true“ setzt (das ist die aktuelle Einstellung). Auf diese Weise können wir das standardmäßige Deaktivieren des Textabstands mit den Compose-Bibliotheken in einer frühen Alphaversion von 1.3 synchronisieren. Weitere Informationen finden Sie unter 1.2.0-alpha10.
Neue Funktionen
- Wir haben experimentelle Unterstützung für deaktivierte Skalierung und verblassende 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 werden, das ausgelöst wurde, wenn der Backstack leer war. (I04a81, b/277700155)
Version 1.2.0-alpha10
10. Mai 2023
androidx.wear.compose:compose-*:1.2.0-alpha10
wird freigegeben. Version 1.2.0-alpha10 enthält diese Commits.
Neue Funktionen
- Wir unterstützen jetzt „Zum Aufdecken wischen“, um auf sekundäre Aktionen zuzugreifen. Dieses Muster ergänzt das Muster „Langes Drücken“, also die bestehende Art und Weise, wie Nutzende (unterschiedliche) sekundäre Aktionen erkennen können. (I60862)
API-Änderungen
- Wir haben den zusammensetzbaren Funktionen für Aktionen in
SwipeToReveal
RevealScope
hinzugefügt. Dadurch erhalten Sie Zugriff auf den Offset, bei dem zusätzliche Aktionen angezeigt werden. (I3fd56)
Fehlerkorrekturen
- Problem behoben, bei dem
ScalingLazyColumn
nach dem Schlieren in Wear API 33 hängen geblieben ist (Ic4599) - Wir haben einige Leistungsverbesserungen an
PositionIndicator
vorgenommen, um Verzögerungen zu reduzieren. (I35e92) - Wir haben einen Fehler in dem Chip und in
CompactChip
behoben, bei dem die semantische Rolle nicht mehr aufRole.Button
festgelegt wurde. (I93f91, b/277326264)
Bekannte Probleme
Wir haben einen Fehler in Android Studio gefunden, der zu einem Fehler beim Rendern der Vorschau führt, wenn er mit @WearPreviewDevice und @WearPreviewFontScales gekennzeichnet ist. Eine Korrektur ist demnächst geplant. Bitte beachte, dass die anderen Wear-Vorschauanmerkungen in Android Studio Giraffe 2022.3.1 und höher wie vorgesehen funktionieren.
In Version 1.2.0-alpha07 wurde „DefaultTextStyle“ zu Wear Compose hinzugefügt und der bestehende Wert für „PlatformTextStyle.includeFontPadding“ auf „true“ beibehalten. Informationen zum Hintergrund finden Sie unter Korrektur der Schriftabstände in Compose. Wir werden den DefaultTextStyle ändern, um in einer frühen Alphaversion 1.3 den Schriftabstand zu deaktivieren, damit er auf der gesamten Android-Plattform einheitlich ist. Dadurch werden einige Fälle von Textclips mit großen Schriftgrößen behoben und es kann sich auch auf Bildschirmlayouts auswirken, sodass Screenshot-Tests aktualisiert werden müssen. Bei großen Schriftgrößen sehen wir hier Textclips:
- Sie ist nicht mehr vorhanden, wenn der Textabstand deaktiviert ist:
Sie können die neue Einstellung jetzt übernehmen, indem Sie die Typografie in Ihrem Design überschreiben. Weitere Informationen finden Sie hier.
Version 1.2.0-alpha09
19. April 2023
androidx.wear.compose:compose-*:1.2.0-alpha09
wird freigegeben. 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 den Demos 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
wird freigegeben. Version 1.2.0-alpha08 enthält diese Commits.
API-Änderungen
ExpandableItemsState
wurde 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 haben wir die Beispiele für Expandable-Anzeigen aktualisiert. (Iae309)
Fehlerkorrekturen
- Die maximierbaren Beispiele wurden verbessert, um mehr Möglichkeiten aufzuzeigen. Die Animation von
expandableItem
wurde geändert, damit der Inhalt in der Animation in der Mitte bleibt. (I2f637) ToggleControls
wurde aktualisiert, um zusätzliche Neuzusammensetzungen zu vermeiden, wenn die Farben über die Option „Status“ manuell animiert werden. (I5d319)
Version 1.2.0-alpha07
22. März 2023
androidx.wear.compose:compose-*:1.2.0-alpha07
wird freigegeben. Version 1.2.0-alpha07 enthält diese Commits.
API-Änderungen
- Wir haben die in 1.2.0-alpha06 hinzugefügten Expandable-Artikelkomponenten vom Material- zur Grundstruktur verschoben, da sie keinen aussagekräftigen Verweis auf die
MaterialTheme
hatten. (Ib0525)
Fehlerkorrekturen
- Wir haben einen Absturz behoben, der auf einem Bildschirm mit
PickerGroup
aufgetreten ist. Dabei wurde dafür gesorgt, dassPickerGroup
den Fokus korrekt verarbeitet, wenn kein Picker im Fokus ist. In unseren Auswahldemos wird jetzt auch RSB-Scrolling unterstützt. (If8c19) - Wir haben die Dialogübergänge verbessert. Der Übergang des Intros läuft jetzt flüssiger, wie er zum Outro-Übergang passt. (Ib5af9)
- Wir haben Wear Compose ein
DefaultTextStyle
hinzugefügt, das diePlatformTextStyle.includeFontPadding
-Eigenschaft auf „true“ setzt (das ist die aktuelle Einstellung). Auf diese Weise können wir das standardmäßige Deaktivieren des Schriftabstands in Zukunft mit den Bibliotheken in „Compose“ synchronisieren. Informationen zum Hintergrund finden Sie unter Korrektur der Schriftabstände in der Funktion „Schreiben“. (I2aee8) - Eine Abhängigkeit von der Vorschau von
UpsideDownCake
über activity-compose, das die Veröffentlichung von Apps im Google Play Store blockiert hat, wurde rückgängig gemacht. (I6443d)
Version 1.2.0-alpha06
8. März 2023
androidx.wear.compose:compose-*:1.2.0-alpha06
wird freigegeben. Version 1.2.0-alpha06 enthält diese Commits.
API-Änderungen
- Fügen Sie die Komponente
CurvedBox
hinzu. Damit werden die Komponenten in der kurvenreichen Welt übereinander platziert. (I29200) - Erweiterbare Elemente wurden hinzugefügt – zwei neue Komponenten zur Unterstützung einer Gruppe maximierbarer Elemente in einem
ScalingLazyColumn
oder einem maximierbaren Element wie Text, bei dem die Anzahl der Zeilen erweitert wird. (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 gibt es die folgenden Anmerkungen und Anmerkungen in mehreren Vorschauen:WearPreviewFontScales
zeigt eine Vorschau der zusammensetzbaren Funktionen auf einem Wear-Gerät mit mehreren Schriftgrößen an, währendWearPreviewDevices
eine Vorschau der zusammensetzbaren Funktionen auf verschiedenen Wear-Geräten anzeigt. Wenn Sie diese Vorschauen verwenden möchten, benötigen Sie die neueste Version von Android Studio (Giraffe Canary 6) oder höher. Sollten diese Anmerkungen nicht Ihren Zweck erfüllen, kann die Vorabversion dennoch verwendet werden und unterstützt weitere Anpassungen über Parameter. (I397ff) - Wir haben
HierarchicalFocusCoordinator
als experimentell gekennzeichnet, da es aufgrund seiner weiten Gültigkeit derzeit als Kandidat für den Wechsel in die Hauptbibliotheken für das Zusammenstellen eingestuft wird. (I3a768)
Fehlerkorrekturen
- Ein Fehler in
HierarchicalFocusCoordinator
wurde behoben, bei dem die für denfocusEnabled
-Parameter übergebene Lambda-Funktion geändert wurde. Wir verwenden jetzt das neue Lambda korrekt. (Icb353) - Wir haben die standardmäßig deaktivierte Inhaltsfarbe in „Hintergrund“ geändert, wenn Primärfarben als Hintergrund in
Button
,CompactButton
,Chip
,CompactChip
undToggleButton
verwendet werden. Dadurch wird der Kontrast für die Barrierefreiheit verbessert. (I527cc)
Version 1.2.0-alpha05
22. Februar 2023
androidx.wear.compose:compose-*:1.2.0-alpha05
wird freigegeben. 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 der Wert auf „true“ gesetzt ist, sind die von der übergeordneten zusammensetzbaren Funktion übergebenen Mindesteinschränkungen für diePickerGroup
zulässig. Wenn der Wert auf „false“ gesetzt ist, setztPickerGroup
die Mindesteinschrä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, um von rechts nach links ausgerichtete Layouts zu unterstützen. (Ia4359) - Screenshot-Tests für rechtsläufiges Layout in
HorizontalPageIndicator
(I6fbb8) hinzugefügt - Zusätzliche Tests zu
SwipeDismissableNavHostTest
hinzugefügt, dieTestNavHostController
verwenden (I61d54)
Version 1.2.0-alpha04
8. Februar 2023
androidx.wear.compose:compose-*:1.2.0-alpha04
wird freigegeben. Version 1.2.0-alpha04 enthält diese Commits.
Neue Funktionen
PickerGroup
für die gemeinsame Verarbeitung mehrerer Auswahlelemente mithilfe der Focus API Sie steuert den Fokus zwischen den verschiedenen Auswahlelementen, ermöglicht die automatische Zentrierung der Auswahl anhand von Parametern und ermöglicht es Entwicklern, den Fokus zwischen verschiedenen Auswahlelementen zu ändern, während die Ereignisse aus der Gruppe verarbeitet werden. Im TalkBack-Modus verwaltet dasPickerGroup
den TalkBack-Fokus, indem der Fokus auf die ausgewählte Auswahl aus der Gruppe verschoben wird. (I60840)
API-Änderungen
- Wir haben dem Stepper eine Überlastung mit einem zusätzlichen
enableRangeSemantics
-Parameter hinzugefügt, um die Deaktivierung der Standardbereichssemantik (Ia61d4) zu vereinfachen.
Fehlerkorrekturen
- Zulassen, dass
ScalingLazyColumn
auf einer horizontal scrollbaren Seite verschachtelt wird (Iec3f8, b/266555016) - Verbesserung von Stepperkdocs und
StepperTest
-Tests zur Bereinigung. (Ic118e) - Aktualisierung der
androidx.navigation
-Abhängigkeit auf Version 2.5.3 (If58ed)
Version 1.2.0-alpha03
25. Januar 2023
androidx.wear.compose:compose-*:1.2.0-alpha03
wird freigegeben. 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. Informationen zur Migration finden Sie in diesem Beispiel. Dieser neue Ort entspricht eher dem voncompose.foundation.lazy.LazyColumn
und ist natürlicher, da es sich nicht um eine bestimmte Material-Komponente handelt. Diese Änderung erfolgt nun in Vorbereitung auf eine neue Material3-Bibliothek, an der wir parallel zur 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. Aktualisieren Sie sie aufFoundation.Lazy ScalingLazyColumn
. Zusätzlich wurdeScalingLazyListLayoutInfo
das Feld „anchorType
“ hinzugefügt. (I29d95)ScalingLazyColumn
wurde im Wear Compose Material-Paket (I16d34) als verworfen markiert- Wir haben den
ScrollAway
-Modifikator aktualisiert, sodassScalingLazyListState
aus Wear Compose-Foundation.Lazy
verwendet wird. Die Überlastung, dieScalingLazyListState
durch Wear Compose-Material verursachte, wurde eingestellt. (Ifc42c) - Wir haben die Dialog APIs aktualisiert, um
ScalingLazyListState
vonFoundation.Lazy
zu verwenden, und die Überlastungen eingestellt, die MaterialScalingLazyListState
(Ic8960) verwendet haben. - 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 unnötige Neuzusammensetzungen in
ScalingLazyListState.centerItemIndex
verursachte. Wir haben dafür gesorgt, dass Updates nur übertragen 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 aktualisiert, sodass ihre Entsprechungen ausFoundation.Lazy
(I38aab) verwendet werden - Wir haben einige Probleme in den Auswahltests behoben und weitere Tests für das Scrollen mit Offset hinzugefügt (I6ac34).
- Wir haben die
ScalingLazyColumn
-Integrationsdemos so migriert, dass sie vonFoundation.Lazy
anstelle von MaterialScalingLazyColumn
(Ic6caa) abhängig sind. - Wir haben unserer
DatePicker
-Demo (I961cd) optionalefromDate/toDate
-Parameter hinzugefügt.
Version 1.2.0-alpha02
11. Januar 2023
androidx.wear.compose:compose-*:1.2.0-alpha02
wird freigegeben. Version 1.2.0-alpha02 enthält diese Commits.
API-Änderungen
- In den Tests der Android Compose-UI werden jetzt Layoutkarten für jeden Frame ausgeführt, wenn Frames in den Leerlauf versetzt werden (z.B. über
waitForIdle
). Dies kann sich auf Tests auswirken, die auf einzelne Frames von Layoutanimationen zugreifen. (I8ea08, b/222093277) - Der Parameter
minLines
wird Wear Text hinzugefügt, um ein konsistentes Verhalten mitBasicText
(I24874) zu gewährleisten. CompactChipTapTargetPadding
wurde veröffentlicht, sodass sie in der Dokumentation angezeigt wird (If1e70, b/234119038)
Fehlerkorrekturen
- Plattformübergreifende Builds für
wear.compose
-Pakete deaktivieren (Iad3d7) - Kdocs für
scrollToOption
korrigieren (I6f9a0) PlaceholderState.rememberPlaceholderState()
wurde aktualisiert, umrememberUpdatedState
zu verwenden, sodass der Status aktualisiert wird, wenn das Lambda-ElementonContentReady
aktualisiert wird. (I02635, b/260343754)- Wir haben ein Problem mit Textjitter in der Komponente „
Picker
“ behoben, indem wir die neue Erstellungsstrategie vonModifier.graphicsLayer
nutzen. (I99302) - Wir haben einen Fehler behoben, der in unserer
DatePicker
-Demo (I660bd) zu Flackern führte. - Wir haben die Barrierefreiheit der Demos zur 12-Stunden-Zeit- und Datumsauswahl verbessert (I05e12).
- Wir haben unsere Demos zur Uhrzeit- und Datumsauswahl aktualisiert, damit die Auswahl nicht von RSB-Änderungen beeinflusst wird, wenn sie nicht ausgewählt sind (I4aecb).
Version 1.2.0-alpha01
7. Dezember 2022
androidx.wear.compose:compose-*:1.2.0-alpha01
wird freigegeben. Version 1.2.0-alpha01 enthält diese Commits.
Neue Funktionen
- Wir haben die experimentelle Platzhalterfunktion aktualisiert, sodass der Effekt „Wischen aus“ sofort angewendet wird, wenn der Inhalt bereit ist, anstatt auf den Beginn der nächsten Animationsschleife zu warten. Wir haben auch einige Aktualisierungen an den Schimmer- und Wischeffekt-Animationen vorgenommen. (I5a7f4)
API-Änderungen
- Wir haben eine
HierarchicalFocusCoordinator
zusammensetzbare Funktion hinzugefügt, mit der Unterstrukturen der Komposition als aktiviert oder deaktiviert gekennzeichnet werden können.(I827cb) - Es wurde ein neues Attribut hinzugefügt, um die semantische Rolle für
ToggleButton
zu überschreiben.(I67132) - Wir haben
TimeTextDefaults.TimeFormat12Hours
aktualisiert, um AM/PM inTimeText
zu entfernen. Dadurch wird der Standardwert dertimeSource
-Parameter in derTimeText
API geändert. (I1eb7f) - Wir haben die Picker API erweitert, um die Barrierefreiheit auf Bildschirmen mit der Mehrfachauswahl zu verbessern. Mit der neuen Eigenschaft
userScrollEnabled
lässt sich steuern, ob die Auswahl beim Scrollen durch den Nutzer aktiv ist. (I3c3aa)
Fehlerkorrekturen
- Wir haben die Standardrahmenbreite für ein
OutlinedButton/OutlinedCompactButton
von 2 dp zu 1 dp geändert, um den endgültigen UX-Spezifikationen zu entsprechen. (ICF84d) - Um zu verhindern, dass das erste Element, das einem leeren
ScalingLazyColumn
hinzugefügt wird, an eine bestimmte Stelle gescrollt wird, haben wir schätzungsweiseautoCentering topPadding
hinzugefügt, wenn der Inhalt leer ist. Mit dieser Änderung wird der erforderliche obere Abstand berechnet, indem ein anfängliches Element mit einer Höhe von 0, dp angenommen wird. FürScalingLazyListAnchorType.ItemStart
wird damit der korrekte obere Abstand berechnet. FürScalingLazyListAnchorType.ItemCenter
ist diese Berechnung falsch, da die Höhe der Elemente erforderlich ist, um die Größe des Inhalts korrekt anzupassen, was zu einem kleinen Scroll-in-Place-Effekt auf Grundlage der tatsächlichen Höhe der Elemente führt.(I239a4) - Wir haben die Hintergrundabdeckung der
SwipeToDismiss
-Animation aktualisiert, damit sie zur Wear-Plattform passt. (I9003e) - Wir haben die
PositionIndicator
-Verarbeitung vonLazyListState
undScalingLazyListState
für Listenelemente mit der Größe 0 korrigiert, um Fehler der Kategorie „dividieren 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 unnötige Neuzusammensetzungen in
ScalingLazyListState.centerItemIndex
verursachte. Wir haben dafür gesorgt, dass Updates nur übertragen 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
zu verwenden, sodass der Status aktualisiert wird, wenn das Lambda-ElementonContentReady
aktualisiert wird. (I02635, b/260343754)
Version 1.1.0
7. Dezember 2022
androidx.wear.compose:compose-foundation:1.1.0
, androidx.wear.compose:compose-material:1.1.0
und androidx.wear.compose:compose-navigation:1.1.0
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 finden Sie in den Versionshinweisen zu Compose for Wear OS 1.1 Beta01.
Neue Funktionen
- Wir haben die experimentelle Platzhalterfunktion aktualisiert, sodass der Effekt „Wischen aus“ sofort angewendet wird, wenn der Inhalt bereit ist, anstatt auf den Beginn der nächsten Animationsschleife zu warten. Wir haben auch einige Aktualisierungen an den Schimmer- und Wischeffekt-Animationen vorgenommen. (I5a7f4)
Fehlerkorrekturen
- Wir haben die Standardrahmenbreite für ein
OutlinedButton/OutlinedCompactButton
von 2 dp zu 1 dp geändert, um den endgültigen UX-Spezifikationen zu entsprechen. (ICF84d) - Um zu verhindern, dass das erste Element, das einem leeren
ScalingLazyColumn
hinzugefügt wird, an eine bestimmte Stelle gescrollt wird, haben wir schätzungsweiseautoCentering topPadding
hinzugefügt, wenn der Inhalt leer ist. Mit dieser Änderung wird der erforderliche obere Abstand berechnet, indem ein anfängliches Element mit einer Höhe von 0, dp angenommen wird. FürScalingLazyListAnchorType.ItemStart
wird damit der korrekte obere Abstand berechnet. FürScalingLazyListAnchorType.ItemCenter
ist diese Berechnung falsch, da die Höhe der Elemente erforderlich ist, um die Größe des Inhalts korrekt anzupassen, was zu einem kleinen Scroll-in-Place-Effekt auf Grundlage der tatsächlichen Höhe der Elemente führt.(I239a4) - Wir haben das Hintergrundgitter für die
SwipeToDismiss
-Animation aktualisiert, damit es zur Wear-Plattform passt.(I9003e) - Wir haben die
PositionIndicator
-Verarbeitung vonLazyListState
undScalingLazyListState
für Listenelemente mit der Größe 0 korrigiert, um Fehler der Kategorie „dividieren 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
- Es wurden grundlegende Profilregeln 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
ungültig ist (z. B. wenn der Elementindex außerhalb des Bereichs liegt), wirdTimeText
jetzt weiterhin angezeigt. (I2137a) - Wir haben die Animation „
SwipeToDismissBox
“ an die Plattformimplementierung angepasst. Nach der anfänglichen Animation beim Drücken gleitet der Bildschirm nach rechts, sobald die Option ausgelöst wurde. (I41d34) - Zur Optimierung haben wir
Modifier.scrollAway
so aktualisiert, dass nurscrollState
im Messwertblock gelesen wird. So wird der Modifikator nicht nach jeder Neumessung neu zusammengesetzt. I4c6f1 - Wir haben Platzhaltern eine Dokumentation und ein Beispiel hinzugefügt, um die korrekte Reihenfolge von
Modifier.placeholder
undModifier.placeholderShimmer
zu zeigen, wenn sie auf dieselbe zusammensetzbare Funktion angewendet werden. (Ie96f4, b/256583229) - Wir haben die Standardrahmenbreite für ein
OutlinedCompactChip/OutlinedChip
von 2 dp zu 1 dp geändert, um den endgültigen UX-Spezifikationen zu entsprechen. (Ib3d8e) - Wir haben einen Fehler in
rememberPickerState
behoben, durch den 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) Ändern des Schimmer-Farbverlaufs auf das 1, 5-Fache der Bildschirmgröße, 2) Hinzufügen von Easing (kubische Bézier-Rate) für den Schimmerfortschritt und 3) Beschleunigung der Wischanimation (250 ms). (Id29c1)
- Wir haben einen Fehler in der Benutzeroberfläche des wipeOff-Effekts für Platzhalter 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, anstatt sie nach Möglichkeit übereinander zu legen. So verringern wir das Risiko, dass die verschiedenen zugeschnittenen Ebenen in Alpha-Phasen übergehen, sodass die zugrunde liegenden Farben an den Rändern des Platzhalterhintergrunds nicht durchscheinen. (I2ea26)
- Wir haben die Berechnung von
ScalingLazyListState.centerItemIndex/centerItemOffset
korrigiert. Wenn sich zwei Elemente auf beiden Seiten der Mittellinie des Darstellungsbereichs befinden, wird das am nächsten liegende Element alscenterItem
betrachtet. (I30709, b/254257769) - Wir haben einen Fehler in
ScalingLazyListState.layoutInfo.visibleItemsInfo
behoben, der während der Initialisierung vonScalingLazyColumn
falsche Offsets meldet. Jetzt wird eine leere Liste zurückgegeben, bis alle Listenelemente sichtbar sind und die richtigen Offsets haben. Die Prüfung aufScalingLazyListState.layoutInfo.visibleItemsInfo.isNotEmpty()
bestätigt, dass die Initialisierung vonScalingLazyColumn
abgeschlossen ist und die Elemente sichtbar sind. (I3a3b8)
Version 1.1.0-beta01
24. Oktober 2022
androidx.wear.compose:compose-foundation:1.1.0-beta01
, androidx.wear.compose:compose-material:1.1.0-beta01
und androidx.wear.compose:compose-navigation:1.1.0-beta01
wurden veröffentlicht. Version 1.1.0-beta01 enthält diese Commits.
Funktionen von Compose für Wear OS 1.1
In der Betaversion 1.1.0 von Compose für Wear OS wurde angegeben, dass dieser Release der Bibliothek vollständig ist und die API gesperrt ist.
- Wear Compose 1.1 enthält die folgenden neuen Funktionen:
- Auswahl: Verbesserungen der Bedienungshilfen für die Auswahl, sodass Screenreader mit mehreren Auswahlmöglichkeiten navigieren können und die Inhaltsbeschreibung barrierefrei ist
- Der Auswahl-
contentDescription
-Parameter wird jetzt nur für die ausgewählte Auswahloption verwendet und verwendet einen String, für den Nullwerte zulässig sind. Im vorherigen Commit war es erforderlich, eine Zuordnung von der Option zur Inhaltsbeschreibung zu übergeben, aber nur die ausgewählte Option wurde verwendet. - Picker-Elemente sind jetzt immer zentriert. Ein Fehler beim Festlegen von
gradientRatio
auf null hatte eine Nebenwirkung, die dazu führte, 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, sodass nun 50% des primären Farbverlaufs anstelle von 32,5 % verwendet werden.Chip/ToggleChip
– Überlastung beim Ändern der 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 eine transparenteChip/Button
mit schmalem Rahmen bieten.- Karte: Die Standardverläufe für Karten wurden aktualisiert, damit sie den neuesten UX-Spezifikationen entsprechen.
CardDefaults.cardBackgroundPainter
wurde aktualisiert, sodass sie bei 30% der primären Größe und bei 20% vononSurfaceVariant
endet (vorher 20% auf 10%onSurfaceVariant
).ToggleChip.toggleChipColors
ändert sich von einem linearen Farbverlauf von 75% der Oberfläche zu 0% der primären Oberfläche zu 0% der primären Oberfläche zu 50% der primären Oberfläche. Button/ToggleButton
: Eigenschaften zum Ändern von Schaltflächenformen hinzugefügt.- Design: Einige Standardfarben in
MaterialTheme
wurden aktualisiert, um die Barrierefreiheit zu verbessern, da die Originalfarben keinen ausreichenden Kontrast hatten. Dadurch konnten Nutzer die Hintergründe von Chips/Karten/Schaltflächen nicht von der Hintergrundfarbe des Designs unterscheiden. InlineSlider/Stepper
: Es wurden Schaltflächenrollen hinzugefügt, damitTalkback
sie als Schaltflächen erkennen kann.- Gerüst –
PositionIndicator
wird jetzt so positioniert und angepasst, dass es nur den benötigten Platz einnimmt. Das ist beispielsweise nützlich, wenn semantische Informationen hinzugefügt werden, werden in TalkBack jetzt die korrekten Grenzen desPositionIndicator
auf dem Bildschirm angezeigt. CurvedText/TimeText
:Modifier.scrollAway
wurde hinzugefügt. Damit wird ein Element basierend auf dem Scrollstatus vertikal in den Bildschirm verschoben oder aus dem sichtbaren Bereich herausgeschoben (mit Überlastungen fürColumn
,LazyColumn
undScalingLazyColumn
).ScrollAway
wird in der Regel verwendet, um eineTimeText
aus dem sichtbaren Bereich zu scrollen, wenn der Nutzer beginnt, eine Liste mit Elementen nach oben zu scrollen.CurvedText/TimeText
– Zusätzlicher Support fürfontFamily
,fontStyle
undfontSynthesis
inCurvedTextStyle
, verwendbar fürcurvedText
undbasicCurvedText
CurvedText/TimeText
–fontWeight
dem Konstruktor und der Kopiermethode fürCurvedTextStyle
hinzugefügtToggleControls
: Animierte Steuerelemente fürCheckbox
,Switch
undRadioButton
zur Verwendung mitToggleChip
undSplitToggleChip
wurden hinzugefügt. Diese können anstelle der statischen Symbole verwendet werden, die vonToggleChipDefaults
bereitgestellt werden (switchIcon
,checkboxIcon
undradioIcon
).- Platzhalter: Unterstützung für experimentelle Platzhalter wurde hinzugefügt. Es gibt drei verschiedene visuelle Effekte, die zusammenwirken.
- Erstens ein Platzhalter-Pinseleffekt für den Hintergrund, der in Containern wie Chips und Karten verwendet wird, um den normalen Hintergrund zu überlagern, während er auf das Laden von Inhalten wartet.
- Zweitens einen Modifikator (
Modifier.placeholder()
), mit dem ein stadionförmiges Platzhalter-Widget über dem geladenen Inhalt gezeichnet wird. - Drittens ein Modifikator-Farbverlauf/Schimmer-Effekt (
Modifier.placeholderShimmer()
), der die anderen Effekte überlagert, um Nutzern anzuzeigen, dass wir auf das Laden von Daten warten.- Alle diese Effekte sind so konzipiert, dass sie aufeinander abgestimmt sind, schimmern und wieder verschwinden.
- Abhängigkeiten von Core Compose von 1.2 auf 1.3 aktualisiert
API-Änderungen
- Schriftartparameter (
fontFamily
,fontWeight
,fontStyle
undfontSynthesis
) können jetzt direkt als Parameter voncurvedText
(Idc422) angegeben werden.
Fehlerkorrekturen
curveText
undbasicCurvedText
funktionieren jetzt korrekt mit TalkBack (sie haben einen korrekt formatierten und platzierten (aber leeren) Erstellungs-UI-Knoten, wobei der Text als Inhaltsbeschreibung verwendet wird) (I7af7c, b/210721259)- Fehlerkorrektur für
Picker
, wennPickerState.repeatedItems = false
eine explizite Einstellung von Parametern zur automatischen Zentrierung für das interneScalingLazyColumn
der Auswahl hinzugefügt hat, um sicherzustellen, dass die Null-Option in die Mitte der Ansicht gescrollt werden kann. (I8a4d7)
Version 1.1.0-alpha07
5. Oktober 2022
androidx.wear.compose:compose-foundation:1.1.0-alpha07
, androidx.wear.compose:compose-material:1.1.0-alpha07
und androidx.wear.compose:compose-navigation:1.1.0-alpha07
wurden veröffentlicht. Version 1.1.0-alpha07 enthält diese Commits.
Neue Funktionen
- Wir haben die Unterstützung für experimentelle Platzhalter hinzugefügt. Es gibt drei verschiedene visuelle Effekte, die zusammenwirken. Erstens ein Platzhalter-Pinseleffekt für den Hintergrund, der in Containern wie Chips und Karten verwendet wird, um den normalen Hintergrund zu überlagern, während er auf das Laden von Inhalten wartet. Zweitens einen Modifikator (
Modifier.placeholder()
), mit dem ein stadionförmiges Platzhalter-Widget über dem geladenen Inhalt gezeichnet wird. Drittens ein Modifikator-Farbverlauf/Schimmer-Effekt (Modifier.placeholderShimmer()
), der die anderen Effekte überlagert, um Nutzern anzuzeigen, dass wir auf das Laden von Daten warten. Alle diese Effekte sind so konzipiert, dass sie aufeinander abgestimmt sind, schimmern und wieder verschwinden. (I3c339)
API-Änderungen
- Unterstützung für
fontWeight
,fontFamily
,fontStyle
undfontSynthesis
inCurvedTextStyle
hinzugefügt, die fürcurvedText
undbasicCurvedText
verwendet werden können. Diese Parameter können verwendet werden, um die Schriftart und den Stil für den gebogenen Text anzugeben (Iaa1a8),(I72759). - Für Konsistenz mit
Modifier.offset
wurde der Offset-Parameter vonModifier.scrollAway
auf Dp aktualisiert (bisher in Pixel). Außerdem wurde für mehr Effizienz alsLayoutModifier
refaktoriert. (I9f94b) - Im Rahmen der neuen Ein/Aus-Schaltfläche für Steuerelemente haben wir
RadioButton’s circleColor
inringColor
umbenannt. (I28fa9) - Es wurden animierte Ein-/Aus-Schaltflächen für
Checkbox
,Switch
undRadioButton
zur Verwendung mitToggleChip
undSplitToggleChip
hinzugefügt. Diese können anstelle der statischen Symbole verwendet werden, die vonToggleChipDefaults
bereitgestellt werden (switchIcon
,checkboxIcon
undradioIcon
). (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
).ScrollAway
wird normalerweise verwendet, um einTimeText
aus dem Sichtfeld zu scrollen, wenn der Nutzer beginnt, eine Liste mit Elementen nach oben zu scrollen. (I61766)
Fehlerkorrekturen
- Das
PositionIndicator
-Element wird jetzt positioniert und entsprechend seiner Größe angepasst, sodass es nur den benötigten Platz einnimmt. Das ist beispielsweise nützlich, wenn semantische Informationen hinzugefügt werden, werden in TalkBack jetzt die korrekten Grenzen desPositionIndicator
auf dem Bildschirm angezeigt. (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
- Zu
InlineSlider
undStepper
wurden Schaltflächenrollen hinzugefügt, damit TalkBack sie als Schaltflächen erkennen kann. (Icb46c, b/244260275) - Wir haben die Z-Reihenfolge der Positions- und Seitenanzeigen im Grundgerüst korrigiert. Die Anzeigen befinden sich nun über der Vignette und werden nicht durch die Vignette verdeckt, falls vorhanden. (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 einige der Standardfarben des MaterialTheme-Elements aktualisiert, um die Barrierefreiheit zu verbessern, da die Originalfarben nicht ausreichend Kontrast hatten, wodurch Nutzer die Hintergründe von Chips/Karten/Schaltflächen nicht mehr von der Hintergrundfarbe des Designs unterscheiden konnten. Die aktualisierten Farben sind Oberflächen(0xFF202124->0xFF303133), onPrimary(0xFF202124->0xFF303133), onSecondary(0xFF202124->0xFF303133), primaryVariant(0xFF669DF0>02FF0x0>00x0x4>00x024 und onPrimary(0xFF20124)). Die relativ subtilen Farbänderungen können sich auf vorhandene Screenshot-Tests auswirken. (81ab09)
Fehlerkorrekturen
- Behebung eines Logikfehlers in
ScalingLazyColumn
, der dazu führen konnte, dass Listen mit einer kleinen (in der Regel genau 2) Anzahl von Listenelementen die Initialisierung nicht abschließen und dadurch 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 einem dünnen Rahmen bieten. (Id5972)
API-Änderungen
- Überlastungen für das Ändern von Schaltflächenformen (Icccde) hinzugefügt
Fehlerkorrekturen
- Wir haben die Größe des Ein-/Aus-Steuerelementbereichs von
ToggleChip
korrigiert, da er nicht den UX-Spezifikationen entsprach. In den UX-Spezifikationen ist ein Abstand zwischen dem Label und einem 24 x 24 dp breiten Ein-/Aus-Steuerelement mit einer Breite von insgesamt 28 dp erforderlich. Bei der Implementierung wird jedoch fälschlicherweise der Steuerbereich „36x24.dp“ zugewiesen. Dadurch werden 8 dp nutzbarer Textlabelbereich weggenommen. HINWEIS: Diese Fehlerkorrektur bietet mehr Platz für das Textlabel und kann sich dadurch (positiv) auf das Textlayout für überlaufenden Text auswirken. Wenn du Screenshot-Tests hast, einschließlichToggleChips
, 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 den Compose-Kernbibliotheken von Version 1.2.0 auf 1.3.0-alpha0X umgestellt
API-Änderungen
- Überlastungen beim Ändern der Chipformen hinzugefügt (I02e87)
Fehlerkorrekturen
- Wir haben die Sichtbarkeit der Vignette beim Ein-/Ausblenden des Dialogfelds animiert, um der vorhandenen Skalierungsanimation zu entsprechen. (Ida33e)
- Wir haben einen Fehler behoben, bei dem beim Scrollen bei einem Ziehvorgang eine Division durch Null möglich war. (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 der Auswahl wird jetzt nur für die ausgewählte Auswahloption verwendet und verwendet einen String, für den Nullwerte zulässig sind. Bisher war es erforderlich, eine Zuordnung von der Option zur Inhaltsbeschreibung zu übergeben, aber nur die ausgewählte Option wurde verwendet. (Ife6a7) - Wir haben die Bedienungshilfen des Picker verbessert, sodass Screenreader mit mehreren Auswahlmöglichkeiten navigieren können und die Inhaltsbeschreibung barrierefrei ist (I64edb).
Fehlerkorrekturen
- Wir haben die Basisprofilregeln aktualisiert, die in der Wear Compose-Bibliothek enthalten sind (I9c694).
- Wir haben die Richtung des Farbverlaufs für Chips von rechts nach links korrigiert. War oben links->unten rechts, jetzt oben rechts->unten links. (Ic2e77)
- Wir haben die Standardverläufe für
Chip/ToggleChip/Card
aktualisiert, damit sie den aktuellen UX-Spezifikationen entsprechen.ChipDefaults.gradientBackgroundChipColors
wurde aktualisiert, sodass nun 50% der primären Farbwerte anstelle von 32,5 % verwendet werden.CardDefaults.cardBackgroundPainter
wurde aktualisiert, sodass sie von 30 % der primären Oberfläche und bei 20 % der primären OberflächeonSurfaceVariant
beginnt (vorher 20 % bis 10 %onSurfaceVariant
).ToggleChip.toggleChipColors
ändert sich von einem linearen Farbverlauf von 75 % zu 32,5 % der Primäroberfläche. (I43bbd) - Wir haben hinter
Chip/ToggleChips
eine Hintergrundfarbe (MaterialTheme.color.surface
) mit Hintergründen mit Farbverlauf hinzugefügt, damit sie im unwahrscheinlichen Fall, dass eine helle Farbe dahinter verwendet wird, richtig sichtbar sind. (Ibe1a4, b/235937657) - Picker-Elemente sind jetzt immer zentriert. Ein Fehler beim Festlegen von
gradientRatio
auf null hatte eine Nebenwirkung, die dazu führte, 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 Seitenanzeigen im Grundgerüst korrigiert. Die Anzeigen befinden sich nun über der Vignette und werden nicht durch die Vignette verdeckt, falls vorhanden. (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
- Behebung eines Logikfehlers in
ScalingLazyColumn
, der dazu führen konnte, dass Listen mit einer kleinen (in der Regel genau 2) Anzahl von Listenelementen die Initialisierung nicht abschließen und dadurch 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 Compose-Kernbibliotheken auf. Diese bieten zusätzliche Wearable-spezifische Komponenten und gegebenenfalls alternative Implementierungen von Compose-Hauptkomponenten, die auf Wearable-Geräte zugeschnitten sind.
- Eine Liste der Hauptkomponenten von Wear Compose finden Sie in den Versionshinweisen zu Compose for Wear OS Beta01.
Fehlerkorrekturen
- Wir haben die Sichtbarkeit der Vignette beim Ein-/Ausblenden des Dialogfelds animiert, um der vorhandenen Skalierungsanimation zu entsprechen. (Ida33e)
- Wir haben einen Fehler behoben, bei dem beim Scrollen bei einem Ziehvorgang eine Division durch Null möglich war. (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. Sie war oben links->unten rechts und jetzt oben rechts->unten links. (Ic2e77)
- Wir haben die Standardverläufe für
Chip/ToggleChip/Card
so aktualisiert, dass sie den neuesten UX-Spezifikationen entsprechen.ChipDefaults.gradientBackgroundChipColors
wurde aktualisiert, sodass nun von 50% der primären Farbe anstelle von 32,5 % der Farbverlauf verwendet wird.CardDefaults.cardBackgroundPainter
wurde so geändert, dass sie bei 30% der primären Ausrichtung beginnt und bei 20% vononSurfaceVariant
endet (vorher 20% auf 10% aufSurfaceVariant).ToggleChip.toggleChipColors
ändert sich von einem linearen Farbverlauf von 75% der Oberfläche zu 32,5% der primären Oberfläche zu 0% der Fläche zu 50% der primären Oberfläche. (I43bbd) - Wir haben hinter
Chip/ToggleChips
eine Hintergrundfarbe (MaterialTheme.color.surface
) mit Hintergründen mit Farbverlauf hinzugefügt, damit sie im unwahrscheinlichen Fall, dass eine helle Farbe dahinter verwendet wird, richtig sichtbar sind. (Ibe1a4, b/235937657) - Wir haben die Basisprofilregeln aktualisiert, die in 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 compose-Bibliotheken werden jetzt mit den jdk8-Standardschnittstellenmethoden (I5bcf1) erstellt.
Fehlerkorrekturen
- Wir haben den expliziten Aufruf von
fillMaxWidth()
im Listenheader entfernt, da er nicht benötigt wird und zu Problemen führen kann, wenn eineScalinglazyColumn
eine Mischung ausListHeader()
- undChip()
-Komponenten enthält, da die Breite tendenziell zu-/verkleinert wird, wennListHeader
-Elemente herunter- oder ausgeblendet werden. (I37144, b/235074035) - Wir haben einen Fehler im
ScalingLazyColumn
behoben, der dazu führen konnte, dass die Listenelemente erst nach dem Scrollen korrekt dargestellt wurden, wenn der 0. Listeneintrag groß genug war (einschließlich Abstand). (Ic6159, b/234328517) - Wir haben das Easing „
ScalingLazyColumn
“ geringfügig angepasst, wenn Elemente den Bildschirmrand erreichen, um den aktualisierten UX-Spezifikationen zu entsprechen. Alte WerteCubicBezierEasing(0.25f, 0.00f, 0.75f, 1.00f)
-> neue WerteCubicBezierEasing(0.3f, 0f, 0.7f, 1f)
Um das alte Verhalten beizubehalten, können Sie denscalingParams
vonScalingLazyColumn
(Ie375c) überschreiben. - Wir haben einen Innenrand für
CompactChip
hinzugefügt, um sicherzustellen, dass die Größe des Tippziels mindestens 48 dp hoch ist und die Richtlinien für die Barrierefreiheit von Material eingehalten werden. Dies kann sich auf alle Layouts auswirken, die Sie mitCompactChips
verwenden, da diese zusätzlichen Platz benötigen. (I3d57c)
Version 1.0.0-beta03
1. Juni 2022
androidx.wear.compose:compose-foundation:1.0.0-beta03
, androidx.wear.compose:compose-material:1.0.0-beta03
und androidx.wear.compose:compose-navigation:1.0.0-beta03
wurden veröffentlicht. Version 1.0.0-beta03 enthält diese Commits.
Neue Funktionen
ScalingLazyColumn
funktioniert jetzt im Modus „Schreiben“@Preview
. (I3b3b6, b/232947354)
API-Änderungen
- Wir haben den Standardwert für die Eigenschaft
ScalingLazyColumn.horizontalAlignment
von „Start“ in „CenterHorizontally
“ geändert, damit Listenelemente, die nicht die gesamte Spaltenbreite einnehmen, für eine maximale Sichtbarkeit ausgerichtet werden. Wenn du zum vorherigen Verhalten zurückkehren möchtest, legehorizontalAlignment = Alignment.Start
fest.(I9ed4b)
Bekannte Probleme
- Die Tipp- bzw. Berührungshöhe von CompactChip ist kleiner als die Richtlinien für die Barrierefreiheit von Material. Dies wird in der nächsten Version (15. Juni) korrigiert. Wenn Sie CompactChip verwenden, wirkt sich dies auf Ihre Layouts aus, da CompactChips jetzt einen zusätzlichen Abstand oben und unten haben. Passen und testen Sie Ihre Layouts oder sehen Sie sich die Fehlerkommentare an, um das bestehende Verhalten zu umgehen. (b/234332135)
Fehlerkorrekturen
- Neue Demo zum Animieren des Hinzufügens oder Entfernens eines Starttexts zu einem
TimeText
. (I16d75) - Tests für
HorizontalPageIndicator.PagesState
(I64ed0) hinzufügen TimeText
wird näher an die UX-Spezifikationen aktualisiert (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 auch im Lesemodus immer auf Scroll-Ereignisse. So müssen Nutzende nicht erst durch Tippen eine Auswahl auswählen, bevor sie scrollen können. Im Lesemodus werden andere Optionen als die derzeit ausgewählten durch einen Shim in
gradientColor
verdeckt. (I72925) - Wir haben das UX-Verhalten von
Chip/ToggleChip/CompactChip/SplitToggleChip
geändert, sodassfillMaxWidth
nicht mehr standardmäßig ausgeführt wird. Stattdessen wachsen sie, um sich an ihren Inhalt anzupassen. Um das vorherige Verhalten beizubehalten, fügen Sie einfachmodifier = Modifier.fillMaxWidth()
(I60a2c, b/232206371) hinzu.
Fehlerkorrekturen
- Der
CurvedTextStyle
-Konstruktor, derTextStyle
verwendet, respektiert jetzt auchfontWeight
. (Dies kann in zukünftigen API-Versionen zum Konstruktor und den Kopiermethoden hinzugefügt werden.) (Ieebb9) - Verbesserungen beim Wischen am Rand. Wenn
Modifier.edgeSwipeToDismiss
verwendet wird und ein Wischen nach links vom Randbereich ausgelöst wird, wird kein Wischen zum Schließen mehr ausgelöst, wenn sich die Wischrichtung nach rechts ändert. Bisher war es möglich, durch Wischen nach links und dann nach rechts zu schließen.(I916ea) HorizontalPageIndicator
zeigt jetzt bis zu sechs Seiten auf dem Bildschirm an. Wenn es insgesamt mehr als sechs Seiten gibt, wird links oder rechts ein Hinweis in halber Größe mit einem sanften Übergang zwischen den Seiten angezeigt.(I2ac29)- Verbessertes Standardverhalten für das Andocken unter
ScalingLazyColumn
undPicker
(I49539) - Verbesserungen beim Wischen am Rand. Bei Verwendung von
Modifier.edgeSwipeToDismiss
wird „Zum Schließen wischen“ nur dann ausgelöst, wenn die erste Berührung am Rand landet und nach rechts gewischt wurde. Bisher war es möglich, durch Wischen von einem beliebigen Teil des Bildschirms aus eine Wischbewegung zum Schließen auszulösen, wenn das Scrollen den Anfang erreichte.(I8ca2a)
Version 1.0.0-beta01
11. Mai 2022
androidx.wear.compose:compose-foundation:1.0.0-beta01
, androidx.wear.compose:compose-material:1.0.0-beta01
und androidx.wear.compose:compose-navigation:1.0.0-beta01
wurden veröffentlicht. Version 1.0.0-beta01 enthält diese Commits.
Funktionen von Compose für Wear OS 1.0
Die 1.0.0-beta01
von Compose für Wear OS markiert einen wichtigen Meilenstein, da die Bibliothek vollständig funktionsfähig und die API gesperrt ist.
Zu den Wear Compose Material-Komponenten in der Version 1.0 gehören:
- Material Theme – wird als Ersatz für
MaterialTheme
in Compose für Mobilgeräte verwendet und stellt die Farben, Formen und Typografie für die Erstellung von Komponenten auf Wearables bereit, die die UX-Richtlinien für Wear Material Design von Anfang an implementieren. Button
,CompactButton
undToggleButton
: Die Schaltfläche bietet eine einzige Anzeigenfläche für ein Symbol, ein Bild oder einen kurzen Text (max. 3 Zeichen). Rund mit empfohlenen Größen für Standardschaltflächen sowie große und kleine Schaltflächen.CompactButton
bietet eine einzelne Fläche für beliebige Inhalte (Symbol, Bild oder Text) und hat eine kreisförmige Form und einen besonders kleinen Hintergrund.CompactButton
hat einen optionalen transparenten Abstand um den Hintergrund, der den anklickbaren Bereich vergrößert.ToggleButton
ist eine Schaltfläche, die auf einer einzigen Fläche für beliebige Inhalte (kurzer Text, Symbol oder Bild) und einen Ein-/Aus-Status (aktiviert/nicht aktiviert) mit Farbe und verschiedenen Symbolen bietet, die anzeigen, ob ein Häkchen gesetzt ist oder nicht- Karten: zum Anzeigen von Informationen zu Anwendungen, z. B. Benachrichtigungen. Flexibles Design für verschiedene Anwendungsfälle, wobei
AppCard
undTitleCard
unterschiedliche Layouts und Unterstützung für Bilder als Karteninhalt oder Hintergründe bieten. - Chips – stadionförmige Komponenten, ähnlich wie Schaltflächen, aber mit einer größeren Fläche und mehreren Fächern für Beschriftungen, sekundäre Beschriftungen und Symbole. In verschiedenen Größen und mit Unterstützung für Bilder als Hintergründe
- SwitchChips und SplitToggleChips – ein Chip mit aktiviertem/nicht aktiviertem Status und dem Hinzufügen einer
ToggleControl
-Fläche, um ein Symbol wie einen Schalter oder ein Optionsfeld anzuzeigen, um den aktivierten bzw. deaktivierten Status der Komponente anzuzeigen. Außerdem hatSplitToggleChip
zwei antippbare Bereiche, einen anklickbar und einen antippbar. - CircularProgressIndicator – Fortschrittsanzeige für Wear-Material mit zwei Variationen. Die erste drückt den Anteil der Erledigung 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
sowiecurvedRow
undcurvedColumn
, um Komponenten um kreisförmige Geräte anzuordnen. Weitere Informationen zuCurvedLayout
undCurvedModifier
finden Sie unten im Abschnitt „Wear Component Foundation“. Diese Funktion hat in der nicht gekrümmten Welt eine ähnliche Rolle wie die Modifikatoren und ermöglicht die Konfiguration verschiedener Aspekte von Layout, Innenabständen, Farbverläufen usw. - Dialogfeld, Warnung und Bestätigung: Das Dialogfeld zeigt ein Dialogfeld im Vollbildmodus an, das über anderen Inhalt gelegt wird. Es ist möglich, die Meldung durch Wischen zu schließen. Es wird ein einzelner Slot benötigt, bei dem es sich erwartungsgemäß um Inhalte des Dialogfelds „Wear Material“ wie „Warnung“ oder „Bestätigung“ handelt. „Benachrichtigung“ ist ein Dialog mit Flächen für Symbol, Titel und Nachricht. Sie hat Überlasten für entweder zwei negative und positive Schaltflächen, die nebeneinander angezeigt werden, oder einen Slot für einen oder mehrere vertikal gestapelte Chips. Die Bestätigung bezieht sich auf vorgeschlagene Dialoginhalte, die eine Nachricht für einen bestimmten Zeitraum anzeigen. Es hat eine Fläche für ein Symbol oder ein Bild (das animiert sein kann).
- HorizontalPageIndicator: Zeigt die horizontale Seitenposition auf eine für den Wearable-Formfaktor geeignete Form an. Für den Vollbildmodus und eine gebogene Anzeige auf runden Geräten. Kann mit dem Viewer der Seite „Begleitperson“ verwendet werden.
- Symbol: Eine Wear-Implementierung von Icon, die Farbe und Alpha aus dem Wear-Material-Design übernimmt. Ein anklickbares Symbol ist unter „Schaltfläche“ oder „Chip“ verfügbar.
- Auswahl - zeigt eine scrollbare Liste von Elementen an, aus denen ausgewählt werden kann. Standardmäßig werden Elemente "unendlich" in beide Richtungen wiederholt. Kann im Lesemodus angezeigt werden, um nicht ausgewählte Optionen auszublenden.
- PositionIndicator: Zeigt die Scrollposition oder andere Positionsangaben in einer für den Wearable-Formfaktor geeigneten Form an. Für den Vollbildmodus entwickelt, mit gebogener Anzeige auf runden Geräten.
- Gerüst – implementiert die grundlegende visuelle Layoutstruktur für Wear Material Design. Diese Komponente stellt eine API zum Kombinieren mehrerer Wear Material-Komponenten (z. B.
TimeText
,PositionIndicator
undVignette
) bereit, mit denen der Bildschirm konstruiert wird. Dabei wird eine angemessene Layoutstrategie für sie sichergestellt und die erforderlichen Daten erfasst, damit diese Komponenten einwandfrei zusammenwirken. - ScalingLazyColumn – eine Skalierungs-/Fischaugenlistenkomponente zum Scrollen, die einen wichtigen Bestandteil der Wear Material Design-Sprache bildet. Bietet Skalierungs- und Transparenzeffekte auf die Inhaltselemente.
ScalingLazyColumn
ist darauf ausgelegt, eine potenziell große Anzahl von Inhaltselementen zu verarbeiten, die nur bei Bedarf materialisiert und zusammengesetzt werden. - Schieberegler – ermöglicht Nutzern, eine Auswahl aus einem Wertebereich zu treffen. Der Auswahlbereich wird als Balken dargestellt, der optional mit Trennzeichen dargestellt werden kann.
- Stepper – eine Vollbildkomponente, mit der Nutzer eine Auswahl aus einem Bereich von Werten treffen können. Dazu verwenden sie Schaltflächen zum Vergrößern/Verkleinern oben und unten auf dem Bildschirm und mit einer Fläche für Text oder Chips in der Mitte.
- SwipeToSchließenBox: Führt die Wischgeste zum Schließen aus. Für den Hintergrund (wird nur bei einer Wischgeste angezeigt) und den Inhalt im Vordergrund wird eine einzelne Fläche benötigt. Kann optional mithilfe von
SwipeDismissableNavHost
mit der Androidx-Navigationsbibliothek kombiniert werden (siehe Wear Compose-Navigation unten). - Text: Eine Wear-Implementierung der Komponente „Compose Material Text“, bei der Farbe und Alphaversion des Wear-Material-Designs verwendet werden.
- TimeText – eine Komponente zur Anzeige von Uhrzeit und Anwendungsstatus oben auf dem Bildschirm Passt sich an die Bildschirmform an, indem gekrümmter Text auf runden Bildschirmen verwendet wird.
Vignettierung: eine Bildschirmdarstellung für die Verwendung im Gerüst, bei der der obere und untere Teil des Bildschirms verschwimmt, wenn scrollbare Inhalte verwendet werden.
Die folgenden Komponenten sind ebenfalls in Wear Compose Foundation enthalten:
CurvedLayout – Wear Foundation
CurvedLayout
ist eine Layout-Zusammensetzbarkeit, bei der die untergeordneten Elemente in einem Bogen platziert werden und nach Bedarf gedreht werden. Dies ähnelt einem Zeilenlayout, das in einem Segment eines Rings gekrümmt ist. Beachte, dass der Inhalt einerCurvedLayout
keine zusammensetzbare Lambda-Funktion, sondern eine DSL (domainspezifische Sprache) ist. Alle Elemente in der DSL des CurvedLayouts unterstützen einen optionalen Modifikatorparameter, der ausCurvedModifier
erstellt wurde.baseCurvedText – ein Element in
CurvedLayout
-DSL,basicCurvedText
, mit dem Entwickler einfach gebogenen Text schreiben können, der der Krümmung eines Kreises folgt (normalerweise am Rand eines kreisförmigen Bildschirms).basicCurvedText
darf nur innerhalb derCurvedLayout
erstellt werden, um eine optimale Nutzererfahrung zu gewährleisten. Dazu gehört z. B. die Möglichkeit, die Positionierung festzulegen undCurvedModifiers
zu verwenden. In den meisten Fällen sollte stattdessen CurdText verwendet werden, da er Material-Design verwendet.CurddComposable – umschließt normalen zusammensetzbaren Inhalt, sodass er mit
CurvedLayout
verwendet werden kann. WenncurvedComposable
mehrere Elemente enthält, werden diese übereinander gezeichnet (wie bei einem Kasten). Wenn Sie mehrere zusammensetzbare Funktionen entlang einer Kurve platzieren möchten, umschließen Sie sie jeweils mitcurvedComposable
.CurdRow und CurvedColumn – ähnlich wie Row und Column können
curvedRow
undcurvedColumn
innerhalb einesCurvedLayout
-Elements verschachtelt werden, um Elemente nach Bedarf anzuordnen. FürcurvedRow
können die eckige Layoutrichtung und die radiale Ausrichtung angegeben werden. FürcurvedColumn
können die Winkelausrichtung und die radiale Richtung angegeben werden.CurvedModifier: Alle gebogenen Komponenten akzeptieren einen Modifikatorparameter, der mit
CurvedModifier
erstellt werden kann: Hintergrund, Größe, Gewicht und Innenabstände werden unterstützt.Die folgende Komponente ist ebenfalls in der Wear Compose-Navigation enthalten:
SwipeCloseableNavHost – bietet einen Platz in der Erstellungshierarchie für eine eigenständige Navigation, wobei die Rückwärtsnavigation durch Wischgesten ermöglicht wird. Inhalte werden in einem
SwipeToDismissBox
mit der aktuellen Navigationsebene angezeigt. Während einer Wischgeste zum Schließen wird die vorherige Navigationsebene (falls vorhanden) im Hintergrund angezeigt.Weitere Informationen zu den bereitgestellten Alphaversionen finden Sie in den vorherigen Versionshinweisen.
API-Änderungen
CurvedModifier.padding*
-Funktionen wurden hinzugefügt. Damit wird zusätzlicher Raum angegeben, der um eine gebogene Komponente herum hinzugefügt werden soll. (I4dbb4)- Interne Klasse
CompositionLocal
(I42490) entfernt - Wir haben zur Orientierung konstante Werte für die Symbolgrößen
Button
,CompactButton
undToggleButton
hinzugefügt (I57cab). - Fügen Sie
AppCard
undTitleCard
einen aktivierten Parameter hinzu. Jetzt haben sie eine ähnliche API wieandroidx.compose.material
Cards. Ist der Parameter auf „false“ gesetzt, kann die Karte nicht angeklickt werden. (Idc48d, b/228869805)
Fehlerkorrekturen
- Durch den Stepper werden jetzt die Schaltflächen zum Verringern und Erhöhen deaktiviert, wenn die Unter-/Obergrenzen erreicht wurden. Außerdem wird ContentAlpha.disabled auf die Symbolfarbe angewendet (I4be9f).
- Wir haben einen Abstand von 1 dp um Picker-Inhalte hinzugefügt, wenn mit einem Farbverlauf gezeichnet wird, um Jitter auf Text beim Wischen zu vermeiden. (I0b7b9)
- Screenshot-Tests für
PositionIndicator
(I5e8bc) hinzufügen - 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 gekrümmte Elemente hinzugefügt, um den Hintergrund eines gebogenen Elements anzugeben:
CurvedModifier.background
,.radialGradientBackground
und.angularGradientBackground
(I8f392) - Angabe des Überlaufmodus für gebogenen Text (Ausschnitt/Auslassungspunkte/sichtbar) zulassen. (I8e7aa)
- Der
CurvedModifier.weight
-Modifikator wurde hinzugefügt, ähnlich dem in „Schreiben“. Dies kann für die untergeordneten Elemente von CurvedRow und CurvedLayout (für die Breite) und den untergeordneten Elementen 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
- Parameter neu anordnen, um sicherzustellen, dass der Hintergrund in der Wear Compose API einheitlich ist (I43208)
- Die Parameter im Uhrzeigersinn und die
insideOut
wurden entfernt und bei neuen Klassen durch ausdrucksstärkere Konstanten ersetzt. Die Richtung des gebogenen Layouts kann jetztLayoutDirection
berücksichtigen und wird übernommen, wenn keine Angabe erfolgt (If0e6a) - Wir haben
autoCenter: Boolean
durchautoCenter: AutoCentringParams
ersetzt, um ein API-Problem mit derScalingLazyColumn
zu beheben. (Ia9c90) - Wir haben
iconTintColor
undtoggleControlTintColor
in der gesamten API (Chip/ToggleChip/Dialog/Slider/Stepper/...) iniconColor
undtoggleControlColor
umbenannt, da die Farbe auf die Symbol-/ToggleControl-Fläche angewendet wird. (Ied238) PageIndicatorStyle
-Enum in Wertklasse umschreiben (I2dc72)- Wir haben einigen der Anzeigenflächen in unseren zusammensetzbaren Funktionen
RowScope/ColumnScope/BoxScope
hinzugefügt, um Entwicklern zu zeigen, von welchen Annahmen das Layout ausgeht. So können Entwickler für einige Anzeigenflächeninhalte zusätzliche Modifikatoren verwenden und müssen keine zusätzlichen Layoutelemente zur Verfügung stellen. Außerdem haben wir einige kleinere Aktualisierungen an den Farben von AppCard/TitleCard vorgenommen, sodasstimeColor
undappColor
standardmäßig aufcontentColor
gesetzt sind. Diese Eigenschaften können bei Bedarf immer noch einzeln überschrieben werden. (I26b59) SwipeToDismissBoxState.Companion
-Objekt wurde auf „privat“ gesetzt (I39e84)- Korrigieren Sie die Reihenfolge der Parameter für
InlineSlider
undStepper
. Einfache Änderung aufgrund der API-Richtlinien (I11fec) - Wir haben das Saver-Objekt für
SwipeToDismissBoxState
entfernt, da es nicht verwendet wurde. (Ifb54e) - Wir haben
CompactChip
aktualisiert und an die aktuelle UX-Spezifikation angepasst. Der Abstand wurde auf horizontal = 12 dp und vertikal = 0 dp reduziert. Die Schriftart für das Label wurde von „button“ zu „caption1“ geändert. Die empfohlene Symbolgröße ist 20 x 20, wenn sowohl Symbol als auch Label vorhanden sind, und 24 x 24 für einen kompakten Symbolchip. Außerdem wurde darauf geachtet, dass das Symbol zentriert ist. (IEA2BE) - Wir haben
ScalingLazyListLayoutInfo
eine Reihe neuer Felder hinzugefügt, damit Entwickler sehen können, wie vielcontentPadding
undautoCenteringPadding
angewendet wurden. Diese können für Entwickler nützlich sein, wenn sie das Ziehen/Scrollen berechnen (I7577b). - Wir haben Ein- und Ausgangsübergänge für den 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 ein- bzw. ausgeblendet wird. Hinweis: Die Outro-Animation wird nicht ausgeführt, wenn der Nutzer das Dialogfeld durch Wischen zum Schließen verlässt. Außerdem haben wir in der kürzlich hinzugefügtenSwipeToDismissBox
-Überlastung einen Standardwert für „state“ hinzugefügt. (I682a0) - Zur besseren Unterstützung von i18n und a11y haben wir
ToggleChip
undSplitToggleChip
so geändert, dass sie keinen Standardwert für dentoggleControl
-Slot mehr haben. Außerdem haben wirToggleChipDefaults
geändert, sodass die folgenden Methoden jetzt ImageVector anstelle von Icon zurückgeben (beachten Sie, dass @Composables nicht mehr zurückgegeben werden, wurde aber zu Kleinschreibung geändert),SwitchIcon()->switchIcon()
,CheckboxIcon->checkboxIcon()
undRadioIcon()->radioIcon()
. Dadurch können und ermutigt werden Entwickler, eigene zusammensetzbare Funktionen vonIcon()
mit einem geeignetencontentDescription
-Satz zu erstellen. (I5bb5b) SwipeDismissableNavHost
wurde der ParameterSwipeDismissableNavHostState
hinzugefügt. Dies unterstützt das Wischen über den Rand bei Bildschirmen, die als Navigationsziele verwendet werden, daSwipeToDismissBoxState
jetzt angehoben werden kann und zum Initialisieren vonSwipeDismissableNavHostState
undModifier.edgeSwipeToDismiss
auf Bildschirmen verwendet werden kann, bei denen das Wischen über den Rand erforderlich ist. (I819f5, b/228336555)
Fehlerkorrekturen
- Gebogene 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
edgeSwipeToDismiss
-Modifikator fürSwipeToDismiss
hinzufügen. Lässt zu, dassswipeToDismiss
nur am linken Rand des Darstellungsbereichs aktiv ist. Wird verwendet, wenn die Mitte des Bildschirms horizontales Paging unterstützen muss, z. B. das 2D-Scrollen einer Karte oder horizontales Wischen zwischen Seiten.(I3fcec, b/200699800)
API-Änderungen
- Basisimplementierung von
CurvedModifiers
; bietet die Möglichkeit, Kurveninhalte anzupassen (aber noch keineCurvedModifiers
und die Möglichkeit zum Erstellen benutzerdefinierter Modifikatoren wird später verfügbar sein) (I9b8df) - Die Dokumentation zu
EdgeSwipe
modifier und die Standardwerte wurden zum besseren Verständnis aktualisiert (I6d00d). - Fügen Sie dem Scaffold
PageIndicator
Slot hinzu. Wenn duPageIndicator
direkt in das Scaffold einfügst, wird es auf runden Geräten korrekt angezeigt. (Ia6042) - Entfernen Sie die Standardsymbole aus den
InlineSlider
- und Stepper-Parametern. So können Entwickler besser auf die Anforderungen an Lokalisierung und Barrierefreiheit achten. Die Verwendung von Standardsymbolen wurde in Demos und Beispielen gezeigt. (I7e6fd) - Namen von nachgestellten und vorangestellten Parametern durch Start und Ende in TimeText (Iaac32) ersetzen
- Wir haben eine
SwipeToDismissBox
-Überlastung mit einemonDismissed
-Parameter hinzugefügt, um die allgemeine Verwendung des Auslösens eines Navigationsereignisses zu unterstützen, wenn die Wischgeste abgeschlossen ist. (I50353, b/226565726) ExperimentalWearMaterialApi
-Annotationen wurden aus derTimeText
-Nutzung entfernt (Ide520)- Wir haben den Umfang und die Infooberflächen von
ScalingLazyList/Column
als versiegelt gekennzeichnet, da sie nicht für externe Entwickler vorgesehen sind. So können wir in Zukunft neue Mitglieder hinzufügen, ohne dass binäre Änderungen vorgenommen werden. (I7d99f) - Wir haben der Auswahl eine neue
flingBehaviour
-Eigenschaft und einePickerDefaults.flingBehaviour()
-Methode hinzugefügt, um die Konfiguration des Weiterleitungsverhaltens zu ermöglichen, z. B. das Hinzufügen der RSB-Unterstützung.PickerState
implementiert jetzt dieScrollableState
-Schnittstelle. (Ib89c7)
Fehlerkorrekturen
- Die Basisprofilregeln von Android Runtime (ART) für Wear Compose-Bibliotheken aktualisieren. ART kann Profilregeln auf Geräten nutzen, um vorab eine bestimmte Teilmenge der Anwendung zu kompilieren und so die Leistung der Anwendung zu verbessern. Dies hat keine Auswirkungen auf Anwendungen, die debuggen werden können. (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 umgearbeitet. Mit dieser DSL können komplexere gebogene Layouts mithilfe einer Reihe verschachteltercurvedRow
undcurvedColumn
angegeben werden. Dies sind die Entsprechungen des gebogenen Layouts für Zeile und Spalte. Innerhalb dieser Layout-Elemente können drei Elemente verwendet werden:curvedComposable
(um @Composable-Elemente hinzuzufügen),basicCurvedText
(gekrümmter Text der Stiftung) undcurvedText
(gekrümmter Text für Wear-Material). (Ib776a)- Legen Sie die Seite für das
PositionIndicator
konfigurierbar fest. Die grundlegende Position des PositionIndicator-Elements kann nun als End (auf Richtungsausrichtung des Layouts), als GegenüberRsb (berücksichtigt die Bildschirmdrehung, um sich gegenüber dem physischen RSB zu positionieren) oder als absolute Werte für Links und Rechts konfiguriert werden. I2f1f3. - Für
SwipeToDismissBox
haben wirSwipeDismissTarget
.Original inSwipeToDismissValue.Default
undSwipeDismissTarget.Dismissal
inSwipeToDismissValue.Dismissed
umbenannt. Außerdem haben wirSwipeToDismissBoxDefaults.BackgroundKey
undSwipeToDismissBoxDefaults.ContentKey
nachSwipeToDismissKeys.Background
(SwipeToDismissKeys.Content
) verschoben. (I47a36) - Wir haben der Auswahl einen schreibgeschützten Modus für Bildschirme mit mehreren Pickern hinzugefügt, bei denen jeweils nur ein Picker bearbeitet werden kann. Wenn die Auswahl schreibgeschützt ist, werden die aktuell ausgewählte Option und ein Label angezeigt, falls eine angegeben wurde. (I879de)
SwipeToDismissBoxState
wurde refaktoriert, um den Bereich vonExperimentalWearMaterialApi
aufModifier.swipeable
undSwipeableState
zu beschränken. Diese werden jetzt intern verwendet.SwipeToDismissBoxState
hat jetztcurrentValue
-,targetValue
-,isAnimationRunning
- undsnapTo
-Mitglieder, um häufige Anwendungsfälle zu unterstützen. Teilen Sie uns bitte mit, wenn Sie weitere Properties benötigen. Das Verhalten vonSwipeableState
in Fällen, bei denen der Wisch-Offset innerhalb eines Rundungsfehlers eines Ankers liegt, wurde ebenfalls korrigiert. (I58302)
Fehlerkorrekturen
- Vereinfachter und fester Code, um zu erkennen, ob der Inhalt eines
ScalingLazyColumn
gescrollt werden kann (wird verwendet, um zu entscheiden, ob eine Bildlaufleiste angezeigt wird oder nicht) (I7bce0) - Ein Fehler bei der Positionsanzeige wurde behoben, wenn die Positionsanzeige mit mehr als einem Status verwendet wurde und zwischen diesen gewechselt wurde (I320b5).
- Wir haben die Standardtypografie/-schrift von „Compose“ für Wear OS aktualisiert, um sie an unsere neuesten UX-Richtlinien anzupassen. Hinweis: display1 (40.sp) und display2 (34.sp) sind jetzt kleiner als ihre vorherigen Werte. Außerdem wurden verschiedene kleinere Aktualisierungen der Zeilenhöhe und des Zeilenabstands vorgenommen. (Ie3077)
- Wir haben einen Widerstand zu
SwipeToDismissBox
hinzugefügt, sodass Bewegungen nur dann stattfinden, wenn zum Schließen ein Wischen erfolgt, 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 die Größe (40->24.dp), IndicatorColor (primary->onBackground), die trackColor-Transparenz (30%-> 10%) und die Strichbreite (4-> 3 dp) aktualisiert. Für die Version Progress/Determinate (Fortschritt/Determinate-Version) wurde die trackColor-Transparenz (30%-> 10%) aktualisiert. (I659cc) - Wir haben die Standard-Skalierungsparameter der
ScalingLazyColumn
-Inline an die neuesten UX-Spezifikationen für Wear Material Design angepasst. Dies führt dazu, dass Listenelemente beginnend näher an der Listenmitte liegen, am Listenrand aber 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
- Es wurden mehrere Verbesserungen an „PositionIndicator“ vorgenommen: „ShowResult“ umbenannte die Bezeichnung „PositionIndicatorSichtbarkeit“. 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 Farbe des SwitchControl ist der primäre Hinweis darauf, ob die Komponente aktiviert ist oder nicht. Zur Unterstützung des neuen Farbschemas wurde ein neuesToggleDefaults.splitToggleChipColors()
hinzugefügt. Außerdem haben wir dietoggleChipColors()
-Methoden vereinfacht, sodass „splitBackgroundOverlayColor“ entfernt wurde (I7e66e). - Wir haben „
ScalingLazyListItemInfo
“ „uncustomSize“ hinzugefügt, da es aufgrund der Genauigkeit der Gleitkommazahlen nicht sicher ist, die ursprüngliche Elementgröße mit der skalierten Größe und dem Skalierungsfaktor zu berechnen. (I54657, b/221079441) HorizontalPageIndicator
hinzufügen. Es steht für die Gesamtzahl der Seiten und eine ausgewählte Seite. Sie kann je nach Form des Geräts linear oder gebogen sein. Außerdem wird die Form eines benutzerdefinierten Indikators unterstützt, mit dem definiert wird, wie jeder Indikator visuell dargestellt wird. (Iac898)- Wir haben
PickerState
aktualisiert, damit „numberOfOptions“ aktualisiert werden kann. Dies unterstützt Anwendungsfälle wieDatePicker
, bei denen sich die Anzahl der Tage des Monats je nach ausgewähltem Monat ändert. Der Konstruktorparameter für PickerState wurde entsprechend in „initialNumberOfOptions“ geändert. (Iad066) PositionIndicator
ausblenden, wenn es sich um eine Bildlaufleiste handelt und nicht scrollen kann. (Id0a7f)- Für mehr Konsistenz mit dem Scaffold werden in unserer Vollbild-Dialog-Komponente jetzt
PositionIndicator
undVignette
angezeigt. Außerdem verwenden wir jetztScalingLazyColumn
anstelle vonColumn
, was bedeutet, dass sich der Inhalt des Dialogfelds jetzt inScalingLazyListScope
befindet und normalerweise vom Element { /* content */ } umschlossen sein muss. Das Dialogfeld unterstützt den Parameter verticalArrangement entsprechend. (Idee 13) - Wir haben den Namen
ToggleChip
undSplitToggleChip
zwischen „switchIcon“ und „switchControl“ geändert. Damit er sich besser an Material Design angleicht, um Designern und Entwicklern die Navigation in der API zu erleichtern. (If5921, b/220129803) - Wir haben dem „Wear Material Theme Typology“-Design einen neuen Eintrag hinzugefügt.Caption3 ist eine kleine Schriftart, die für besonders lange Texte verwendet wird, z. B. für rechtliche Texte. (I74b13, b/220128356)
Fehlerkorrekturen
- Die Andockanimation stoppen, wenn wir da sind. (Idb69d)
- Animieren Sie Änderungen in PositionIndicator. (I94cb9)
- Aufgrund des Feedbacks zur Benutzeroberfläche und der Nutzererfahrung haben wir die automatische Zentrierung für
ScalingLazyColumn
geändert. Jetzt ist nur noch genügend Platz vorhanden, damit für die Elemente mit dem IndexScalingLazyListState.initialCenterItemIndex
oder höher vollständig bis zur Mitte des Darstellungsbereichs gescrollt werden kann. Auf diese Weise können Entwickler ein oder zwei Elemente zum Element anfänglich in der Mitte platzieren, die nicht in die Mitte gescrollt werden können. Das bedeutet, dass einScalingLazyColumn
mit automatischer Zentrierung nicht überinitialCenterItemIndex/initialCenterItemScrollOffset
scrollen kann (I22ee2). - Wir haben eine Demo für eine Datumsauswahl hinzugefügt und einen Fehler in
PickerState
behoben, bei dem die „initialSelectedOption“ erst angewendet wurde, wenn die Auswahl angezeigt wurde. (Id0d7e) - Um das Abschneiden breiterer
ScalingLazyColumn
-Elemente auf runden Bildschirmen zu reduzieren, haben wir den standardmäßigen horizontalen Inhaltsabstand von 8 auf 10 dp erhöht. (I0d609) - Achte darauf, dass beim Scrollen die
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
- Die Snap-Unterstützung kann mit
ScalingLazyColumn
verwendet werden. Legen SieflingBehavior = ScalingLazyColumnDefaults.flingWithSnapBehavior(state)
fest, um die Snap-Unterstützung zu aktivieren. (I068d3, b/217377069) - Wir haben Demos für die Auswahl hinzugefügt, mit denen eine Uhrzeit im 24- oder 12-Stunden-Format ausgewählt werden konnte. (Ie5552)
API-Änderungen
- Problem mit
TimeText
benutzerdefinierten Schriftarten und Stilen auf quadratischem Gerät beheben (Iea76e) ScalingLazyListLayoutInfo
hat jetztreverseLayout
,viewportSize
und die Ausrichtungseigenschaften, die mit denen vonLazyListLayoutInfo
übereinstimmen (I4f258, b/217917020)ScalingLazyColumn
hat jetzt eineuserScrollEnabled
-Property, die mit der vonLazyList
übereinstimmt (I164d0, b/217912513)- Die Auswahlelemente haben jetzt standardmäßig einen Farbverlauf oben und unten (Iab92a).
Fehlerkorrekturen
- Wir haben
ScalingLazyColumn
geändert, sodass es nicht mehr gierig den gesamten Bereich in seinem übergeordneten Element füllt. Stattdessen wird die Größe aus der Größe des Inhalts ermittelt. Dies entspricht dem Verhalten vonLazyColumn
. 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 wird, 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 geben die Länge eines Prozesses oder eine nicht angegebene Wartezeit an. Unterstützt eine Lücke (Cutout) für TimeText oder andere Komponenten, wenn sie im Vollbildmodus verwendet werden. (Iab8da)
API-Änderungen
- Die Auswahlelemente haben jetzt einen
flingBehavior
-Parameter. Der Standardwert sorgt dafür, dass sie beim Scrollen/Wischen an die nächstgelegene Option angreifen. (I09000) - Zusätzliche Integer API für InlineSlider und Stepper (I1b5d6)
Fehlerkorrekturen
- Der Standardwert für „initialCenterItemIndex“ für
ScalingLazyListState
wurde von 0 -> 1 geändert. Das bedeutet, dass das zweite Listenelement (Index == 1) bei der Initialisierung in der Mitte des Darstellungsbereichs platziert und das erste Element (Index = 0) davor platziert wird, sofern es bei der Zustandskonstruktion nicht mitScalingLazyListState.rememberScalingLazyListState(initialCenterItemIndex =
)
überschrieben wird. Dies ermöglicht einen besseren visuellen Standardeffekt, da der Großteil des Darstellungsbereichs mit Listenelementen gefüllt ist. (I0c623, b/217344252) - Wir haben die
ScalingLazyColumn
-StandardeinstellungextraPadding
, die bereitgestellt wird, von 10% auf 5 % reduziert, damit genügend Listenelemente zum Zeichnen vorhanden sind (auch wenn wir einige von ihnen verkleinern). So vermeiden Sie es, zusätzliche Listenelemente zu erstellen, die möglicherweise nicht im Darstellungsbereich angezeigt werden. Wenn nicht standardmäßige Skalierungsparameter verwendet werden (z. B. eine extremere Skalierung), kann der Entwickler mitviewportVerticalOffsetResolver
einen zusätzlichen Abstand anpassen. (I76be4) - Problem mit TimeText in mehreren Zeilen auf quadratischem Gerät beheben (Ibd3fb)
- Wir haben
ScalingLazyColumn
geändert, sodass es nicht mehr gierig den gesamten Bereich in seinem übergeordneten Element füllt. Stattdessen wird die Größe aus der Größe des Inhalts ermittelt. Dadurch entspricht sie dem Verhalten vonLazyColumn
. Wenn Sie das alte Verhalten wiederherstellen möchten, übergeben SieModifier.fillMaxSize()
anScalingLazyColumn
. HINWEIS: Diese Änderung ist unvollständig und wird in einer Folgeänderung im nächsten Alpha-Release 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 dem
ScalingLazyColumn
die neue EigenschaftautoCentering
hinzugefügt. Ist dieser Wert „true“ (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. Hinweis: Wenn Sie die automatische Zentrierung verwenden, sollten Sie den vertikalen Inhaltsabstand wahrscheinlich auf 0.dp festlegen. Wenn sowohl die automatische Zentrierung als auch der vertikale Inhaltsabstand angegeben sind, haben beide zusätzlichen Platz vor dem ersten und nach den letzten Listenelementen für das Weiterscrollen. (I2a282, b/214922490) - Wir haben eine
Dialog
-Komponente hinzugefügt, mit der jede zusammensetzbare Funktion ein Vollbild-Dialogfeld auslösen kann, das über anderen Inhalten liegt. Wenn das Dialogfeld angezeigt wird, unterstützt es die Wischgeste zum Schließen und zeigt während der Wischgeste die Inhalte des übergeordneten Elements im Hintergrund an. Der Dialoginhalt mussAlert
oderConfirmation
sein (umbenannt von den früheren KomponentenAlertDialog
undConfirmationDialog
).Alert
,Confirmation
undDialog
sind alle imandroidx.wear.compose.material.dialog
-Paket. Warnung und Bestätigung können als Navigationsziele verwendet werden. Außerdem wurde ColumnScope nach Bedarf zu Benachrichtigungs- und Bestätigungsparametern hinzugefügt. (Ia9014) - Wir haben „
onSurfaceVariant2
“ aus „Compose for Wear OS Material Theme Colors“ entfernt und die Verwendung in der Bibliothek durch „onSurfaceVariant
“ ersetzt. (Icd592) - Es wurde eine Methode zur programmatischen Auswahl einer Option in
PickerState
hinzugefügt. Die ursprünglich ausgewählte Option kann jetzt auch beim Erstellen einerPickerState
angegeben werden. (I92bdf) - Das FLing-Verhalten von
ScalingLazyColumn
kann jetzt angepasst werden. (I1ad2e, b/208842968) - Wir haben „
NavController.currentBackStackEntryAsState()
“ der Bibliothek „Wear.Compose.Navigation
“ hinzugefügt. (If9028, b/212739653) Modifier.onRotaryScrollEvent()
undModifier.onPreRotaryScrollEvent()
für Wear-Geräte mit rotierender Taste an der Seite 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 Listeneinträgen steuern sowie das anfängliche Listenelement und den Versatz festlegen können.Im Rahmen dieser Änderung haben wir auch die ScalingLazyList so geändert, dass sie am Mittelpunkt des Darstellungsbereichs von ScalingLazyList und nicht am Anfang des Darstellungsbereichs ausgerichtet ist.
ScalingLazyList
wurde die neue EigenschaftanchorType: ScalingLazyListAnchorType = ScalingLazyListAnchorType.ItemCenter
hinzugefügt, mit der Sie festlegen können, ob der Mittelpunkt (ScalingLazyListAnchorType.ItemCenter
) oderEdge
(ScalingLazyListAnchorType.ItemStart
) an der Mittellinie des Darstellungsbereichs ausgerichtet werden soll.Daher haben sich
ScalingLazyListItemInfo.offset
undScalingLazyListItemInfo.adjustedOffset
geändert. Sie spiegeln jetzt den Versatz des Elements in Bezug auf die Position des Listenelements und dieanchorType
der Liste wider. Beispiel: Bei einemScalingLazyColumn
mitanchorType
vonItemCenter
und einem Listenelement, dessen Mittelpunkt in der Mittellinie des Darstellungsbereichs positioniert ist, beträgt der Versatz0
.Die neuen Methoden sind
scrollTo
,animatedScrollTo
,centerItemIndex
undcenterItemOffset
. (I61b61)Wir haben
SwipeDismissableNavHost
einen Handler für die Schaltfläche „Zurück“ hinzugefügt, sodass durch Drücken der Zurück-Taste zur vorherigen Ebene in der Navigationshierarchie navigiert 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 festgelegt (intern vonInlineSlider
undStepper
referenziert). (I927ec)
Fehlerkorrekturen
Ein Problem wurde behoben, bei dem
SwipeDismissableNavHost
der Erstellungshierarchie ein Ziel hinzufügte, bevor es den LebenszyklusstatusCREATED
erreicht hatte, was zu einemIllegalStateException
führte. Diese Fehlerbehebung war eine Voraussetzung für das Aktualisieren der Abhängigkeit vonnavigation-compose
auf2.4.0-beta02
und höher. (I40a2b, b/207328687)Es wurde eine Drawables-Enum-Klasse zum Abrufen von Drawable-Ressourcen in der Wear Compose-Bibliothek hinzugefügt, sodass keine Reflexion mehr erforderlich ist. Dadurch wurde ein Fehler behoben, bei dem Bibliotheks-Drawables bei
minifyEnabled=true
odershrinkResources=true
entfernt wurden. (Ib2a98)Tests für
Stepper
in Wear Compose (I2d03a) hinzugefügtIn der Wear Compose-Navigation wurden Beispiele für
SwipeDismissableNavHost
hinzugefügt. (I85f06)
Version 1.0.0-alpha12
1. Dezember 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha12
, androidx.wear.compose:compose-material:1.0.0-alpha12
und androidx.wear.compose:compose-navigation:1.0.0-alpha12
wurden veröffentlicht. Version 1.0.0-alpha12 enthält diese Commits.
Neue Funktionen
Wir haben eine Stepper-Komponente hinzugefügt, mit der Nutzer eine Auswahl aus einem Wertebereich treffen können. Der Stepper ist ein Steuerelement im Vollbildmodus mit Schaltflächen zum Erhöhen und Verringern oben und unten sowie einer Stelle in der Mitte (für die entweder ein Chip oder ein Text vorgesehen ist). Die Schaltflächensymbole können bei Bedarf angepasst werden. (I625fe)
Wir haben zwei neue zusammensetzbare Funktionen zum Anzeigen von Dialogfeldern hinzugefügt: AlertDialog wartet auf eine Antwort des Nutzers und zeigt einen Titel, ein Symbol, eine Nachricht und entweder a) zwei Schaltflächen für einfache positive/negative Auswahlmöglichkeiten oder b) vertikal gestapelte Chips oder Ein/Aus-Chips für flexiblere Auswahl an. ConfirmationDialog zeigt eine Bestätigung mit einem Zeitlimit an. Dieser einfache Dialog verfügt über Flächen für einen Titel und ein (animiertes) Symbol. (Ic2cf8)
API-Änderungen
- Fügen Sie den vorgeschlagenen Werten für die Dauer des Dialogfelds 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 Nutzende ein Element aus einer scrollbaren Liste auswählen können. Standardmäßig wird die Liste der auswählbaren Elemente unendlich in beide Richtungen wiederholt, um den Eindruck eines rotierenden Zylinders zu vermitteln, der von der Seite betrachtet wird. In späteren Versionen werden zwei Funktionen hinzugefügt: das Andocken an einen Wert nach Wischen/Fingern und Hinzufügen einer Funktion zu PickerState, um zum aktuellen Wert zu setzen bzw. zu scrollen. (I6461b)
API-Änderungen
- Es wurde ein ScalingLazyItemScope und einige neue Modifikatoren für „fillParentMaxSize/fillParentMaxWidth/fillParentMaxHeight“ hinzugefügt, damit die Größe von Listenelementen basierend auf der Größe des übergeordneten Containers angepasst werden kann. Elemente können so festgelegt werden, dass sie die gesamte Größe des übergeordneten Elements oder einen Teil davon ausfüllen. Dadurch werden Funktionen verfügbar gemacht, die bereits in LazyRow/Column (I4612f) verfügbar sind.
- ScalingLazyColumn unterstützt jetzt, dass Elemente einen Schlüssel haben können. Es wurden auch praktische Methoden hinzugefügt, um das Hinzufügen von Elementen aus Arrays und Listen zu ermöglichen. (Ic1f89)
Fehlerkorrekturen
- Zusätzliche Beispiele für TimeText (I8cb64)
Version 1.0.0-alpha10
3. November 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha10
, androidx.wear.compose:compose-material:1.0.0-alpha10
und androidx.wear.compose:compose-navigation:1.0.0-alpha10
wurden veröffentlicht. Version 1.0.0-alpha10 enthält diese Commits.
Neue Funktionen
Ein InlineSlider für die Funktion zum Verfassen von Nachrichten wurde hinzugefügt. Mit InlineSlider können Nutzer eine Auswahl aus einem Wertebereich treffen. Der Auswahlbereich wird als Balken zwischen dem Mindest- und Höchstwert des Bereichs angezeigt, aus dem Nutzer einen einzelnen Wert auswählen können. (If0148)
Sieh dir das neue WearOS-Codelab zu Compose für an.
API-Änderungen
- MacroBenchmark hat jetzt einen
minSdkVersion
von23
. (If2655)
Fehlerkorrekturen
- Aktualisierung der Übergangsbehandlung in SwipeDismissableNavHost in einem SideEffect (I04994, b/202863359)
- Verarbeitung des Übergangs in SwipeDismissableNavHost aktualisieren (I1cbe0, b/202863359)
Version 1.0.0-alpha09
27. Oktober 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha09
, androidx.wear.compose:compose-material:1.0.0-alpha09
und androidx.wear.compose:compose-navigation:1.0.0-alpha09
wurden veröffentlicht. Version 1.0.0-alpha09 enthält diese Commits.
Neue Funktionen
- Wir haben die Entwicklervorschau von Compose für Wear OS eingeführt. In unserem Blogpost finden Sie die wichtigsten zusammensetzbaren Funktionen sowie Links zu weiteren Ressourcen für deren Verwendung.
API-Änderungen
- Entwickler können jetzt alle Farben des Farbdesigns von Wear Material Design anpassen. (I4759b, b/199754668)
Fehlerkorrekturen
- SwipeToCloseBox-Beispiele hinzugefügt, die den Status beibehalten (Ibaffe)
- Wir haben Links zu developer.android.com-Leitfäden von KDocs für CurvedText, TimeText und SwipeToDismissBox hinzugefügt. (I399d4)
- „SwipeCloseableNavHost“ wird jetzt ausgelöst, wenn kein aktuelles Ziel vorhanden ist. Dies bedeutet, dass NavGraph nicht mit der Dienstprogrammfunktion „wear.compose.navigation.composable“ erstellt wurde (I91403).
- Zusätzliche Dokumentation und Beispiele für die Verwendung von Zeitquellen in TimeText (I4f6f0) 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 „
body
“-Eigenschaften von AppCard und Titelkarte in „content
“ umbenannt und an das Ende der Unterkunftsliste verschoben, damit sie als nachgestelltes Lambda angegeben werden können. Außerdem wurdebodyColor
incontentColor
umbenannt, um den neuen Slotnamen zu entsprechen. (I57e78)
Fehlerkorrekturen
- Es wurden Links zu developer.android.com-Leitfäden von KDocs für Schaltflächen, Karten, Chips, Designs, Positionsindikatoren und Skalierungskomponenten von Lazy-Spalten hinzugefügt. (I22428)
- Fehler bei WearOS-Wischbewegungen (WischenToVerwerfen) lassen sich manchmal nicht beheben, wenn Wischbewegungen nicht funktionieren. (I9387e)
- Beispiele für Button, CompactButton, Chip, CompactChip, AppCard, Titelkarte, ToggleButton, SwitchChip und SplitToggleChip (Iddc15) wurden hinzugefügt.
- Es wurden MicroBenchmark-Leistungstests für Card, Chip, SwitchChip, TimeText und ScalingLazyColumn hinzugefügt. (If2fe9)
Version 1.0.0-alpha07
29. September 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha07
, androidx.wear.compose:compose-material:1.0.0-alpha07
und androidx.wear.compose:compose-navigation:1.0.0-alpha07
wurden veröffentlicht. Version 1.0.0-alpha07 enthält diese Commits.
Neue Funktionen
- Eine CurvedText-Komponente in Material wurde hinzugefügt. Diese Komponente ermöglicht es Entwicklern, einfach gebogenen Text zu schreiben, der der Krümmung eines Kreises folgt (normalerweise am Rand eines runden Bildschirms). (I19593)
API-Änderungen
- Tests für TimeText (Idfead) hinzugefügt
- Wandeln Sie ArcPaddingValues in eine Schnittstelle um. (Iecd4c)
- Animation zu SwipeToDismissBox (I9ad1b) hinzugefügt
- Der Parameter SwipeToCloseBox API wurde hinzugefügt, sodass die Wischgeste deaktiviert werden kann, wenn keine Hintergrundinhalte angezeigt werden. (I313d8)
rememberNavController()
verwendet jetzt einen optionalen Satz vonNavigator
-Instanzen, die dem zurückgegebenenNavController
hinzugefügt werden, um optionale Navigatoren, z. B. aus Accompanist Navigation Material, besser zu unterstützen. (I4619e)- Verweisen Sie auf „NamedNavArgument“ aus „navigation-common“ und entfernen Sie die Kopie aus „wear.compose.navigation“. (I43af6)
Fehlerkorrekturen
- CurvedRow-Testfehler auf kleineren Geräten behoben. (If7941)
- Mögliches Flackern in CurvedRow wurde behoben, wenn der Inhalt aktualisiert wurde. Dadurch wird sichergestellt, dass die gebogene Zeile neu gemessen wird (Ie4e06).
- „ChipDefaults.flavorBackgroundChipColors()“ wurde gemäß Änderungen an den UX-Spezifikationen aktualisiert. Der Farbverlauf beginnt jetzt mit „MaterialTheme.colors.primary“ bei „Alpha“ bei 32,5% und endet mit „MaterialTheme.colors.surface“ mit „Alpha“ bei 0% über einem Hintergrund von „MaterialTheme.colors.surface“ mit einem Alphawert von 75 %. (Id1548)
- Wir haben die Farben der Ein-/Aus-Schaltflächen im ausgewählten Status aktualisiert, damit sie den aktuellen Richtlinien für Wear Material Design-UX-Spezifikationen entsprechen. Bei Auswahl von „UmschaltChips“ wird jetzt ein Farbverlaufshintergrund von „MaterialTheme.color.surface“ bei 0% Alpha, oben links bis „MaterialTheme.color.primary“ zu 32% Alpha, unten rechts und der Hintergrund „MaterialTheme.color.surface zu 75% Alpha“ angezeigt. Dies führt zu einem subtileren Unterschied zwischen aktiviertem und deaktiviertem Chip (Schalter-Chip). (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 Funktion auf oberster Ebene, hinzugefügt, die eine Struktur zur Handhabung von PositionIndicators (z. B. Scroll- oder Volume-Position) und einen Bereich am oberen Bildschirmrand zur Anzeige der Uhrzeit und des App-Status bietet. Außerdem wird eine Vignette unterstützt, mit der der obere und untere Rand des Bildschirms bei scrollbarem Inhalt unkenntlich gemacht werden kann. Der Hauptbereich des Scaffold ist der Bereich, in dem die Anwendungsinhalte platziert werden. (I5e0bf)
- TimeText-Implementierung für Wear Compose (I5654c) hinzugefügt
Wear Compose-Navigationsbibliothek
Wir haben den ersten Release der Wear Compose-Navigationsbibliothek hinzugefügt, die die Integration der Wear Compose- und der Androidx-Navigationsbibliotheken ermöglicht. Sie ermöglicht eine einfache Navigation zwischen @Composable-Funktionen als Ziele in Ihrer Anwendung.
Diese erste Version bietet Folgendes:
- Eine zusammensetzbare Funktion (
SwipeDismissableNavHost
), die eine Navigationsgrafik hostet und die Rückwärtsnavigation über Wischgesten ermöglicht NavGraphBuilder.composable
-Erweiterung zur Unterstützung beim Erstellen von NavigationsdiagrammenrememberSwipeDismissableNavController()
, um den Windenstatus zuzulassen
- Eine zusammensetzbare Funktion (
Anwendungsbeispiel, bei dem wir zwei Bildschirme erstellen und zwischen ihnen wechseln:
val navController = rememberSwipeDismissableNavController() SwipeDismissableNavHost( navController = navController, startDestination = "start" ) { composable("start") { Column( horizontalAlignment = Alignment.CenterHorizontally, verticalArrangement = Arrangement.Center, modifier = Modifier.fillMaxSize(), ) { Button(onClick = { navController.navigate("next") }) { Text("Go") } } } composable("next") { Column( horizontalAlignment = Alignment.CenterHorizontally, verticalArrangement = Arrangement.Center, modifier = Modifier.fillMaxSize(), ) { Text("Swipe to go back") } } }
Wear Compose-Navigation ist als separate Bibliothek verpackt, sodass einfache WearCompose-Anwendungen, die ihre eigene handgesteuerte Navigation implementieren, nicht von der Androidx-Navigationsbibliothek abhängig sind.
API-Änderungen
SwipeDismissableNavHost
wurde aktualisiert, umrememberSaveable
durch Festlegen der Schlüsselidentität für Hintergrund und Inhalte (I746fd) zu unterstützen.- Wir haben einen PositionIndicator-Adapter hinzugefügt, der LazyListState (I21b88) verarbeiten kann.
- „SwipeToDismissBox“ wurde aktualisiert, um ConfirmSaveable zu unterstützen (Ie728b).
- Wir haben ReverseLayout-Unterstützung für ScalingLazyColumn hinzugefügt. Dadurch können Sie die Scroll- und Layoutrichtung umkehren (I9e2fc).
performGesture
undGestureScope
wurden verworfen und durchperformTouchInput
undTouchInjectionScope
ersetzt. (Ia5f3f, b/190493367)- Wir haben „VignetteValue“ in „VignettePosition“ und in „VignetteValue.2“ in „VignettePosition.TopAndBottom“ umbenannt. (I57ad7)
- Wir haben ScalingLazyColumnState in ScalingLazyListState, ScalingLazyColumnItemInfo in ScalingLazyListItemInfo, ScalingLazyColumnLayoutInfo in ScalingLazyListLayoutInfo und ScalingLazyColumnScope in ScalingLazyListScope für den Fall, dass wir uns später entscheiden, eine ScalingLazyRow-Implementierung hinzuzufügen, geändert. (I22734)
Fehlerkorrekturen
- Die CompactChip-Dokumentation wurde aktualisiert, um zu beschreiben, was passiert, wenn weder ein Symbol noch ein Label angegeben wird. (I4ba88)
- Wir haben einige Anpassungen an den Komponenten der Wear-Karte vorgenommen. (I6b3d0)
- Abstand zwischen Titel und Text der Titelkarte von 8 dp auf 2 dp reduziert
- Schriftart der Titelkarte in der Kopfzeile wurde von body in title3 geändert.
- Der Farbverlauf des Kartenhintergrunds wurde geändert, sodass er dunkler erscheint.
Version 1.0.0-alpha05
1. September 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha05
und androidx.wear.compose:compose-material:1.0.0-alpha05
werden veröffentlicht. Version 1.0.0-alpha05 enthält diese Commits.
API-Änderungen
- ArcPaddingValues als @Stable markieren (I57deb)
- ScalingLazyColumnState implementiert jetzt die ScrollableState-Oberfläche, mit der Entwickler programmatischen Zugriff zum Scrollen durch die Komponente erhalten. I47dbc
Fehlerkorrekturen
- Wir haben den Abstand zwischen Symbol und Text im Chip und zum Ein/Aus-Chip reduziert, um sie an die aktualisierten UX-Spezifikationen anzupassen (I83802).
Version 1.0.0-alpha04
18. August 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha04
und androidx.wear.compose:compose-material:1.0.0-alpha04
werden veröffentlicht. Version 1.0.0-alpha04 enthält diese Commits.
Neue Funktionen
- Es wurden eine SwipeToDismissBox und ein Modifikator zum Wischen hinzugefügt, mit dem eine Wischgeste zum Schließen von links nach rechts unterstützt werden kann. Obwohl diese Funktion unabhängig von den Navigationskomponenten ist, wird erwartet, dass sie dazu dient, einen Bildschirm zu verlassen und zu einem anderen zu wechseln. Es wurden Integrationstests für die Demo „Zum Schließen durch Wischen“ hinzugefügt. (I7bbaa)
- Wir haben der Klasse „ScalingLazyColumnState“ die Schnittstellen „ScalingLazyColumnItemInfo“ und „ScalingLazyColumnLayoutInfo“ hinzugefügt, damit Entwickler die tatsächlichen Positionen und Größen von Elementen in ScalingLazyColumn nach Anwendung der Skalierung kennen können. Außerdem haben wir einen Fehler in Bezug auf die Berechnung der Skalierung behoben, wenn die Inhaltsauffüllung vom Typ "top" auf die ScalingLazyColumn angewendet wird. (I27c07)
API-Änderungen
- Fügen Sie die Klasse „CurvedTextStyle“ hinzu, um Optionen für gebogene Textstile anzugeben. Ähnlich wie TextStyle, unterstützt aber jetzt nur noch Farbe, Schriftgröße und Hintergrund. In Zukunft werden weitere Stiloptionen hinzugefügt. (I96ac3)
- Wir haben der Klasse „ScalingLazyColumnState“ die Schnittstellen „ScalingLazyColumnItemInfo“ und „ScalingLazyColumnLayoutInfo“ hinzugefügt, damit Entwickler die tatsächlichen Positionen und Größen von Elementen in ScalingLazyColumn nach Anwendung der Skalierung kennen können. Außerdem haben wir einen Fehler in Bezug auf die Berechnung der Skalierung behoben, wenn die Inhaltsauffüllung vom Typ "top" auf die ScalingLazyColumn angewendet wird. (I27c07)
@ExperimentalWearMaterialApi
wurde der AufzählungSwipeDismissTarget
hinzugefügt, die 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
werden 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, der der Krümmung eines Kreises folgt (normalerweise am Rand eines kreisförmigen Bildschirms) (Id1267)
- Wir haben
CardDefaults.imageBackgroundPainter()
inCardDefaults.imageWithScrimBackgroundPainter()
umbenannt, um zu verdeutlichen, dass das Hintergrundbild mit einem Gitter überlagert wurde. (I53206) - Hinzufügen der ScalingLazyColumn-Komponente, die eine Listenkomponente für Wear-Material bereitstellt, die eine Fischaugenansicht bietet, wobei die Listeninhalte verkleinert und transparent werden, wenn sie zum Rand der Komponente skaliert werden. (I7070c)
Fehlerkorrekturen
- Als Reaktion auf ein Update der UX-Spezifikationen haben wir die Standardfarbe des appName-Inhalts in AppCard geändert. Die Standardfarbe für „appName“ ist jetzt
MaterialTheme.colors.onSurfaceVariant
. Außerdem wurde eine fehlende Parameterdokumentation 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
werden veröffentlicht. Version 1.0.0-alpha02 enthält diese Commits.
Neue Funktionen
- Die neue Klasse CurvedRow wurde für das Layout von zusammensetzbaren Funktionen in einem Bogen hinzugefügt (I29941).
- Es wurde ein neuer Kartentyp zur Verwendung in Anwendungen hinzugefügt (TitleCard). Außerdem wird jetzt die Unterstützung von Bildern als Hintergrund für Karten hinzugefügt, um den Inhalt hervorzuheben (I53b0f).
API-Änderungen
- Unterstützung für die radiale Ausrichtung in CurvedRow hinzufügen (ähnlich der vertikalen Ausrichtung in einer Zeile) (Id9de5)
- Die neue CurvedRow-Klasse für das Layout von zusammensetzbaren Funktionen in einem Bogen hinzufügen (I29941)
- Es wurde ein neuer Kartentyp zur Verwendung in Anwendungen hinzugefügt (TitleCard). Außerdem wird jetzt die Unterstützung von Bildern als Hintergrund für Karten hinzugefügt, um den Inhalt hervorzuheben (I53b0f).
- Ein-/Aus-Schaltflächen (Kästchen, Schalter und Optionsfelder) wurden zu „SwitchChipDefaults“ hinzugefügt, um Entwicklern die Konfiguration von SwitchChip und SplitToggleChips zu erleichtern (I7b639).
- Der Abstand zwischen Start- und Endinhalt für Chips wurde so aktualisiert, dass er einheitlich 14 dp beträgt, unabhängig davon, ob auf dem Chip ein Symbol vorhanden ist (zuvor 12 dp, wenn ein Symbol vorhanden ist, 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 Darstellung des Hintergrundbilds in Kacheln 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 Schaltfläche und Ein/Aus-Schaltfläche hinzugefügt. (5e27ed2)
- Es wurden weitere Chiptests hinzugefügt, um die Inhaltsfarben von „imageBackgroundChips“ abzudecken (Ia9183).
Version 1.0.0-alpha01
1. Juli 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha01
und androidx.wear.compose:compose-material:1.0.0-alpha01
werden 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 WearOS-Wearables. Diese erste Alphaversion enthält frühe, funktionale Implementierungen für Folgendes:
- „Material Theme“: Konfiguriert die Farben, Typografie und Formen in den in dieser Bibliothek verwendeten Komponenten einheitlich.
- Chip, CompactChip – Chips sind stadionform und können für Symbole, Beschriftungen und sekundäre Beschriftungen verwendet werden.
- – SwitchChip, SplitToggleChip – eine spezielle Art von Chip, der einen Steckplatz für ein Ein-/Aus-Symbol mit zwei Status enthält, z. B. ein Optionsfeld oder ein Kästchen. Der SplitToggleChip hat außerdem zwei antippbare Bereiche, einen anklickbar und einen antippbar.
- Schaltfläche, CompactButton: Schaltflächen sind kreisförmig geformt und haben eine einzelne Fläche für ein Symbol oder minimalen Text (maximal 3 Zeichen).
- Ein/Aus-Schaltfläche: Eine Schaltfläche, mit der eine Aktion aktiviert oder deaktiviert werden kann, mit einer einzelnen Fläche für Symbol oder minimaler Text (maximal 3 Zeichen).
- Karte, AppCard – ein rechteckiges Format mit abgerundeten Ecken, die Flächen für Inhalte wie App-Symbol, Zeit, Titel und Text bieten.
In zukünftigen Versionen wird das Widget-Set um Unterstützung für Material Design-Auswahlen, Schieberegler, Listen, Seitenindikatoren, Dialoge, Scroll-RSB-Indikatoren, Toasts und mehr erweitert.
Darüber hinaus werden weitere Wearable-spezifische Funktionen wie gebogene Layouts und Text sowie ein Gerüst unterstützt, mit dem Entwickler ganz einfach Wearable-Apps/Overlays erstellen können.
Wear Compose Material wurde nach den gleichen Prinzipien wie Compose Material entwickelt, ist aber auf Wearables ausgerichtet. Bei der Entwicklung für ein Wearable-Gerät sollte anstelle der Compose Material-Bibliothek die Wear Compose Material-Bibliothek verwendet werden.
Die beiden „Material“-Bibliotheken sollten sich gegenseitig ausschließen und dürfen nicht in derselben App verwendet werden. Wenn Entwickler die Compose Material-Bibliothek in ihre Abhängigkeiten einbeziehen, würde dies bedeuten, dass a) Komponenten in der Wear Compose-Materialbibliothek fehlen, teile uns bitte mit, was du benötigst, oder b) eine Komponente verwenden, die wir nicht für die Verwendung auf einem Wearable-Gerät empfehlen.