Jetpack Compose-Anwendungen für Wearable-Geräte schreiben, indem
Funktionen zur Unterstützung bestimmter am Körper tragbarer Geräte, Größen, Formen und
Navigationsgesten.
Um eine Wear-Abhängigkeit hinzuzufügen, musst du das Maven-Repository von Google zu deinem
Projekt arbeiten. Maven-Repository von Google lesen
.
Fügen Sie der Datei build.gradle die Abhängigkeiten für die Artefakte hinzu, die Sie benötigen
Ihre App oder Ihr Modul:
Cool
dependencies {
implementation "androidx.wear.compose:compose-foundation:1.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.
}
Dein Feedback hilft uns, Jetpack zu verbessern. Teilen Sie uns mit, wenn Sie neue Ausgaben entdecken oder
zur Verbesserung dieser Bibliothek. In der
bestehende Probleme
in dieser Bibliothek, bevor Sie eine neue erstellen. So können Sie für ein vorhandenes Problem abstimmen:
indem Sie auf die Sternschaltfläche klicken.
androidx.wear.compose:compose-material3:1.0.0-alpha23 wurde veröffentlicht. Version 1.0.0-alpha23 enthält diese Commits.
API-Änderungen
Wir haben die APIs ToggleButton und RadioButton so aktualisiert, dass deaktivierte Farben konfiguriert werden können. (If13a7)
Wir haben eine neue CircularProgressIndicator für Material3 hinzugefügt. (Ib3bd7)
Fehlerkorrekturen
Wir haben einen Fehler behoben, bei dem auswählbare Schaltflächen zum Umschalten doppelt angetippt wurden, wenn sie bereits ausgewählt waren. (I7ed88)
Version 1.0.0-alpha22
1. Mai 2024
androidx.wear.compose:compose-material3:1.0.0-alpha22 wurde veröffentlicht. Version 1.0.0-alpha22 enthält diese Commits.
API-Änderungen
Wir haben die Material3-ColorScheme aktualisiert. (I7b2b8)
Wir haben den Material3 Switch aktualisiert. Neben einigen Farbänderungen ist das Häkchen nun mit dem des Kästchens identisch. (Icac7b)
Fehlerkorrekturen
Aktualisieren Sie alle Integrationsdemos, um den neuen rotaryScrollable-Modifikator zu verwenden. (I25090)
Version 1.0.0-alpha21
17. April 2024
androidx.wear.compose:compose-material3:1.0.0-alpha21 wurde veröffentlicht. Version 1.0.0-alpha21 enthält diese Commits.
Dieser Release wurde aufgrund eines technischen Problems in der vorherigen Version ausgelöst, durch das JAR-Quelldateien fehlten. In dieser Version gibt es keine neuen Commits.
Version 1.0.0-alpha20
3. April 2024
androidx.wear.compose:compose-material3:1.0.0-alpha20 wurde veröffentlicht. Version 1.0.0-alpha20 enthält diese Commits.
Fehlerkorrekturen
Wir haben die Alphas bei gedrückter und fokussierter Wellen für den Kontrast angepasst. (I59f0a)
Wir haben den Abstand zwischen primären und sekundären Labels in Button, ToggleButton und RadioButton gemäß den neuesten Änderungen an Typografie und Zeilenhöhe hinzugefügt. (I2c0ba)
Version 1.0.0-alpha19
6. März 2024
androidx.wear.compose:compose-material3:1.0.0-alpha19 wurde veröffentlicht. Version 1.0.0-alpha19 enthält diese Commits.
API-Änderungen
Wir haben der Wear Compose Material3-Bibliothek TimeText hinzugefügt. Diese Komponente zeigt die aktuelle Uhrzeit und den zusätzlichen Status oben auf dem Bildschirm an. Die neue, prägnante Material3 API vermeidet Duplikate zwischen linearen und gekrümmten Inhalten. (I4d7c3)
Wir haben die Parameternamen für RadioButton von onSelected zu onSelect aktualisiert. (I1a971)
Tokenisieren Sie RadioButton und SplitRadioButton und refaktorieren Sie außerdem die vorhandenen Methoden, um die Anzahl der CompositionLocal-Suchen zu reduzieren. Dazu werden im Cache gespeicherte Farbinstanzen hinzugefügt und die Methoden von RadioButtonColors und SplitRadioButtonColors intern verwendet.
(I02b33)
Wir haben das Standardmuster für CardColors, ToggleButtonColors und SplitToggleButtonColors umgestaltet, indem intern im Cache gespeicherte Instanzen erstellt und die Nutzung von CompositionLocal reduziert wurde. (If3fec)
Wir haben die Button API so aktualisiert, dass standardmäßig buttonColors verwendet wird, und das doppelte filledButtonColors entfernt. (I4fe3b)
Wir haben die Standardmuster für ButtonColors, IconButtonColors und TextButtonColors umgestaltet, indem intern eine im Cache gespeicherte Instanz erstellt und die Nutzung von CompositionLocal reduziert wurde. (I5f51c)
Wir haben den Aufwand für rememberUpdatedState in komponentenspezifischen Farbklassen entfernt und Zugriffsmethoden innerhalb von Farbklassen als intern gekennzeichnet. (If6571)
Fehlerkorrekturen
Wir haben Modifier.minimumInteractiveComponentSize aktualisiert, um Modifier.node zu verwenden. (Iba6b7)
Wir haben CompactButton hinzugefügt, das dieselben gefüllten, ausgefüllten Ton- und Umrissfarben wie für die Schaltfläche verwenden kann.(I05df0)
API-Änderungen
Wir haben RadioButton/SplitRadioButton als Container für Auswahleinstellungen wie die Radiosteuerung hinzugefügt. Dies unterscheidet sich von der vorhandenen ToggleButton insofern, als RadioButton auswählbar ist (und innerhalb einer Auswahlgruppe ausgeführt wird), während ToggleButton umschaltbar ist (und unabhängig ist). (I61275)
Wir entfernen LocalContentAlpha aus der Wear Compose Material3-Bibliothek, um es an die Compose Material3-Bibliothek anzupassen. (I49a0a)
Wear-Material und Wear Material3-Komponenten, für die eine MutableInteractionSource in ihrer API offengelegt wird, wurden aktualisiert. Jetzt ist eine MutableInteractionSource verfügbar, für die Nullwerte zulässig sind, die standardmäßig auf null gesetzt ist. Hier gibt es keine semantischen Änderungen: Wenn „null“ übergeben wird, bedeutet das, dass das MutableInteractionSource nicht gezogen werden soll. Es wird bei Bedarf innerhalb der Komponente erstellt. Wenn Sie den Wert auf null ändern, können einige Komponenten niemals ein MutableInteractionSource zuweisen. Andere Komponenten können eine Instanz nur bei Bedarf langsam erstellen, wodurch die Leistung dieser Komponenten verbessert wird. Wenn Sie die MutableInteractionSource nicht verwenden, die Sie an diese Komponenten übergeben, empfiehlt es sich, stattdessen null zu übergeben. Es wird auch empfohlen, ähnliche Änderungen an Ihren eigenen Komponenten vorzunehmen.
(Ib90fc, b/298048146)
Fügt eine neue Ripple API in die Bibliotheken wear:compose-material und wear:compose-material3 hinzu, die die verworfene rememberRipple ersetzt. Außerdem wird eine temporäre CompositionLocal (LocalUseFallbackRippleImplementation) hinzugefügt, damit Material-Komponenten wieder die eingestellten rememberRipple/RippleTheme APIs verwenden. Diese Funktion wird in der nächsten stabilen Version entfernt und dient nur als vorübergehende Migrationshilfe für Fälle, in denen du eine benutzerdefinierte RippleTheme bereitstellst. Informationen zur Migration und weitere Hintergrundinformationen zu dieser Änderung findest du unter developer.android.com.
(af92b21)
Wir haben kleinere Verbesserungen an der HorizontalPageIndicator API und der zugehörigen Dokumentation vorgenommen. (I60efc)
Wir haben ColorScheme so aktualisiert, dass sie unveränderlich ist. Einzelne Farbaktualisierungen sind jetzt weniger effizient, eine gebräuchliche Verwendung von Farben ist jedoch effizienter. Der Grund für diese Änderung ist, dass die Aktualisierung einzelner Farben bei den meisten Apps nicht in erster Linie erforderlich wäre. Dies ist immer noch möglich, aber es wird mehr als zuvor zusammengefügt. Im Gegenzug verringern wir die Anzahl der Statusabos durch den gesamten wesentlichen Code erheblich. Dies wirkt sich auf die Initialisierungs- und Laufzeitkosten von Standardanwendungsfällen aus. (Ibc2d6)
Die APIs ToggleButton und SplitToggleButton wurden aktualisiert, damit deaktivierte Farben angepasst werden können. Außerdem werden jetzt Material Design-Tokens für Farb- und Typografiewerte verwendet. (If087c)
Hintergrundfarben für Schaltflächenbild wurden aktualisiert, um Material Design-Tokens zu verwenden. (Iba215)
Wir haben die Komponenten Checkbox, Switch und RadioButton so geändert, dass sie schreibgeschützt sind, indem die Klickbehandlung entfernt wurde. Diese Komponenten sollen in der App „(Split)ToggleButton“ verwendet werden, in der Klicks verarbeitet werden. Deshalb sind die Komponenten jetzt klarer als reine Display-Komponenten gekennzeichnet und nicht für die eigenständige Verwendung unter Wear bestimmt. (I2322e)
Fehlerkorrekturen
Wir haben Tokens für Bewegungswerte für Dauer und Easing in Wear Compose Material 3 hinzugefügt. (I437cd)
Wir haben einen Fehler in ToggleButton, SplitToggleButton, Checkbox, Switch und RadioButton behoben, sodass Ankündigungen zur Barrierefreiheit nicht wiederholt werden (bisher wurden semantische Rollen dupliziert). (Ica281)
Wir haben die Materialcore-Ebene für CompactButton entfernt, um die Leistung zu verbessern. (7902858)
Wir haben die Grundlagenebene SwipeToDismissBox in BasicSwipeToDismissBox umbenannt. Dadurch wird der Unterschied zwischen der Komponente auf der Basisebene und der SwipeToDismissBox auf Material3-Ebene deutlicher. Letzterer ruft Farben aus dem MaterialTheme ab, die in Scrums verwendet werden sollen, und delegiert die verbleibende Implementierung an BasicSwipeToDismissBox. (Ibecfc)
Fehlerkorrekturen
Wir haben die Material-Kernebene für die Material3-Schaltfläche entfernt, um die Leistung zu verbessern. (I55555)
Wir haben den Parameter indicatorStyle aus Material3 HorizontalPageIndicator entfernt. Er folgt stattdessen der Form des Gerätebildschirms (linear oder rund). (I83728)
Wir haben die Farben für SplitToggleButton von denen für ToggleButton getrennt, indem wir eine neue SplitToggleButtonColors-Klasse hinzugefügt haben. (I78bee)
Füge „HorizontalPageIndicator“ in der Wear Material3-Mediathek hinzu. (Ifee99)
API-Änderungen
Aktualisiere Schaltflächen-Code, um Material3-Designtokens zu verwenden. (I92fe4)
Wear Material 3 Stepper und Slider APIs werden als experimentell deklariert, da die Details der Benutzeroberfläche noch nicht fertiggestellt sind. (I84d54)
Wir haben die ExtraSmall-Größen aus den runden TextButton und TextToggleButton entfernt, da diese Größe nur für IconButton gilt. (Ibc7d5)
Fehlerkorrekturen
Wir haben die Richtlinien zur Typografie für TextToggleButton so aktualisiert, dass „LabelLarge“ für LargeButtonSize (Ib10fa) verwendet wird
Wir haben die Richtlinien zur Typografie für TextButton so aktualisiert, dass „LabelLarge“ für LargeButtonSize verwendet wird (I8f3a7).
Wir haben das minimale Berührungsziel der Karte für eine bessere Barrierefreiheit auf 48 dp festgelegt. (Ieb9b1)
Demokarte mit AppCard mit Bild hinzufügen, Demokarte mit AppCard mit Hintergrund wird entfernt (Id735f)
Ein Fehler bei runden Schaltflächen wurde behoben, bei denen Modifikatoren nicht richtig verkettet wurden. (I5e162)
Wir haben die folgenden Auswahlsteuerelemente für Material3 hinzugefügt: Switch, Checkbox, RadioButton. (Ib918c)
Wir haben IconToggleButton und TextToggleButton zu Material3 hinzugefügt, einer runden Ein-/Aus-Schaltfläche mit einem einzelnen Slot für Symbol bzw. Text. Für verschiedene Größen von ToggleButton empfehlen wir die Verwendung von Modifier.touchTargetAwareSize mit den Größen, die auf den jeweiligen Ein/Aus-Schaltflächen angegeben sind. (I9f015)
Wir haben ListHeader und ListSubheader zu unseren Material3-Komponenten hinzugefügt. (Ibaefe)
Wir haben Material3 SwipeToDismissBox hinzugefügt, das die neue Foundation SwipeToDismissBox heißt und Standardfarbwerte aus seinem Design bereitstellt. (I275fb)
Wir haben das Material3-InlineSlider zu Wear Compose hinzugefügt. Nutzende können einen Wertebereich auswählen. Der Auswahlbereich wird als Balken zwischen den Mindest- und Höchstwerten des Bereichs angezeigt, aus dem Nutzer einen einzelnen Wert auswählen können. InlineSlider ist ideal zum Anpassen von Einstellungen wie Lautstärke oder Helligkeit. (I7085f)
API-Änderungen
Wir haben das Design „Formen in Wear Material 3“ aktualisiert, sodass jetzt RoundedCornerShape anstelle von Form verwendet wird. (Idb133)
Wir haben die Höhenkonstanten für die Schaltfläche veröffentlicht (Idbfde).
API-Dateien wurden aktualisiert, um mit Anmerkungen zur Unterdrückung der Kompatibilität zu versehen (I8e87a, b/287516207)
Wir haben InlineSliderColors in Wear Compose Material 3 mit einem öffentlichen Konstruktor und öffentlichen Properties aktualisiert. (I6b632)
Wir haben alle Farbklassen in Wear Compose Material 3 so aktualisiert, dass sie öffentliche Konstruktoren und öffentliche Eigenschaften enthalten. (I17702)
Wir haben die Konstanten für die horizontale und vertikale Auffüllung der Schaltfläche öffentlich gemacht. (Ieeaf7)
Fehlerkorrekturen
Die Höhe der Schaltfläche wird jetzt bei Bedarf an Inhalte angepasst, die aufgrund großer Schriftgrößen größer geworden sind (Iaf302).
Wir haben einige Schaltflächen-Demos aktualisiert, um Probleme mit der Barrierefreiheit zu beheben. (I61ce9)
Stepper und InlineSlider unterstützen jetzt wiederholte Klicks bei langem Drücken. Sie können den Wert von Stepper und InlineSlider jetzt schnell erhöhen oder verringern, indem Sie die Plus- oder Minustasten (I27359) gedrückt halten.
Wir haben der Bibliothek „Compose for Wear OS Material 3“ die Komponente „Stepper“ hinzugefügt. Dies ist ähnlich wie bei der vorherigen Material-Version, allerdings wird die Bereichssemantik standardmäßig weggelassen. Wir stellen Modifier.rangeSemantics für Fälle bereit, in denen eine Bereichssemantik erforderlich ist. (IC39fd)
Wir haben der Bibliothek „Compose for Wear OS Material 3“ curvedText hinzugefügt. (Ia8ae3)
Fehlerkorrekturen
Wir haben wear.compose.foundation auf eine API-Abhängigkeit von wear.compose.material3 aktualisiert (I72004, b/285404743).
Wir haben TextButton zu Material3 hinzugefügt, einer runden Schaltfläche mit einem einzigen Slot für Text. Für verschiedene Größen von TextButton empfehlen wir die Verwendung von Modifier.touchTargetAwareSize und ExtraSmallButtonSize, SmallButtonSize, DefaultButtonSize und LargeButtonSizeIcon in TextButtonDefaults. Die Standardeinstellung TextButton hat keinen Rahmen und einen transparenten Hintergrund für Aktionen mit geringer Betonung. Für Aktionen, die eine hohe Betonung erfordern, verwende filledTextButtonColors. Legen Sie für eine mittlere Betonung (TextButton mit Kontur) den Rahmen auf ButtonDefaults.outlinedButtonBorder fest. Um einen Mittelweg zwischen umrissen und ausgefüllt zu erhalten, verwenden Sie filledTonalTextButtonColors. (I667e4)
Wir haben der Wear Compose Material3-Bibliothek Card, OutlinedCard, AppCard und TitleCard hinzugefügt. AppCard und TitleCard können auch mithilfe von CardDefaults.outlinedCardColors und CardDefaults.outlinedCardBorder(I80e72) wie umrissen dargestellt werden.
API-Änderungen
Wir haben den Parameter „Button“-Label an das Ende verschoben, um die nachgestellte Lambda-Syntax zu unterstützen, und den Parameter „role“ entfernt, da dieser mit Modifier.semantics überschrieben werden kann. ButtonColors-Konstruktoren sind jetzt öffentlich. (IE1b6d)
Wir haben IconButton zu Material3 hinzugefügt, einer runden Schaltfläche mit einem einzelnen Slot für Symbol/Bild. Es gibt vier Varianten: IconButton, FilledIconButton, FilledTonalIconButton und OutlinedIconButton. Für verschiedene Größen von IconButton empfehlen wir die Verwendung von Modifier.touchTargetAwareSize und ExtraSmallButtonSize, SmallButtonSize, DefaultButtonSize und LargeButtonSizeIcon in IconButtonDefaults. Außerdem geben wir IconButtonDefaults.iconSizeFor an, um die empfohlene Symbolgröße für eine bestimmte Schaltflächengröße zu bestimmen. (I721d4)
Wir haben die Schaltflächenkomponente "Material 3" hinzugefügt. Das ist unsere stadionförmige Schaltfläche, die in der Wear Compose Material-Bibliothek früher "Chip" hieß. Aus Gründen der Einheitlichkeit mit der Bibliothek "Compose Material 3" wurde sie in Button umbenannt. Die Standardschaltfläche hat einen ausgefüllten Hintergrund und es gibt Schaltflächenvariationen für FilledTonal (stumm geschalteter Hintergrund), Umriss (transparent mit dünnem Rahmen) und Child (transparenter Hintergrund und kein Rahmen, die für ergänzende Aktionen mit geringfügig sichtbarer Auffälligkeit verwendet werden). Die runden Schaltflächen für einfache Symbol- und Textinhalte werden in einer zukünftigen Version folgen (Ia6942).
Wir haben eine DefaultTextStyle zu Wear Compose Material 3 hinzugefügt, wodurch PlatformTextStyle.includeFontPadding standardmäßig auf „true“ gesetzt ist (die aktuelle Einstellung). Auf diese Weise können wir in Zukunft die standardmäßige Deaktivierung des Schriftabstands mit den Texterstellungsbibliotheken synchronisieren (siehe Schriftabstand in „Compose“ für den Hintergrund korrigieren). (I7e461)
Material 3 ist die nächste Weiterentwicklung des Material Design und umfasst aktualisierte Designs und neu gestaltete Komponenten. Material 3 in Wear Compose wurde so entwickelt, dass es mit der Material 3 Compose-Bibliothek unter Android kohärent ist. Diese erste Alphaversion enthält frühe, funktionale Implementierungen des folgenden Elements:
Materialdesign: Konfiguriert Farbschema, Typografie und Formen über alle Komponenten der Bibliothek hinweg einheitlich. Beim Thema Material3 wurden die Farben überarbeitet, die einen barrierefreien Kontrast unterstützen. (I84005)
Text/Symbol – Bausteine für Wear Compose-Apps (I8e06a)
Wir werden Wear Material (androidx.wear.compose:compose-material) und Wear Material 3 (androidx.wear.compose:compose-material3) parallel weiter entwickeln. In zukünftigen Material3-Releases wird das Widget-Set um weitere bekannte Komponenten aus Compose for Wear OS erweitert, z. B. Schaltflächen, Auswahlelemente und Schieberegler.
Die Wear Material- und Wear Material 3-Bibliotheken schließen sich gegenseitig aus und sollten nicht in derselben App gemischt werden, hauptsächlich, weil sie auf unterschiedliche Themen verweisen, was zu unerwarteten Inkonsistenzen führen würde.
Version 1.4
Version 1.4.0-beta03
12. Juni 2024
androidx.wear.compose:compose-*:1.4.0-beta03 wurde veröffentlicht. Version 1.4.0-beta03 enthält diese Commits.
Fehlerkorrekturen
Wir haben Modifier.rotaryScrollable aktualisiert, um die Verwendung von „focusable“ durch „focusTarget“ zu ersetzen. (ID294b)
Wir haben ein Problem behoben, bei dem die ProgressIndicator unter „TalkBack“ wiederholt angezeigt wurde. (I94563)
Wir haben die Basisprofile der Wear Compose-Bibliothek aktualisiert. (I3cbc3)
Version 1.4.0-beta02
29. Mai 2024
androidx.wear.compose:compose-*:1.4.0-beta02 wurde veröffentlicht. Version 1.4.0-beta02 enthält diese Commits.
Fehlerkorrekturen
Wir haben die Begrenzungsbreite, die an Screenreader übergeben wird, von gebogenem Text erhöht, um Probleme beim Abschneiden zu beheben (Id865f).
Wir haben die Begrenzung von HorizontalPageIndicator beschränkt, die an Screenreader übergeben wurde. Zuvor belegte der Indikator den gesamten Bildschirm (Id8d7a).
Version 1.4.0-beta01
14. Mai 2024
androidx.wear.compose:compose-*:1.4.0-beta01 wurde veröffentlicht. Version 1.4.0-beta01 enthält diese Commits.
Die Version 1.4-beta01 von Compose für Wear OS gibt an, dass dieser Release der Bibliothek vollständig ist und die API gesperrt ist (sofern nicht als experimentell gekennzeichnet). Wear Compose 1.4 enthält die folgenden neuen Funktionen:
Wir haben Modifier.rotaryScrollable hinzugefügt, einen neuen Modifikator, der drehbare Ereignisse mit scrollbaren Containern verbindet. So können Nutzer auf ihrem Wear OS-Gerät über eine Krone oder einen drehbaren Rand scrollen. Außerdem unterstützen ScalingLazyColumn und Picker jetzt standardmäßig den Drehknopf. Mit dem Parameter rotaryScrollableBehavior können Sie das Scroll- oder Andockverhalten konfigurieren. Für das Andocken wird empfohlen, das Andocken über den Parameter flingBehavior sowie für das Scrollen durch Berührung bereitzustellen.
SwipeDismissableNavHost bietet jetzt eine Einstiegsanimation für In-App-Übergänge.
PositionIndicator wird jetzt standardmäßig beim ersten Aufrufen eines Bildschirms angezeigt.
SelectableChip und SplitSelectableChip wurden als Variante zu ToggleChip hinzugefügt – verwenden Sie dies mit RadioButton, um eine auswählbare Semantik anstelle einer ein-/ausschaltbaren Semantik für die Barrierefreiheit bereitzustellen
ListHeader unterstützt jetzt Höhenanpassungen, wenn Inhalte für große Schriftgrößen zusätzliche Höhe benötigen.
Fehlerkorrekturen
Wir haben einen Fehler behoben, bei dem bei auswählbaren Chips das Umschalten durch Doppeltippen angesagt wurde, wenn sie bereits ausgewählt waren. (I7ed88)
Version 1.4.0-alpha08
1. Mai 2024
androidx.wear.compose:compose-*:1.4.0-alpha08 wurde veröffentlicht. Version 1.4.0-alpha08 enthält diese Commits.
API-Änderungen
Wir haben folgende Änderungen an der neuen Rotary API vorgenommen: Modifier.rotary wurde in Modifier.rotaryScrollable umbenannt. Die RotaryBehavior-Schnittstelle wurde in RotaryScrollableBehavior und ihre Funktion handleScrollEvent in performScroll umbenannt. hat RotaryScrollableAdapter in RotaryScrollableLayoutInfoProvider umbenannt und die Property scrollableState entfernt. (I0c8a6)
Wir haben zusätzliche Änderungen an der Rotary API vorgenommen: RotaryScrollableLayoutInfoProvider wurde in RotarySnapLayoutInfoProvider umbenannt, da dieser Anbieter nur für Drehköpfe mit Andocken benötigt wird. hat den Typ des Parameters snapOffset in RotaryScrollableDefaults.snapBehavior snapOffset von "Int" zu "Dp" geändert. (Iddebe)
Wir haben den clickInteractionSource-Parameter auf SplitSelectableChip in containerInteractionSource umbenannt. (Ia8f84)
Wir haben die Namen der Callback-Parameter für Klicks für SplitSelectableChip von onClick zu onSelectionClick und von onBodyClick in onContainerClick geändert. (I32237)
Fehlerkorrekturen
Wir haben den horizontalen Abstand für PositionIndicator auf 2 dp (vorher 5 dp) aktualisiert, um einen Fehler zu beheben, bei dem sich PositionIndicator (Bildlaufleiste) scrollbarer Inhalte überschneidet. Hinweis: Durch den geänderten Abstand werden vorhandene Screenshots, die das PositionIndicator enthalten, voraussichtlich nicht mehr funktionieren. (I57472)
Wir haben die Dokumentation für das neue Rotary API verbessert, indem die Unterschiede zwischen hochauflösenden drehbaren Geräten beschrieben werden. (I63abe)
Wir haben in SwipeDismissableNavHost eine Ausnahme außerhalb des Bereichs behoben, die ausgelöst werden könnte, wenn interpolierte Alphawerte kleiner als null waren. (Ib75a1, b/335782510)
Version 1.4.0-alpha07
17. April 2024
androidx.wear.compose:compose-*:1.4.0-alpha07 wurde veröffentlicht. Version 1.4.0-alpha07 enthält diese Commits.
API-Änderungen
Wir haben Modifier.rotary hinzugefügt, einen neuen Modifikator, der drehbare Ereignisse mit scrollbaren Containern verbindet. So können Nutzer auf ihrem Wear OS-Gerät über eine Krone oder einen drehbaren Rand scrollen. Darüber hinaus unterstützen ScalingLazyColumn und Picker jetzt standardmäßig die Drehknopfeingabe mit neuen Überlastungen, die den Parameter rotaryBehavior enthalten, um die Konfiguration von Scrollen oder Andocken anzugeben. Wenn der Parameter rotaryBehavior auf Andocken eingestellt ist, empfiehlt es sich, auch den Parameter flingBehavior für das Andocken durch Berührung einzurichten. (I2ef6f)
NestedScroll-Quellen „Ziehen und Ziehen“ werden durch UserInput und SideEffect ersetzt, um die erweiterte Definition dieser Quellen zu ermöglichen, die jetzt Animationen (Nebeneffekt) sowie Mausrad und Tastatur (UserInput) umfassen. (I40579)
Wir haben SelectableChip und SplitSelectableChip hinzugefügt, um die Unterscheidung zwischen Ein-/Aus-Schaltflächen wie Switch/Checkbox und auswählbaren Steuerelementen wie RadioButton zu verdeutlichen. Dies ersetzt die zuvor hinzugefügten Überlastungen von ToggleChip/SplitToggleChip durch selectionControl-Parameter. (Ia0217)
Der Sichtbarkeitsmodifikator von IndeterminateStrokeWidth in ProgressIndicatorDefaults wurde zu „Öffentlich“ geändert. (I5b5a4)
Version 1.4.0-alpha06
3. April 2024
androidx.wear.compose:compose-*:1.4.0-alpha06 wurde veröffentlicht. Version 1.4.0-alpha06 enthält diese Commits.
Fehlerkorrekturen
Im Rahmen der größeren Bemühungen, das Verhalten von Rotary von Horologist zu AndroidX zu migrieren, haben wir einen internen Entwurf für die Rotary-Unterstützung hinzugefügt. (I617d1)
Im Rahmen der größeren Bemühungen, das Verhalten von Rotary von Horologist zu AndroidX zu migrieren, haben wir einen internen Entwurf für die haptische Unterstützung hinzugefügt. (I5568a)
Version 1.4.0-alpha05
20. März 2024
androidx.wear.compose:compose-*:1.4.0-alpha05 wurde veröffentlicht. Version 1.4.0-alpha05 enthält diese Commits.
API-Änderungen
Die Properties initialCenterItemIndex und initialCenterItemScrollOffset von ScalingLazyListState wurden veröffentlicht. (I0c616)
Die FullScreenStrokeWidth von ProgressIndicatorDefaults wurde veröffentlicht. (Ibea23)
Fehlerkorrekturen
Wir haben die Leistung von PositionIndicator verbessert, indem die Anzahl der Aufrufe von layoutInfo von ScalingLazyColumn reduziert wird. (Idc83d)
Version 1.4.0-alpha04
6. März 2024
androidx.wear.compose:compose-*:1.4.0-alpha04 wurde veröffentlicht. Version 1.4.0-alpha04 enthält diese Commits.
API-Änderungen
Wir haben eine neue Überlastung für ToggleChip und SplitToggleChip hinzugefügt, die einen selectionControl-Parameter anstelle des toggleControl-Parameters verwendet. Sollte mit dem Steuerelement RadioButton verwendet werden, um eine auswählbare Semantik anstelle einer ein-/ausschaltbaren Semantik für die Barrierefreiheit bereitzustellen (I1d6d9).
Die Parameternamen für die neue selectionControl-Überlastung wurden für ToggleChip und SplitToggleChip (I1a971) von onSelected auf onSelect aktualisiert.
Der Modifier.inspectable-Wrapper wurde eingestellt. Diese API führt zu mehr Entwertungen als notwendig, weshalb von ihrer Verwendung abgeraten wird. Entwicklern wird empfohlen, die inspectableProperties()-Methode auf ModifierNodeElement zu implementieren, wenn sie Tools Modifikatoreigenschaften zur Verfügung stellen möchten. (Ib3236)
Fehlerkorrekturen
Wir haben einen Dokumentationsfehler für WearPreview*-Annotationen behoben. (Id526d)
Wir haben einen Fehler beim Anzeigen zum Einblenden durch Wischen behoben. Es war möglich, mit einer zugesicherten Aktion für ein Element zu interagieren und diese abzubrechen, indem das Wischen über ein anderes Element begonnen wurde. (Ide059)
Wir haben die ListHeader aktualisiert. Sie unterstützt jetzt Höhenanpassungen für Inhalte, die für große Schriftgrößen eine zusätzliche Höhe erfordern. (I7290c, b/251166127)
Wir haben SwipeDismissableNavHost eine Eingabeanimation für In-App-Übergänge hinzugefügt (cfeb79a).
PositionIndicator wird jetzt standardmäßig beim ersten Aufrufen eines Bildschirms angezeigt. Diese Änderung wurde eingeführt, um die Wear-Qualitätsrichtlinien zu erfüllen. Leider bedeutet dies, dass Screenshot-Tests auf Bildschirmen mit PositionIndicator aktualisiert werden müssen, da PositionIndicator zuvor nicht angezeigt worden war. (419cef7)
API-Änderungen
Wir haben den Bibliotheken wear:compose-material und wear:compose-material3 eine neue Ripple API hinzugefügt, die die eingestellte rememberRipple ersetzt. Außerdem wird eine temporäre CompositionLocal (LocalUseFallbackRippleImplementation) hinzugefügt, damit Material-Komponenten wieder die eingestellten rememberRipple/RippleTheme APIs verwenden. Diese Funktion wird in der nächsten stabilen Version entfernt und dient nur als vorübergehende Migrationshilfe für Fälle, in denen du eine benutzerdefinierte RippleTheme bereitstellst. Informationen zur Migration und weitere Hintergrundinformationen zu dieser Änderung findest du unter developer.android.com. (af92b21)
Wir haben ColorScheme so aktualisiert, dass sie unveränderlich ist. Einzelne Farbaktualisierungen sind jetzt weniger effizient, eine gebräuchliche Verwendung von Farben ist jedoch effizienter. Der Grund für diese Änderung ist, dass die Aktualisierung einzelner Farben bei den meisten Apps nicht in erster Linie erforderlich wäre. Dies ist immer noch möglich, aber es wird mehr als zuvor zusammengefügt. Im Gegenzug verringern wir die Anzahl der Statusabos durch den gesamten wesentlichen Code erheblich, was sich auf die Initialisierungs- und Laufzeitkosten von Standardanwendungsfällen auswirkt. (f5c48b7)
Wear-Material und Wear-Material3-Komponenten, die eine MutableInteractionSource in ihrer API offenlegen, wurden aktualisiert. Jetzt ist eine MutableInteractionSource verfügbar, für die Nullwerte zulässig sind, die standardmäßig auf null gesetzt ist. Hier gibt es keine semantischen Änderungen: Wenn „null“ übergeben wird, bedeutet das, dass das MutableInteractionSource nicht gezogen werden soll. Es wird bei Bedarf innerhalb der Komponente erstellt. Wenn Sie den Wert auf null ändern, können einige Komponenten niemals ein MutableInteractionSource zuweisen. Andere Komponenten können eine Instanz nur bei Bedarf langsam erstellen, wodurch die Leistung dieser Komponenten verbessert wird. Wenn Sie die MutableInteractionSource nicht verwenden, die Sie an diese Komponenten übergeben, empfiehlt es sich, stattdessen null zu übergeben. Es wird auch empfohlen, ähnliche Änderungen an Ihren eigenen Komponenten vorzunehmen. (f8fa920)
rememberExpandableState wurde aktualisiert, um den maximierbaren Status zu speichern. Dadurch werden die Daten gespeichert, wenn Sie zu einem anderen Bildschirm wechseln, und wiederhergestellt werden, wenn Sie zum ursprünglichen Bildschirm zurückkehren. (5c80095)
Fehlerkorrekturen
Wir haben die ReduceMotion-Einstellung aktualisiert, um einen Lebenszyklus-bewussten Listener zu verwenden. (7c6b122)
Wir haben den Listener von TouchExplorationStateProvider aktualisiert, um den Lebenszyklus zu berücksichtigen (be28b01).
Wir haben die Materialcore-Ebene für CompactButton entfernt, um die Leistung zu verbessern (25db8e9).
BasicSwipeToDismissBox wurde gegenüber NaN-Offsets robuster gemacht, um Ausnahmen zu vermeiden (b983739).
Wir haben BasicSwipeToDismissBox aktualisiert, damit Alphawerte im Bereich 0,1 liegen
Wir haben einen Fehler in ToggleButton, SplitToggleButton, Checkbox, Switch und RadioButton behoben, sodass Ankündigungen zur Barrierefreiheit nicht wiederholt werden (bisher wurden semantische Rollen dupliziert) (d11eeb7).
Version 1.3
Version 1.3.1
3. April 2024
androidx.wear.compose:compose-*:1.3.1 wurde veröffentlicht. Version 1.3.1 enthält diese Commits.
Fehlerkorrekturen
Wir haben einen Fehler in der Funktion zum Anzeigen durch Wischen behoben, bei der es möglich war, mit einer Aktion, für die ein Commit durchgeführt wurde, zu interagieren und diese abzubrechen, indem mit dem Wischen über ein anderes Element begonnen wurde. (Ide059)
Die Klasse SwipeToDismissBoxState, die SwipeToDismissValue-Aufzählung und die Erweiterungsfunktion Modifier.edgeSwipeToDismiss sind jetzt beide Teil des androidx.wear.compose.foundation-Pakets und nicht mehr des androidx.wear.compose.material-Pakets. Mit dieser aktualisierten Architektur können Sie die Gestenhandhabung unabhängig von anderen Designüberlegungen implementieren. Material Design-Workflows, wie das Anwenden von Farben aus einem konfigurierten Design, werden separat verarbeitet.
In unserer Version 1.3.0-alpha02 wurde eine Änderung eingeführt, die dazu führt, dass die Objekte Chip und ToggleChip vergrößert werden, um die vom Nutzer ausgewählte Schriftskalierung besser zu unterstützen. Dies kann dazu führen, dass einige Clips abgeschnitten werden. Um dieses Problem zu beheben, verwendet die Form large für MaterialTheme jetzt einen größeren Eckenradius (26 dp statt 24 dp). Chip- und ToggleChip-Objekte verwenden diesen neuen Eckenradius, um zu verhindern, dass Inhalte an den Ecken des Chips und ToggleChip abgeschnitten werden.
Die meisten Chips und ToggleChips sind aufgrund ihrer Standardhöhe von 52 dp unverändert. Chip- und ToggleChip-Objekte, die mehrere Zeilen primären oder sekundären Labeltexts enthalten oder bei denen die Höhe überschrieben wurde, können jedoch zu Fehlern bei Screenshot-Tests führen.
Wenn Nutzer in Ihrer App um den Bildschirminhalt schwenken können, z. B. in einer kartenbasierten App, deaktivieren Sie die Wischgeste, indem Sie userSwipeEnabled in der zusammensetzbaren Funktion SwipeDismissableNavHost auf false setzen und eine Schaltfläche einfügen, mit der Nutzer zum vorherigen Bildschirm wechseln können.
Verwenden Sie ein SnapSpec-Objekt, um Animationen für eine Positionsanzeige während Einblendungs- und Positionsänderungsanimationen innerhalb einer Scrollliste zu deaktivieren.
Während Sie warten, bis eine Medien-App Inhalte für die Wiedergabe lädt, wird eine leere Placeholder-Zusammensetzbare Funktion angezeigt.
Wenn Sie eine Sammlung erweiterbarer Elemente bei Bedarf erstellen möchten, können Sie die experimentelle Klasse ExpandableStateMapping verwenden.
Wir haben die große Form „MaterialTheme“ so aktualisiert, dass sie einen abgerundeten Eckenradius von 26 dp verwendet. Dieser wird jetzt von Chip und ToggleChip verwendet. Diese Änderung ist erforderlich, um Höhenanpassungen zu unterstützen, wenn Inhalte eine größere Höhe für große Schriftgrößen benötigen. Andernfalls schneidet die vorhandene Stadionform einige Textinhalte ab.
<ph type="x-smartling-placeholder"></ph>
Abbildung 1: Text an den Ecken abgeschnitten.
<ph type="x-smartling-placeholder"></ph>
Abbildung 2: Text nicht abgeschnitten.
Diese Änderung kann zu Fehlern bei den Screenshot-Tests führen.
(I2e6ae)
Wir haben die beabsichtigte Wischbewegung in BasicSwipeToDismissBox wiederhergestellt. Dies wurde in einer früheren Version so geändert, dass der gleitende Teil des Übergangs erfolgte, während der Finger den Bildschirm berührte. (Id8e76)
Version 1.3-beta01 von Compose für Wear OS gibt an, dass der Release der Bibliothek vollständig und die API gesperrt ist (sofern nicht als experimentell gekennzeichnet). Wear Compose 1.3 bietet die folgenden neuen Funktionen:
SwipeToDismissBoxState, SwipeToDismissValue und Modifier.edgeSwipeToDismiss sowie die zugrunde liegende Implementierung zum Schließen durch Wischen von androidx.wear.compose.material zu androidx.wear.compose.foundation wurden in BasicSwipeToDismissBox migriert. Dadurch kann die Gestenhandhabung zum Schließen unabhängig von Material Design verwendet werden, z. B. über die SwipeDismissableNavHost in androidx.wear.compose.navigation. SwipeToDismissBox von androidx.wear.compose.material wird weiterhin für die Verwendung mit Material Design empfohlen, da es Farben aus MaterialTheme abruft und dann die verbleibende Implementierung an BasicSwipeToDismissBox delegiert.
SwipeDismissableNavHost unterstützt jetzt einen neuen userSwipeEnabled-Parameter, mit dem die Wischgeste für Bildschirme deaktiviert werden kann, auf denen sie nicht erforderlich ist.
BasicSwipeToDismissBox hat die Fokussierung mithilfe von HierarchicalFocusCoordinator verbessert.
Für SwipeToReveal gibt es in Material neue zusammensetzbare Funktionen für SwipeToRevealCard und SwipeToRevealChip, die den empfohlenen UX-Richtlinien für Card und Chip entsprechen. Auch die Unterstützung der sekundären Aktion wird rückgängig gemacht.
DefaultTextStyle deaktiviert jetzt den Abstand zwischen Schriftarten, damit er auf der gesamten Android-Plattform einheitlich ist.
Chip und ToggleChip passen jetzt ihre Höhe an Inhalte an, die aufgrund großer Schriftarten für Barrierefreiheit größer geworden sind
PositionIndicator verfügt nun über individuelle Animationsspezifikationen für die Ein-, Aus- und Positionsanimationen. Aus Leistungsgründen empfehlen wir, das Ein- und Ausblenden sowie Positionsänderungen zu deaktivieren, wenn sie mit scrollbaren Listen verwendet werden.
ExpandableStateMapping bietet eine neue Möglichkeit, ExpandableStates zu generieren, wenn sie on demand und nicht unbedingt mit einem @Composable-Bereich erstellt werden müssen.
Placeholder ermöglicht jetzt das Zurücksetzen, wenn der Inhalt nicht mehr bereit ist. Außerdem wird die Einstellung zum Reduzieren von Bewegungen jetzt auf den Schimmereffekt und die Wischbewegung bei Placeholder angewendet.
Bekannte Probleme
PositionIndicator wird beim ersten Aufrufen eines Bildschirms nicht angezeigt. Wir beabsichtigen, eine Änderung in einer frühen Alphaversion der Version 1.4 vorzunehmen, damit sie anfangs, jedoch ohne Animation angezeigt wird.
API-Änderungen
Wir haben die Grundlagenebene SwipeToDismissBox in BasicSwipeToDismissBox umbenannt. Dadurch wird der Unterschied zwischen der Komponente „Basisebene“ und der „Materialebene“ SwipeToDismissBox deutlicher. Letzterer ruft Farben aus dem MaterialTheme ab, die in Scrums verwendet werden sollen, und delegiert die verbleibende Implementierung an BasicSwipeToDismissBox. (Ibecfc)
rememberExpandableStateMapping wurde als Test eingestuft und die Leistung von expandableItem verbessert. (I5f6bc)
Wir haben die Klasse SwipeToRevealAction in den Material SwipeToReveal Card und Chip APIs durch eine Slot-basierte API mit zusammensetzbaren Funktionen SwipeToRevealPrimaryAction, SwipeToRevealSecondaryAction und SwipeToRevealUndoAction ersetzt. Im Beispielcode finden Sie Beispiele für die Verwendung der neuen API. (Ia8943)
Die Animations-Flags PositionIndicator wurden durch AnimationSpec-Parameter ersetzt. Die einzelnen Animationen können deaktiviert werden, indem snap als AnimationSpec übergeben wird. (I6c523)
Fehlerkorrekturen
Wir haben einen Fehler behoben, der bei begrenzter Größe durch wenig gebogenen Text ausgelöst wurde (I50efe).
Wir haben einen möglichen NaN-Absturz im Zusammenhang mit curvedComposable (I970eb) behoben.
Wir haben die Entfernung der Highlights-Animation zu Positionsänderungen am PositionIndicator rückgängig gemacht. (Ieb424)
Wir haben die „Material-Kernschicht“ für „Material Chip“ entfernt, um seine Leistung zu verbessern. (If2dcb)
Wir haben der Überlastung von PositionIndicator einzelne Flags hinzugefügt, um verschiedene Animationen zu steuern: showFadeInAnimation, showFadeOutAnimation und showPositionAnimation. Die vorherige API wurde verworfen und leitet Aufrufe an die neue weiter. Aus Leistungsgründen und aus Gründen der UX-Konsistenz empfehlen wir, die Flags showFadeInAnimation und showPositionAnimation zu deaktivieren, wenn PositionIndicator mit einer scrollbaren Liste verwendet wird. Wenn PositionIndicator als eigenständige Anzeige verwendet wird, z. B. zur Lautstärkeänderung, empfehlen wir, alle drei Animationen zu aktivieren. (I44294)
Wir haben Material SwipeToDismissBoxState, SwipeToDismissValue und edgeSwipeToDismiss nach der Migration der „Wischen zum Schließen“-Funktion zu wear.compose.foundation eingestellt. Bitte ersetzen Sie sie durch die entsprechenden wear.compose.foundation-Angaben. (Iee8c9)
Fehlerkorrekturen
Wir haben die Basisprofile für die Wear Compose-Grundlage, Material- und Navigationsbibliotheken aktualisiert. (Idb060)
Wir haben eine Verhaltensänderung für PositionIndicator rückgängig gemacht, die in einem früheren Änderungsprotokoll eingeführt wurde, sodass PositionIndicator beim ersten Einblenden eines Bildschirms animiert war. Wir planen, eine ähnliche Änderung in einer frühen Alphaversion der Version 1.4 vorzunehmen, sodass PositionIndicator anfänglich angezeigt wird, jedoch ohne Animation. (I41843)
Wir haben einige Leistungsprobleme in PositionIndicator behoben. (I1c654, b/302399827)
Wir haben die Leistung der Standardimplementierung des Anbieters für die Touchscreen-Erkundung so optimiert, dass auf dem State<Boolean> statt auf dem abgeleiteten Status beruhen. (Ieec4d)
Wir haben systemGestureExclusion-Rechtecke für Android 13 und höher festgelegt. (Ib1f4b)
Wir haben einzelne Flags zu PositionIndicator hinzugefügt, um verschiedene Animationen zu steuern: showFadeInAnimation, showFadeOutAnimation und showPositionAnimation. Die vorherige API wurde verworfen und leitet Aufrufe an die neue weiter. Aus Leistungsgründen und aus Gründen der UX-Konsistenz empfehlen wir, die Flags showFadeInAnimation und showPositionAnimation zu deaktivieren, wenn PositionIndicator mit einer scrollbaren Liste verwendet wird. Wenn PositionIndicator als eigenständige Anzeige verwendet wird, z. B. zur Lautstärkeänderung, empfehlen wir, alle drei Animationen zu aktivieren. (Ia2d63)
Fehlerkorrekturen
Wir haben Verbesserungen an der Wischgeste vorgenommen, um die Bewegung anzuzeigen. Dazu haben wir dem primären Aktionstext eine Ausblendungsanimation hinzugefügt, die sekundäre Aktion ausgeblendet und die Symbolgröße bei vollständiger Ausweitung der Wischbewegung geändert. (Ib7223)
Wir empfehlen, die Aktionen für „Zum Einblenden wischen“ barrierefrei zugänglich zu machen. Außerdem haben wir unseren Beispielen für „Zum Einblenden wischen“ benutzerdefinierte Bedienungshilfen hinzugefügt. (I42224)
Wir haben die Leistung von SwipeToDismissBox verbessert, einschließlich einer Refaktorierung, damit die ursprüngliche Logik keine Neuzusammensetzung auslöst. SwipeToDismissBox wird jetzt im Vollbildmodus dargestellt. (Ie0aa2)
Wir haben einen Fehler behoben, bei dem PositionIndicator fälschlicherweise verschwunden ist. (I2091a)
Die Leistung von PositionIndicator wurde durch die Optimierung der Neuzusammensetzung verbessert. Neue Flags zur Steuerung der Animationen (fadeIn, fadeOut und positionChange) wurden anschließend hinzugefügt (siehe API-Änderungen) (Ifac7d)
Wir haben MicroBenchmark-Tests für PositionIndicator hinzugefügt (Idf875).
Wir haben dem Material Design zwei neue zusammensetzbare Funktionen hinzugefügt, um SwipeToReveal mit Karten und Chips zu implementieren. Diese zusammensetzbaren Funktionen entsprechen den empfohlenen UX-Richtlinien für die Komponente und erleichtern es Entwicklern, SwipeToReveal mit den vorhandenen Komponenten in Wear Material zu implementieren. (I7ec65)
Wir haben die FloatRange-Annotationen als API-Einschränkungen aktiviert, die zuvor in den Kommentaren angegeben wurden. (Icb401)
Fehlerkorrekturen
Die anfängliche Scroll-Logik von ScalingLazyColumn wurde in onGloballyPositioned() verschoben. (Ic90f1)
Wir verwenden jetzt drawWithCache in PositionIndicator, ProgressIndicator und SelectionControls, um die Strichzuweisungen zu optimieren. (I5f225, b/288234617)
Die Sichtbarkeit von Kästchenmarkierungen im deaktivierten Status wurde korrigiert. (Ib25bf)
Wir haben Placeholder aktualisiert, damit der Platzhalter zurückgesetzt werden kann, wenn der Inhalt nicht mehr bereit ist. (Ibd820)
Wir haben Korrekturen an instabilen Placeholder-Tests vorgenommen (Idb560).
Wir haben ExpandableStateMapping bereitgestellt, eine neue Möglichkeit zum Generieren von ExpandableStates für Fälle, in denen sie on demand und nicht unbedingt innerhalb eines @Composable-Bereichs erstellt werden müssen (Iff9e0)
SwipeToDismissBox wurde von androidx.wear.compose.material zu Paket androidx.wear.compose.foundation migriert. (I275fb)
API-Dateien wurden aktualisiert, um eine unterdrückte Kompatibilität mit Anmerkungen zu versehen. (I8e87a, b/287516207)
Wir haben die Höhenkonstanten für Chip, CompactChip und ToggleChip veröffentlicht (Idbfde).
Die horizontalen und vertikalen Abstände für Chip und CompactChip wurden auf „Öffentlich“ gesetzt. (Ieeaf7)
Es wurde eine Funktion hinzugefügt, mit der die Wischverarbeitung in SwipeDismissableNavHost über den neuen userSwipeEnabled-Parameter deaktiviert werden kann. (Id2a0b, b/230865655)
Wir haben die Wear Compose-Navigationsbibliothek aktualisiert, sodass jetzt die neue SwipeToDismissBox aus der Wear Compose Foundation verwendet wird. (I4ff8e)
Fehlerkorrekturen
Wir haben einen Fehler in der Z-Reihenfolge behoben, bei dem expandedItem nicht den richtigen Inhalt anzeigte, nachdem auf eine Schaltfläche geklickt wurde, wenn sie Schaltflächen enthielt. (I1899d, b/289991514)
Verbessern Sie die Fokusbehandlung von SwipeToDismissBox (und folglich von SwipeDismissableNavHost) mithilfe von HierarchicalFocusCoordinator (I45362, b/277852486)
Die Touch-Gestensteuerung in SwipeableV2 wurde korrigiert . (I89737)
Wir haben die Basisprofile für unsere Version 1.2 fertiggestellt. (ID5740)
Nach der Migration von SwipeToDismissBox zu „Foundation“ wird die SwipeToDismissBox-Implementierung von Material zu „Foundation“ weitergeleitet und liefert Standardfarbwerte aus dem Design.(If8451)
Wir haben ListHeader eine Semantik für Überschriften hinzugefügt. (IC5420)
Chip und ToggleChip passen jetzt bei Bedarf ihre Höhe an Inhalte an, die aufgrund großer Schriftgrößen vergrößert wurden. (Iaf302)
Für mehr Barrierefreiheit wurde ein Fehler in der semantischen Rolle des antippbaren Bereichs von SplitToggleChip behoben. (Ieed3a)
Mit der Einstellung „Bewegung reduzieren“ werden jetzt der Schimmereffekt und die Wischbewegung bei Platzhaltern deaktiviert. (I91046)
Stepper und InlineSlider unterstützen jetzt wiederholte Klicks bei langem Drücken. Du kannst den Wert von Stepper und InlineSlider jetzt schnell erhöhen oder verringern, indem du die Schaltflächen "+" oder "-" gedrückt hältst. (I27359)
Wie in 1.2.0-alpha07 und 1.2.0-alpha10 angekündigt, ändern wir nun die DefaultTextStyle, um die Abstände zwischen den Schriftarten zu deaktivieren, damit sie auf der gesamten Android-Plattform einheitlich sind. Dadurch werden einige Fälle von Textbeschnitt mit großen Schriftgrößen beseitigt und können sich auch auf Bildschirmlayouts auswirken, sodass die Screenshot-Tests aktualisiert werden müssen. Beispielsweise sehen wir hier Textbeschnitt (Ic6a86).
<ph type="x-smartling-placeholder"></ph>
Abbildung 1: Text abgeschnitten.
Sie ist nicht mehr vorhanden, wenn der Schriftabstand deaktiviert ist:
<ph type="x-smartling-placeholder"></ph>
Abbildung 2: Text nicht abgeschnitten.
Wir haben wear.compose.foundation auf eine API-Abhängigkeit von wear.compose.material aktualisiert (I72004, b/285404743).
Wir haben einen Fehler in SwipeToDismissBox behoben. Hintergrund- und Inhaltstasten werden jetzt an den Merkblock übergeben, sodass neue Modifikatoren erstellt werden, wenn sich der Inhalt oder Hintergrund ändert. (Ib876c, b/280392104)
Wir haben TimeText aktualisiert, sodass das Gebietsschema bei der Auswahl des Formats für das 12- oder 24-Stunden-Format verwendet wird. (If4a3d)
Wir haben eine Inkonsistenz bei den SwipeToDismissBoxcontentScrimColor-Standardparametern behoben. (I2d70f)
Wir haben die Bewegungsverarbeitung in SwipeToReveal verbessert. (I28fb7)
Bekannte Probleme
Die Unterstützung von vom Nutzer konfigurierten Schriftgrößen ist eine Anforderung für die Barrierefreiheit. Wir wissen, dass mehrzeilige Chips bei der Anzeige mit großen Schriftgrößen zu Textausschnitt führen können. Deshalb aktualisieren wir Chip in einer frühen 1.3-Alphaversion, um in diesen Fällen die Höhe anzupassen.
Wir haben die neue experimentelle Variable LocalReduceMotionCompositionLocal hinzugefügt, mit der das Skalieren und Ausblenden bei ScalingLazyColumn deaktiviert wird. (I58024)
Fehlerkorrekturen
Wir haben die Basisprofile für die Wear Compose-Grundlage und die Materialbibliotheken aktualisiert(I4725d).
Wir haben eine Inkonsistenz der Standardwerte für SwipeToDismissBoxcontentScrimColor-Parameter (I2d70f) behoben.
Der Standardwert von DefaultTextStyle für die Einstellung IncludeFontPadding (I737ed) wurde korrigiert.
Version 1.2-beta01 von Compose für Wear OS gibt an, dass dieser Release der Bibliothek vollständig ist und die API gesperrt ist (sofern nicht als experimentell gekennzeichnet). Wear Compose 1.2 enthält die folgenden neuen Funktionen:
expandableItem und expandableItems sind zwei neue Foundation-Komponenten, die Expandable-Elemente innerhalb einer ScalingLazyColumn unterstützen. Verwenden Sie expandableItem für ein einzelnes maximierbares Element, z. B. Text mit der Anzahl der Zeilen. Verwenden Sie expandableItems für eine Gruppe maximierbarer Elemente und expandableButton, um das Erstellen einer Schaltfläche zu vereinfachen, die nach dem Maximieren des Inhalts minimiert wird.
HierarchicalFocusCoordinator: Mit dieser experimentellen zusammensetzbaren Funktion können Unterstrukturen der Komposition als „Fokus aktiviert“ oder „Fokus deaktiviert“ markiert werden.
Picker: Die API enthält jetzt userScrollEnabled, um zu steuern, ob die Auswahl zum Scrollen durch Nutzer aktiv ist.
PickerGroup: eine neue zusammensetzbare Funktion zur gemeinsamen Verwaltung mehrerer Picker. Er steuert den Fokus zwischen den Auswahlfeldern mithilfe der HierarchicalFocusCoordinator API und ermöglicht die automatische Zentrierung von Auswahlelementen.
Placeholder: Wir haben Änderungen an den Schimmern und den Animationen vom Typ „Wipe Off“ vorgenommen. Der Löscheffekt wird jetzt sofort angewendet, wenn der Inhalt fertig ist.
ScalingLazyColumn: Wir haben ScalingLazyColumn und die zugehörigen Kurse von androidx.wear.compose.material.ScalingLazyColumn zu androidx.wear.compose.foundation.lazy.ScalingLazyColumn migriert. Bitte führen Sie ein Update durch, um die Foundation.Lazy-Version zu verwenden.
SwipeToReveal: Zur Ergänzung des bestehenden Musters „langes Drücken“ haben wir experimentelle Unterstützung für das Wischen zum Anzeigen hinzugefügt, um auf sekundäre Aktionen zuzugreifen.
Stepper: Hat jetzt eine Überlastung mit einem zusätzlichen enableRangeSemantics-Parameter, um das Deaktivieren der Standardbereichssemantik zu erleichtern.
Previews: Wir haben die folgenden benutzerdefinierten Anmerkungen für die Vorschau zusammensetzbarer Funktionen auf Wear-Bildschirmen hinzugefügt: WearPreviewSmallRound zeigt eine Vorschau der zusammensetzbaren Funktion auf einem kleinen, runden Gerät an. WearPreviewLargeRound zeigt eine Vorschau der zusammensetzbaren Funktion auf einem großen runden Gerät an. WearPreviewSquare zeigt eine Vorschau der zusammensetzbaren Funktion auf einem quadratischen Gerät an. Außerdem sehen Sie eine Vorschau der zusammensetzbaren Funktionen auf einem Wear-Gerät mit verschiedenen Schriftgrößen in WearPreviewFontScales und in WearPreviewDevices eine Vorschau der zusammensetzbaren Funktionen auf verschiedenen Wear-Geräten an.
Wir haben eine DefaultTextStyle zu Wear Compose hinzugefügt, mit der die PlatformTextStyle.includeFontPadding-Eigenschaft standardmäßig auf „true“ gesetzt ist (dies ist die aktuelle Einstellung). Auf diese Weise können wir die standardmäßige Deaktivierung des Schriftabstands mit den Erstellungsbibliotheken in der frühen Alphaversion 1.3 synchronisieren. Weitere Informationen finden Sie unter 1.2.0-alpha10.
Neue Funktionen
Wir haben experimentelle Unterstützung für die deaktivierte Skalierung und Ausblendung von Animationen hinzugefügt, wenn die Einstellung "Reduce_motion" aktiviert ist. (I58024)
Fehlerkorrekturen
Verbesserte Dokumentation für angularWidthDp in CurvedSize.kt (Iab75c)
SwipeDismissableNavHost protokolliert jetzt eine Warnung mit möglichen Ursachen für einen leeren Backstack. Dadurch sollen unerwartete Abstürze vermieden werden, die durch IllegalArgumentException verursacht wurden, das ausgelöst wurde, als der Backstack leer war. (I04a81, b/277700155)
Für den Zugriff auf sekundäre Aktionen wird jetzt „Zum Einblenden wischen“ unterstützt. Dieses Muster ergänzt das Muster „langes Drücken“, die bestehende Möglichkeit, wie Nutzende (verschiedene) sekundäre Aktionen anzeigen können. (I60862)
API-Änderungen
Wir haben RevealScope zu den zusammensetzbaren Funktionen für Aktionen in SwipeToReveal hinzugefügt, die Zugriff auf den Offset bieten, mit dem zusätzliche Aktionen angezeigt werden. (I3fd56)
Fehlerkorrekturen
Es wurde ein Problem behoben, bei dem ScalingLazyColumn nach dem Wischen mit der Wear API 33 hängen blieb (Ic4599)
Wir haben einige Leistungsverbesserungen an PositionIndicator vorgenommen, um Verzögerungen zu reduzieren. (I35e92)
Wir haben einen Fehler in Chip und CompactChip behoben, bei dem die semantische Rolle nicht mehr auf Role.Button festgelegt wurde. (I93f91, b/277326264)
Bekannte Probleme
Wir haben in Android Studio einen Fehler gefunden, der zu Fehlern beim Rendern der Vorschau führt, wenn diese mit @WearPreviewDevices und @WearPreviewFontScales gekennzeichnet sind. Eine Lösung ist für die Veröffentlichung geplant. Die anderen Anmerkungen zur Wear-Vorschau funktionieren ab Android Studio Giraffe 2022.3.1 wie vorgesehen.
In Version 1.2.0-alpha07 wurde der StandardtextStyle zu Wear Compose hinzugefügt und der vorhandene Wert von PlatformTextStyle.includeFontPadding auf "true" beibehalten. Informationen für den Hintergrund finden Sie unter Schriftabstand korrigieren in Compose. Wir werden den StandardtextStyle in einer frühen 1.3 Alpha-Version deaktivieren, um den Schriftabstand auf der Android-Plattform einheitlich zu gestalten. Dadurch werden einige Fälle von Textbeschnitt mit großen Schriftgrößen beseitigt und können sich auch auf Bildschirmlayouts auswirken, sodass die Screenshot-Tests aktualisiert werden müssen. Bei großen Schriftgrößen sehen wir hier zum Beispiel Textbeschnitt:
<ph type="x-smartling-placeholder"></ph>
Abbildung 1: Text abgeschnitten.
Sie ist nicht mehr vorhanden, wenn der Schriftabstand deaktiviert ist:
<ph type="x-smartling-placeholder"></ph>
Abbildung 2: Text nicht abgeschnitten.
Sie können die neue Einstellung jetzt übernehmen, indem Sie die Typografie in Ihrem Design überschreiben (siehe Beispielcode).
Wir haben ExpandableItemsState in ExpandableState umbenannt. (If85ea)
Wir haben expandableButton hinzugefügt, um das Erstellen einer Schaltfläche zu vereinfachen, die minimiert wird, wenn der Inhalt maximiert wird. Außerdem wurden die Beispiele für maximierbare Elemente aktualisiert. (Iae309)
Fehlerkorrekturen
Verbesserte maximierbare Beispiele, um mehr Möglichkeiten anzuzeigen. Die Animation von expandableItem wurde so geändert, dass der Inhalt durch die Animation zentriert bleibt. (I2f637)
ToggleControls wurde aktualisiert, um zusätzliche Neuzusammensetzungen bei der manuellen Animation der Farben mithilfe der Funktion „Status“ zu vermeiden. (I5d319)
Wir haben die Expandable-Element-Komponenten (in 1.2.0-alpha06 hinzugefügt) vom Material auf das Fundament verschoben, da sie keinen aussagekräftigen Bezug zu MaterialTheme hatten. (Ib0525)
Fehlerkorrekturen
Wir haben einen Absturz behoben, der auf einem Bildschirm mit PickerGroup aufgetreten ist. Dabei wurde sichergestellt, dass PickerGroup den Fokus korrekt verarbeitet, wenn kein Picker im Fokus ist. Außerdem wird in unseren Auswahl-Demos das Scrollen per RSB unterstützt. (If8c19)
Wir haben die Dialogfeldübergänge verbessert: Der Intro-Übergang ist jetzt flüssiger und passt zum Outro-Übergang. (Ib5af9)
Wir haben eine DefaultTextStyle zu Wear Compose hinzugefügt, mit der die PlatformTextStyle.includeFontPadding-Eigenschaft standardmäßig auf „true“ gesetzt ist (dies ist die aktuelle Einstellung). Auf diese Weise können wir in Zukunft die standardmäßige Deaktivierung des Schriftabstands mit den Texterstellungsbibliotheken synchronisieren. Weitere Informationen zum Hintergrund finden Sie unter Korrektur des Schriftabstands in Compose. (I2aee8)
Eine Vorschauabhängigkeit von UpsideDownCake über die Aktivitätszusammensetzung wurde rückgängig gemacht, die die Veröffentlichung von Apps im Google Play Store blockiert hat. (I6443d)
Fügen Sie die Komponente CurvedBox hinzu, die Komponenten in einer gekrümmten Welt übereinander platziert. (I29200)
Expandable-Element(e) hinzugefügt – zwei neue Komponenten zur Unterstützung entweder einer Gruppe maximierbarer Elemente in einem ScalingLazyColumn oder eines einzelnen maximierbaren Elements wie Text, bei dem sich die Anzahl der Zeilen erhöht. (I95dd5)
Wir haben die folgenden benutzerdefinierten Anmerkungen für die Vorschau zusammensetzbarer Funktionen auf Wear-Bildschirmen hinzugefügt: WearPreviewSmallRound zeigt eine Vorschau der zusammensetzbaren Funktion auf einem kleinen, runden Gerät an: WearPreviewLargeRound zeigt eine Vorschau der zusammensetzbaren Funktion auf einem großen runden Gerät an. WearPreviewSquare zeigt eine Vorschau der zusammensetzbaren Funktion auf einem quadratischen Gerät an. Außerdem sehen Sie eine Vorschau der zusammensetzbaren Funktionen auf einem Wear-Gerät mit verschiedenen Schriftgrößen in WearPreviewFontScales und in WearPreviewDevices eine Vorschau der zusammensetzbaren Funktionen auf verschiedenen Wear-Geräten an. Um diese Vorschauen nutzen zu können, müssen Sie die neueste Android Studio-Version (Giraffe Canary 6) oder eine neuere Version verwenden. Wenn diese Anmerkungen für Ihren Zweck nicht geeignet sind, können Sie die Vorschau trotzdem verwenden und weitere Anpassungen über Parameter ermöglichen. (I397ff)
Wir haben HierarchicalFocusCoordinator als experimentell gekennzeichnet, da es aufgrund seiner breiten Anwendbarkeit als Kandidaten für die Verschiebung in die zentralen Editorenbibliotheken gilt. (I3a768)
Fehlerkorrekturen
Es wurde ein Fehler in HierarchicalFocusCoordinator behoben. Wenn die für den focusEnabled-Parameter übergebene Lambda geändert wurde, wird jetzt die neue Lambda-Funktion korrekt verwendet. (Icb353)
Wir haben die standardmäßig deaktivierte Inhaltsfarbe zu „Hintergrund“ geändert, wenn in Button, CompactButton, Chip, CompactChip und ToggleButton Primärfarben als Hintergrund verwendet werden. Dadurch wird der Kontrast für die Barrierefreiheit verbessert. (I527cc)
Die PickerGroup API wurde aktualisiert, damit die Mindesteinschränkungen optional an die zusammensetzbare Funktion weitergegeben werden können. Wenn dieser Wert auf „true“ gesetzt ist, sind die minimalen Einschränkungen, die von der übergeordneten zusammensetzbaren Funktion übergeben werden, für das PickerGroup zulässig. Wenn die Richtlinie auf „false“ gesetzt ist, setzt PickerGroup die minimalen Einschränkungen zurück. (I3e046)
Wir haben der Picker API animateScrollToOption hinzugefügt, um programmatische Animationen für eine bestimmte Auswahloption zu unterstützen (I6fe67).
Fehlerkorrekturen
Wir haben HorizontalPageIndicator aktualisiert, damit linksläufige Layouts unterstützt werden. (Ia4359)
Screenshot-Tests für Rechts-nach-links-Layout in HorizontalPageIndicator (I6fbb8) hinzugefügt
SwipeDismissableNavHostTest wurden weitere Tests hinzugefügt, die TestNavHostController verwenden (I61d54)
PickerGroup zum gleichzeitigen Verarbeiten mehrerer Auswahlelemente mithilfe der Focus API. Sie steuert den Fokus zwischen den verschiedenen Auswahlen und ermöglicht die automatische Zentrierung der Auswahl basierend auf Parametern. Außerdem können Entwickler den Fokus zwischen verschiedenen Auswahlen ändern, während Ereignisse aus der Gruppe verarbeitet werden. Im TalkBack-Modus verarbeitet PickerGroup den TalkBack-Fokus, indem es den Fokus in die ausgewählte Auswahl der Gruppe verschiebt. (I60840)
API-Änderungen
Wir haben Stepper eine Überlastung mit einem zusätzlichen enableRangeSemantics-Parameter hinzugefügt, um das Deaktivieren der Standardbereichssemantik (Ia61d4) zu erleichtern.
Fehlerkorrekturen
Verschachtelung von ScalingLazyColumn auf einer horizontal scrollenden Seite zulassen (Iec3f8, b/266555016)
Verbesserungen bei der Bereinigung von Stepper-Kdocs und StepperTest-Tests. (IC118e)
Die Abhängigkeit von androidx.navigation wurde auf Version 2.5.3 aktualisiert (If58ed)
Wir haben ScalingLazyColumn und die zugehörigen Klassen von androidx.wear.compose.material.ScalingLazyColumn zu andrdoidx.wear.compose.foundation.lazy.ScalingLazyColumn migriert (siehe dieses Beispiel). Dieser neue Standort entspricht eher dem von compose.foundation.lazy.LazyColumn und ist natürlicher, da er keine gesonderte Material-Komponente ist. Diese Änderung erfolgt als Vorbereitung auf eine neue Material3-Bibliothek, an der wir parallel zur bestehenden Material-Bibliothek arbeiten werden. (I060e7)
Die folgenden Änderungen sind Teil der ScalingLazyColumn-Migration von Material zu Foundation.Lazy:
PositionIndicator APIs, die auf Material ScalingLazyColumn ausgerichtet sind, wurden eingestellt. Bitte aktualisieren Sie auf Foundation.Lazy ScalingLazyColumn. Außerdem wurde das Feld anchorType zu ScalingLazyListLayoutInfo hinzugefügt. (I29d95)
ScalingLazyColumn wurde im Wear Compose Material-Paket (I16d34) als veraltet markiert
Wir haben den ScrollAway-Modifikator aktualisiert, sodass ScalingLazyListState aus Wear Compose Foundation.Lazy verwendet wird, und die Überlastung eingestellt, die ScalingLazyListState von Wear Compose-Material verbraucht hat. (Ifc42c)
Wir haben die Dialog APIs aktualisiert, um ScalingLazyListState von Foundation.Lazy zu verwenden, und die Überlastungen eingestellt, die Material ScalingLazyListState verwendet haben (Ic8960).
Wir haben die Picker APIs aktualisiert, um ScalingParams von Foundation.Lazy zu verwenden, und die Überlastungen eingestellt, die Material ScalingParams verwendet haben. (Idc3d8)
Fehlerkorrekturen
Wir haben einen Fehler behoben, der zu unnötigen Neuzusammensetzungen in ScalingLazyListState.centerItemIndex führte. Dabei wurde sichergestellt, dass Updates nur dann gesendet werden, wenn sich der Wert tatsächlich ändert (Ia9f38).
Wir haben die Leistung von SwipeToDismissBox (I3933b) verbessert
Benchmark-Tests für ScalingLazyColumn in Wear Compose Foundation (Ie00f9) hinzugefügt
Wir haben einige interne ScalingLazyColumn-Klassenmethoden in Material so aktualisiert, dass ihre Entsprechungen aus Foundation.Lazy (I38aab) verwendet werden.
Wir haben einige Probleme in Auswahltests behoben und weitere Tests zum Prüfen des Scrollens mit Offset hinzugefügt (I6ac34).
Wir haben die ScalingLazyColumn-Integrationsdemos migriert, sodass sie von Foundation.Lazy anstelle von Material ScalingLazyColumn abhängig sind (Ic6caa).
Wir haben der DatePicker-Demo (I961cd) optionale fromDate/toDate-Parameter hinzugefügt.
Bei Android Compose-UI-Tests werden jetzt Layoutübergänge für jeden Frame ausgeführt, wenn Frames ausgeführt werden, um inaktiv zu werden (z.B. über waitForIdle). Dies kann sich auf Tests auswirken, bei denen die Bestätigung für einzelne Frames von Layoutanimationen durchgeführt wird. (I8ea08, b/222093277)
Der Parameter minLines wird Wear Text für ein konsistentes Verhalten mit BasicText hinzugefügt (I24874).
CompactChipTapTargetPadding wurde veröffentlicht, sodass es in der Dokumentation erscheint (If1e70, b/234119038).
Fehlerkorrekturen
Plattformübergreifende Builds für wear.compose-Pakete deaktivieren (Iad3d7)
PlaceholderState.rememberPlaceholderState() wurde aktualisiert, um rememberUpdatedState so zu verwenden, dass der Status aktualisiert wird, wenn onContentReady Lambda ist. (I02635, b/260343754)
Wir haben ein Problem mit zitterndem Text in der Komponente „Picker“ durch die neue Compositing-Strategie behoben, die zu Modifier.graphicsLayer hinzugefügt wurde. (I99302)
Wir haben einen Fehler behoben, der in unserer DatePicker-Demo (I660bd) zum Flackern führte.
Wir haben die Zugänglichkeit der 12-Stunden-Zeit- und Datumsauswahl-Demos (I05e12) verbessert.
Wir haben unsere Demos für die Uhrzeit- und Datumsauswahl aktualisiert, sodass die Auswahl nicht von RSB-Änderungen betroffen ist, wenn sie nicht ausgewählt sind (I4aecb).
Wir haben die experimentelle Platzhalterfunktion so aktualisiert, dass der Effekt "Auswischen" sofort angewendet wird, wenn der Inhalt fertig ist, anstatt auf den Beginn der nächsten Animationsschleife zu warten. Wir haben auch einige Aktualisierungen am Schimmern und beim Löschen der Animationen vorgenommen. (I5a7f4)
API-Änderungen
Wir haben eine HierarchicalFocusCoordinatorzusammensetzbare Funktion hinzugefügt, mit der Unterstrukturen der Komposition als Fokus aktiviert oder deaktiviert werden können (I827cb).
Wir haben ein neues Attribut hinzugefügt, um die semantische Rolle für ToggleButton zu überschreiben (I67132)
Wir haben TimeTextDefaults.TimeFormat12Hours aktualisiert und den AM/PM-System für TimeText entfernt. Dadurch wird der Standardwert der timeSource-Parameter in der TimeText API geändert. (I1eb7f)
Wir haben die Picker API erweitert, um die Barrierefreiheit für Bildschirme mit der Mehrfachauswahl zu verbessern. Mit der neuen Eigenschaft userScrollEnabled wird gesteuert, ob die Auswahl für das Scrollen durch Nutzer aktiv ist. (I3c3aa)
Fehlerkorrekturen
Wir haben die Standardrahmenbreite für OutlinedButton/OutlinedCompactButton von 2 dp in 1 dp geändert, damit sie den endgültigen UX-Spezifikationen entspricht. (Icf84d)
Um die Wirkung des ersten Elements, das einem leeren ScalingLazyColumn hinzugefügt wird, beim Scrollen zu verringern, haben wir geschätzt autoCentering topPadding hinzugefügt, wenn der Inhalt leer ist. Diese Änderung berechnet den erforderlichen Abstand oben unter der Annahme eines anfänglichen Elements mit einer Höhe von 0.dp. Für ScalingLazyListAnchorType.ItemStart wird der korrekte Abstand oben berechnet. Für ScalingLazyListAnchorType.ItemCenter ist diese Berechnung falsch, da die Höhe der Elemente für die korrekte Größe des Inhalts erforderlich ist. Dies führt zu einem kleinen Scrolleffekt basierend auf der tatsächlichen Höhe der Elemente.(I239a4)
Wir haben das auf die SwipeToDismiss-Animation angewendete Hintergrundgitter aktualisiert, damit es der Wear-Plattform entspricht. (I9003e)
Wir haben die PositionIndicator-Verarbeitung von LazyListState und ScalingLazyListState für Listenelemente der Größe 0 korrigiert, um Fehler durch eine Division durch null zu vermeiden.(Ic28dd)
Version 1.1
Version 1.1.2
8. Februar 2023
androidx.wear.compose:compose-foundation:1.1.2, androidx.wear.compose:compose-material:1.1.2 und androidx.wear.compose:compose-navigation:1.1.2 wurden veröffentlicht. Version 1.1.2 enthält diese Commits.
Fehlerkorrekturen
Wir haben einen Fehler behoben, der zu unnötigen Neuzusammensetzungen in ScalingLazyListState.centerItemIndex führte. Dabei wurde sichergestellt, dass Updates nur dann gesendet werden, wenn sich der Wert tatsächlich ändert (Ia9f38).
Version 1.1.1
11. Januar 2023
androidx.wear.compose:compose-foundation:1.1.1, androidx.wear.compose:compose-material:1.1.1 und androidx.wear.compose:compose-navigation:1.1.1 wurden veröffentlicht. Version 1.1.1 enthält diese Commits.
Fehlerkorrekturen
PlaceholderState.rememberPlaceholderState() wurde aktualisiert, um rememberUpdatedState so zu verwenden, dass der Status aktualisiert wird, wenn onContentReady Lambda ist. (I02635, b/260343754)
Version 1.1.0
7. Dezember 2022
androidx.wear.compose:compose-foundation:1.1.0, androidx.wear.compose:compose-material:1.1.0 und androidx.wear.compose:compose-navigation:1.1.0 wurden veröffentlicht. Version 1.1.0 enthält diese Commits.
Eine Liste der wichtigsten Änderungen in Wear Compose 1.1 findest du in den Versionshinweisen für Compose for Wear OS 1.1 Beta01.
Neue Funktionen
Wir haben die experimentelle Platzhalterfunktion so aktualisiert, dass der Effekt "Auswischen" sofort angewendet wird, wenn der Inhalt fertig ist, anstatt auf den Beginn der nächsten Animationsschleife zu warten. Wir haben auch einige Aktualisierungen am Schimmern und beim Löschen der Animationen vorgenommen. (I5a7f4)
Fehlerkorrekturen
Wir haben die Standardrahmenbreite für OutlinedButton/OutlinedCompactButton von 2 dp in 1 dp geändert, damit sie den endgültigen UX-Spezifikationen entspricht. (Icf84d)
Um die Wirkung des ersten Elements, das einem leeren ScalingLazyColumn hinzugefügt wird, beim Scrollen zu verringern, haben wir geschätzt autoCentering topPadding hinzugefügt, wenn der Inhalt leer ist. Diese Änderung berechnet den erforderlichen Abstand oben unter der Annahme eines anfänglichen Elements mit einer Höhe von 0.dp. Für ScalingLazyListAnchorType.ItemStart wird der korrekte Abstand oben berechnet. Für ScalingLazyListAnchorType.ItemCenter ist diese Berechnung falsch, da die Höhe der Elemente für die korrekte Größe des Inhalts erforderlich ist. Dies führt zu einem kleinen Scrolleffekt basierend auf der tatsächlichen Höhe der Elemente.(I239a4)
Wir haben das auf die SwipeToDismiss-Animation angewendete Hintergrundgitter aktualisiert, damit es der Wear-Plattform entspricht.(I9003e)
Wir haben die PositionIndicator-Verarbeitung von LazyListState und ScalingLazyListState für Listenelemente der Größe 0 korrigiert, um Fehler durch eine Division durch null zu vermeiden.(Ic28dd)
Version 1.1.0-rc01
9. November 2022
androidx.wear.compose:compose-foundation:1.1.0-rc01, androidx.wear.compose:compose-material:1.1.0-rc01 und androidx.wear.compose:compose-navigation:1.1.0-rc01 wurden veröffentlicht. Version 1.1.0-rc01 enthält diese Commits.
Fehlerkorrekturen
Wir haben Grundprofilregeln für Placeholders, ScrollAway, RadioButton, Switch, Checkbox, OutlinedButton, OutlinedCompactButton, OutlinedChip und OutlinedCompactChip hinzugefügt. (I8249c)
Wir haben einen Fehler in Modifier.scrollAway behoben. Wenn der angegebene itemIndex-Wert ungültig ist (z. B. wenn dieser Artikelindex außerhalb des zulässigen Bereichs liegt), wird jetzt TimeText weiterhin angezeigt. (I2137a)
Wir haben die SwipeToDismissBox-Animation aktualisiert, damit sie der Plattformimplementierung entspricht. Nach der anfänglichen Animation gleitet der Bildschirm nach rechts, sobald das Schließen ausgelöst wurde. (I41d34)
Zur Optimierung haben wir Modifier.scrollAway so aktualisiert, dass nur die scrollState innerhalb des Messwertblocks gelesen werden, um zu vermeiden, dass der Modifizierer nach jeder erneuten Messung neu zusammengesetzt wird. (I4c6f1)
Wir haben eine Dokumentation und ein Beispiel zu Platzhaltern hinzugefügt, um die korrekte Reihenfolge für Modifier.placeholder und Modifier.placeholderShimmer anzuzeigen, wenn sie auf dieselbe zusammensetzbare Funktion angewendet werden. (Ie96f4, b/256583229)
Wir haben die Standardrahmenbreite für OutlinedCompactChip/OutlinedChip von 2 dp in 1 dp geändert, damit sie den endgültigen UX-Spezifikationen entspricht. (Ib3d8e)
Wir haben einen Fehler in rememberPickerState behoben, bei dem aktualisierte Eingaben nicht gespeichert wurden, sodass zusammensetzbare Funktionen nach Änderungen an den Eingaben nicht aktualisiert wurden. (I49ff6, b/255323197)
Wir haben einige Aktualisierungen der Benutzeroberfläche an den Platzhaltern vorgenommen, 1) den Schimmerverlauf auf das 1,5-Fache der Bildschirmgröße geändert, 2) das Easing (kubische Bézierkurve) des Schimmerfortschritts hinzugefügt und 3) die Wisch-Animation (250 ms) beschleunigen. (Id29c1)
Wir haben einen Fehler in der Benutzeroberfläche im Platzhalter-WipeOff-Effekt behoben, bei dem Chip- und Kartenhintergründe etwas früher entfernt wurden, da die Position der Komponente auf dem Bildschirm nicht berücksichtigt wurde. (I2c7cb)
Wir haben die Platzhalter-Hintergrundzeichnung aktualisiert, um Farben zusammenzuführen und sie nach Möglichkeit nicht übereinander zu legen, um das Risiko einer Alpha-Überlagerung der verschiedenen zugeschnittenen Ebenen zu verringern, damit die zugrunde liegenden Farben an den Rändern des Platzhalter-Hintergrunds durchscheinen. (I2ea26)
Wir haben die Berechnung von ScalingLazyListState.centerItemIndex/centerItemOffset korrigiert. Wenn zwei Elemente auf beiden Seiten der Mittellinie des Darstellungsbereichs liegen, wird das am nächsten gelegene Element als centerItem betrachtet. (I30709, b/254257769)
Wir haben einen Fehler in ScalingLazyListState.layoutInfo.visibleItemsInfo behoben, der falsche Offsets während der ScalingLazyColumn-Initialisierung meldete. Nun wird eine leere Liste zurückgegeben, bis alle Listenelemente sichtbar sind und die richtigen Offsets aufweisen. Wenn du nach ScalingLazyListState.layoutInfo.visibleItemsInfo.isNotEmpty() suchst, wird bestätigt, dass die Initialisierung von ScalingLazyColumn abgeschlossen ist und Elemente sichtbar sind. (I3a3b8)
Version 1.1.0-beta01
24. Oktober 2022
androidx.wear.compose:compose-foundation:1.1.0-beta01, androidx.wear.compose:compose-material:1.1.0-beta01 und androidx.wear.compose:compose-navigation:1.1.0-beta01 wurden veröffentlicht. Version 1.1.0-beta01 enthält diese Commits.
Funktionen der Funktion „Compose“ für Wear OS 1.1
1.1.0-beta01 von Compose for Wear OS gab an, dass die Funktion in diesem Release der Bibliothek abgeschlossen und die API gesperrt ist.
Wear Compose 1.1 enthält die folgenden neuen Funktionen:
<ph type="x-smartling-placeholder">
</ph>
Auswahl – Verbesserte Barrierefreiheit der Auswahl, sodass Multi-Picker-Bildschirme mit Screenreadern navigierbar sind und die Inhaltsbeschreibung barrierefrei ist.
Der contentDescription-Parameter der Auswahl wird jetzt nur für die ausgewählte Auswahloption verwendet und verwendet einen String, für den Nullwerte zulässig sind. Beim vorherigen Commit musste eine Zuordnung von der Option zur Inhaltsbeschreibung übergeben werden, es wurde aber nur die ausgewählte Option verwendet.
Auswahlelemente sind jetzt immer zentriert ausgerichtet. Das Beheben eines Fehlers beim Festlegen von gradientRatio auf null hatte zur Folge, dass sich die Ausrichtung änderte.
Chip/ToggleChip: Wir haben die Standardverläufe für Chip/ToggleChip aktualisiert, damit sie den neuesten UX-Spezifikationen entsprechen. ChipDefaults.gradientBackgroundChipColors wurde aktualisiert und beginnt nun bei 50% der Primärversion statt bei 32,5%.
Chip/ToggleChip – Überlastungen zum Ändern von Chipformen hinzugefügt
Chip/Button/ToggleButton: Es wurde ein neuer umrissener Stil für Chips und Schaltflächen sowie die neuen zusammensetzbaren Funktionen OutlinedChip und OutlinedButton hinzugefügt, die ein transparentes Chip/Button mit dünnem Rahmen bieten.
Karte: Die Standardverläufe für Karten wurden aktualisiert, um sie an die neuesten UX-Spezifikationen anzupassen. CardDefaults.cardBackgroundPainter wurde so aktualisiert, dass es bei 30% der primären Kampagne beginnt und bei 20% von onSurfaceVariant endet (zuvor 20% bis 10% onSurfaceVariant). ToggleChip.toggleChipColors ändert sich von einem linearen Farbverlauf von 75% Oberfläche zu 32,5% primärem zu 0% primären zu 50% primären Oberfläche.
Button/ToggleButton – Eigenschaften zum Ändern von Schaltflächenformen wurden hinzugefügt.
Design: Eine Reihe der Standardfarben in MaterialTheme wurde aktualisiert, um die Barrierefreiheit zu verbessern, da die Originalfarben nicht genügend Kontrast hatten. Dies führte dazu, dass Nutzer Hintergründe von Chips, Karten oder Schaltflächen nicht von der Hintergrundfarbe des Designs unterscheiden konnten.
InlineSlider/Stepper: Schaltflächenrollen wurden hinzugefügt, damit Talkback sie als Schaltflächen erkennt.
Das Gerüst – „PositionIndicator“ ist jetzt so positioniert und dimensioniert, dass es nur den benötigten Platz einnimmt. Das ist zum Beispiel nützlich, wenn semantische Informationen hinzugefügt werden, sodass TalkBack jetzt die korrekten Grenzen des PositionIndicator auf dem Bildschirm erhält.
CurvedText/TimeText: Modifier.scrollAway wurde hinzugefügt, mit der ein Element basierend auf dem Scrollstatus vertikal ein- oder ausgeblendet wird (mit Überlastungen für Column, LazyColumn und ScalingLazyColumn). ScrollAway wird in der Regel verwendet, um TimeText aus der Ansicht zu scrollen, wenn der Nutzer beginnt, eine Liste von Artikeln nach oben zu scrollen.
CurvedText/TimeText – Unterstützung für fontFamily, fontStyle und fontSynthesis in CurvedTextStyle hinzugefügt, nutzbar unter curvedText und basicCurvedText
CurvedText/TimeText – fontWeight wurde dem Konstruktor und der Kopiermethode für CurvedTextStyle hinzugefügt
ToggleControls: Animierte Ein/Aus-Schaltflächen für Checkbox, Switch und RadioButton zur Verwendung mit ToggleChip und SplitToggleChip wurden hinzugefügt. Diese können anstelle der statischen Symbole von ToggleChipDefaults (switchIcon, checkboxIcon und radioIcon) verwendet werden.
Platzhalter – Unterstützung für experimentelle Platzhalter hinzugefügt. Es gibt drei verschiedene visuelle Effekte, die ineinandergreifen.
Erstens ein Platzhalter-Pinseleffekt für den Hintergrund, der in Containern wie Chips und Kacheln verwendet wird, um beim Laden von Inhalten über den normalen Hintergrund zu zeichnen.
Zweitens: Modifier.placeholder(), mit dem ein stadionförmiges Platzhalter-Widget über dem geladenen Inhalt gezeichnet wird.
Drittens ein Modifikatorverlauf/Schimmereffekt (Modifier.placeholderShimmer()), der über die anderen Effekte gezogen wird, um Nutzer darauf hinzuweisen, dass auf das Laden von Daten gewartet wird.
Alle diese Effekte wurden so entwickelt, dass sie koordiniert sind und orchestriert werden.
Core Compose-Abhängigkeiten von Version 1.2 auf 1.3 aktualisiert
API-Änderungen
Schriftparameter (fontFamily, fontWeight, fontStyle und fontSynthesis) können jetzt direkt als Parameter von curvedText angegeben werden (Idc422).
Fehlerkorrekturen
curveText und basicCurvedText funktionieren jetzt ordnungsgemäß mit TalkBack, d. h. ihnen ist ein passender Größe und korrekt platzierter (aber leerer) Compose-UI-Knoten zugeordnet, bei dem der Text als Inhaltsbeschreibung verwendet wird. (I7af7c, b/210721259)
Fehlerkorrektur für Picker, wenn PickerState.repeatedItems = false eine explizite Einstellung von Parametern für das automatische Zentrieren in der internen ScalingLazyColumn-Auswahl hinzugefügt hat, damit die nullte Option in die Mitte der Ansicht gescrollt werden kann. (I8a4d7)
Version 1.1.0-alpha07
5. Oktober 2022
androidx.wear.compose:compose-foundation:1.1.0-alpha07, androidx.wear.compose:compose-material:1.1.0-alpha07 und androidx.wear.compose:compose-navigation:1.1.0-alpha07 wurden veröffentlicht. Version 1.1.0-alpha07 enthält diese Commits.
Neue Funktionen
Es wurden experimentelle Platzhalter unterstützt. Es gibt drei verschiedene visuelle Effekte, die ineinandergreifen. Erstens ein Platzhalter-Pinseleffekt für den Hintergrund, der in Containern wie Chips und Kacheln verwendet wird, um beim Laden von Inhalten über den normalen Hintergrund zu zeichnen. Zweitens: Modifier.placeholder(), mit dem ein stadionförmiges Platzhalter-Widget über dem geladenen Inhalt gezeichnet wird. Drittens ein Modifikatorverlauf/Schimmereffekt (Modifier.placeholderShimmer()), der über die anderen Effekte gezogen wird, um Nutzer darauf hinzuweisen, dass auf das Laden von Daten gewartet wird. Alle diese Effekte wurden so entwickelt, dass sie koordiniert sind und orchestriert werden. (I3c339)
API-Änderungen
Unterstützung für fontWeight, fontFamily, fontStyle und fontSynthesis hinzugefügt in
CurvedTextStyle, nutzbar unter curvedText und basicCurvedText. Diese Parameter können verwendet werden, um die Schriftart und den Stil für den gebogenen Text anzugeben.(Iaa1a8),(I72759)
Der Versatzparameter von Modifier.scrollAway wurde aus Konsistenz mit Modifier.offset auf „Dp“ aktualisiert (bisher war dies in Pixeln). Außerdem refaktoriert als LayoutModifier für mehr Effizienz. (I9f94b)
Im Rahmen der neuen API für die Ein/Aus-Schaltfläche haben wir RadioButton’s circleColor in ringColor umbenannt. (I28fa9)
Wir haben animierte Checkbox-, Switch- und RadioButton-Ein-/Aus-Schaltflächen für ToggleChip und SplitToggleChip hinzugefügt. Diese können anstelle der statischen Symbole von ToggleChipDefaults (switchIcon, checkboxIcon und radioIcon) verwendet werden. (I8a8c4)
Version 1.1.0-alpha06
21. September 2022
androidx.wear.compose:compose-foundation:1.1.0-alpha06, androidx.wear.compose:compose-material:1.1.0-alpha06 und androidx.wear.compose:compose-navigation:1.1.0-alpha06 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ür Column, LazyColumn und ScalingLazyColumn). Mit ScrollAway wird in der Regel ein TimeText aus der Ansicht gescrollt, wenn der Nutzer beginnt, eine Liste von Elementen nach oben zu scrollen. (I61766)
Fehlerkorrekturen
PositionIndicator ist jetzt so positioniert und groß, dass es nur den benötigten Platz einnimmt. Das ist zum Beispiel nützlich, wenn semantische Informationen hinzugefügt werden, sodass TalkBack jetzt die korrekten Grenzen des PositionIndicator auf dem Bildschirm erhält. (Ie6106, b/244409133)
Version 1.1.0-alpha05
7. September 2022
androidx.wear.compose:compose-foundation:1.1.0-alpha05, androidx.wear.compose:compose-material:1.1.0-alpha05 und androidx.wear.compose:compose-navigation:1.1.0-alpha05 wurden veröffentlicht. Version 1.1.0-alpha05 enthält diese Commits.
Fehlerkorrekturen
Schaltflächenrollen wurden InlineSlider und Stepper hinzugefügt, damit TalkBack als Schaltflächen erkennt. (Icb46c, b/244260275)
Wir haben die Z-Reihenfolge der Positions- und Seitenindikatoren im Gerüst korrigiert. Die Indikatoren befinden sich jetzt über der Vignettierung und werden daher nicht von der Vignette verdeckt, sofern sie vorhanden ist. (Ib988f, b/244207528)
Version 1.1.0-alpha04
24. August 2022
androidx.wear.compose:compose-foundation:1.1.0-alpha04, androidx.wear.compose:compose-material:1.1.0-alpha04 und androidx.wear.compose:compose-navigation:1.1.0-alpha04 wurden veröffentlicht. Version 1.1.0-alpha04 enthält diese Commits.
API-Änderungen
Wir haben eine Reihe der Standardfarben im MaterialTheme aktualisiert, um die Barrierefreiheit zu verbessern, da die Originalfarben nicht genügend Kontrast hatten, was es Nutzern schwierig machte, Hintergründe für Chips, Karten oder Schaltflächen von der Hintergrundfarbe des Designs zu unterscheiden. Die aktualisierten Farben sind „Surface“ (0xFF202124->0xFF303133), onPrimary(0xFF202124->0xFF303133), onPrimary(0xFF202124->0xFF303133), primaryVariant(0xFF669DF6->0xFF8AB4F0x2). Die relativ geringfügigen Änderungen der Farben können sich jedoch auf vorhandene Screenshot-Tests auswirken.
(81ab09)
Fehlerkorrekturen
Beheben Sie einen Logikfehler in ScalingLazyColumn, der dazu führen konnte, dass Listen mit einer kleinen Anzahl von Listenelementen (normalerweise genau zwei) die Initialisierung nicht abschließen und daher transparent sind.
(504347)
Version 1.1.0-alpha03
10. August 2022
androidx.wear.compose:compose-foundation:1.1.0-alpha03, androidx.wear.compose:compose-material:1.1.0-alpha03 und androidx.wear.compose:compose-navigation:1.1.0-alpha03 wurden veröffentlicht. Version 1.1.0-alpha03 enthält diese Commits.
Neue Funktionen
Wir haben einen neuen umrissenen Stil für Chips und Buttons sowie die neuen zusammensetzbaren Funktionen OutlinedChip und OutlinedButton hinzugefügt, die eine transparente Chip/Button mit dünnem Rahmen bieten. (ID5972)
API-Änderungen
Überladungen für das Ändern von Schaltflächenformen hinzugefügt (Icccde)
Fehlerkorrekturen
Wir haben die Größe des Steuerelementbereichs für die Ein/Aus-Schaltfläche von ToggleChip korrigiert, da er nicht der UX-Spezifikation entsprach. Die UX-Spezifikationen erfordern einen 4 dp-Abstand zwischen dem Label und einem 24 x 24 dp großen Steuersymbolbereich mit einer Gesamtbreite von 28 dp. Die Implementierung gibt jedoch fälschlicherweise den 36x24.dp-Steuerbereich für die Ein/Aus-Schaltfläche aus. Dies führt dazu, dass 8 dp des nutzbaren Textlabel-Bereichs wegfallen. HINWEIS: Durch diese Fehlerkorrektur erhält das Textlabel mehr Platz, was sich (positiv) auf das Textlayout für überlaufenden Text auswirken kann. Wenn du Screenshot-Tests mit ToggleChips hast, müssen diese möglicherweise aktualisiert werden. (I514c8, b/240548670)
Version 1.1.0-alpha02
27. Juli 2022
androidx.wear.compose:compose-foundation:1.1.0-alpha02, androidx.wear.compose:compose-material:1.1.0-alpha02 und androidx.wear.compose:compose-navigation:1.1.0-alpha02 wurden veröffentlicht. Version 1.1.0-alpha02 enthält diese Commits.
Neue Funktionen
Wir haben die Abhängigkeiten von Compose für Wear OS von 1.2.0 auf 1.3.0-alpha0X von Compose-Bibliotheken geändert
API-Änderungen
Überladungen für das Bearbeiten von Chipformen hinzugefügt (I02e87)
Fehlerkorrekturen
Wir haben die Sichtbarkeit der Vignettierung beim Ein-/Ausblenden des Dialogfelds animiert, um der vorhandenen Skalierungsanimation zu entsprechen. (Ida33e)
Wir haben einen Fehler behoben, bei dem eine Division durch Null bei einem Wechselverhalten beim Scrollen auftreten konnte. (I86cb6)
Ein Fehler in ChipDefaults.childChipColor() wurde behoben, durch den die deaktivierte Hintergrundfarbe vollständig transparent war. (I2b3c3, b/238057342)
Version 1.1.0-alpha01
29. Juni 2022
androidx.wear.compose:compose-foundation:1.1.0-alpha01, androidx.wear.compose:compose-material:1.1.0-alpha01 und androidx.wear.compose:compose-navigation:1.1.0-alpha01 wurden veröffentlicht. Version 1.1.0-alpha01 enthält diese Commits.
API-Änderungen
Der contentDescription-Parameter des Pickers wird jetzt nur für die ausgewählte Auswahloption verwendet. Er verwendet einen String, für den Nullwerte zulässig sind. Bisher musste eine Zuordnung von der Option zur Inhaltsbeschreibung übergeben werden, aber nur die ausgewählte Option wurde verwendet. (Ife6a7)
Wir haben die Barrierefreiheit der Auswahl so verbessert, dass mehrere Auswahlbildschirme mit Screenreadern navigierbar sind und die Inhaltsbeschreibung barrierefrei ist (I64edb).
Fehlerkorrekturen
Wir haben die Basisprofilregeln aktualisiert, die im Paket mit der Wear Compose-Bibliothek enthalten sind (I9c694).
Wir haben die Richtung des Farbverlaufs für Chips im Modus von rechts nach links korrigiert. War oben links->unten rechts, ist jetzt oben rechts->unten links. (Ic2e77)
Wir haben die Standardverläufe für Chip/ToggleChip/Card aktualisiert, damit sie den neuesten UX-Spezifikationen entsprechen. ChipDefaults.gradientBackgroundChipColors wurde aktualisiert und beginnt nun bei 50% der Primärversion statt bei 32,5%. CardDefaults.cardBackgroundPainter wurde so aktualisiert, dass es bei 30% der primären Kampagne beginnt und bei 20% von onSurfaceVariant endet (zuvor 20% bis 10% onSurfaceVariant). ToggleChip.toggleChipColors ändert sich von einem linearen Farbverlauf von 75% Oberfläche zu 32,5% primärem zu 0% primären zu 50% primären Oberfläche. (I43bbd)
Wir haben hinter Chip/ToggleChips eine Hintergrundfarbe (MaterialTheme.color.surface) mit Farbverlauf hinzugefügt, damit sie auch in dem unwahrscheinlichen Fall, dass eine helle Farbe verwendet wird, gut sichtbar sind. (Ibe1a4, b/235937657)
Auswahlelemente sind jetzt immer zentriert ausgerichtet. Das Beheben eines Fehlers beim Festlegen von gradientRatio auf null hatte zur Folge, dass sich die Ausrichtung änderte. (I712b8)
Version 1.0
Version 1.0.2
7. September 2022
androidx.wear.compose:compose-foundation:1.0.2, androidx.wear.compose:compose-material:1.0.2 und androidx.wear.compose:compose-navigation:1.0.2 wurden veröffentlicht. Version 1.0.2 enthält diese Commits.
Fehlerkorrekturen
Wir haben die Z-Reihenfolge der Positions- und Seitenindikatoren im Gerüst korrigiert. Die Indikatoren befinden sich jetzt über der Vignette und werden daher nicht von der Vignette verdeckt, sofern sie vorhanden ist. (Ib988f, b/244207528)
Version 1.0.1
24. August 2022
androidx.wear.compose:compose-foundation:1.0.1, androidx.wear.compose:compose-material:1.0.1 und androidx.wear.compose:compose-navigation:1.0.1 wurden veröffentlicht. Version 1.0.1 enthält diese Commits.
Fehlerkorrekturen
Beheben Sie einen Logikfehler in ScalingLazyColumn, der dazu führen konnte, dass Listen mit einer kleinen Anzahl von Listenelementen (normalerweise genau zwei) die Initialisierung nicht abschließen und daher transparent sind. (076c61)
Version 1.0.0
27. Juli 2022
androidx.wear.compose:compose-foundation:1.0.0, androidx.wear.compose:compose-material:1.0.0 und androidx.wear.compose:compose-navigation:1.0.0 wurden veröffentlicht. Version 1.0.0 enthält diese Commits.
Compose für Wear OS baut auf den zentralen Compose-Bibliotheken auf und bietet zusätzliche Wearable-spezifische Komponenten und gegebenenfalls alternative Implementierungen zentraler Compose-Komponenten, die auf Wearable-Geräte zugeschnitten sind.
Eine Liste der Hauptkomponenten von Wear Compose finden Sie in den Versionshinweisen für Compose for Wear OS Beta01.
Fehlerkorrekturen
Wir haben die Sichtbarkeit der Vignettierung beim Ein-/Ausblenden des Dialogfelds animiert, um der vorhandenen Skalierungsanimation zu entsprechen. (Ida33e)
Wir haben einen Fehler behoben, bei dem eine Division durch Null bei einem Wechselverhalten beim Scrollen auftreten konnte. (I86cb6)
Ein Fehler in ChipDefaults.childChipColor() wurde behoben, durch den die deaktivierte Hintergrundfarbe vollständig transparent war. (I2b3c3, b/238057342)
Version 1.0.0-rc02
22. Juni 2022
androidx.wear.compose:compose-foundation:1.0.0-rc02, androidx.wear.compose:compose-material:1.0.0-rc02 und androidx.wear.compose:compose-navigation:1.0.0-rc02 wurden veröffentlicht. Version 1.0.0-rc02 enthält diese Commits.
Fehlerkorrekturen
Wir haben die Richtung des Farbverlaufs für Karten im RTL-Modus (rechts nach links) korrigiert. Es war oben links->unten rechts und jetzt oben rechts->unten links. (Ic2e77)
Wir haben die Standardverläufe für Chip/ToggleChip/Card aktualisiert, damit sie den neuesten UX-Spezifikationen entsprechen. ChipDefaults.gradientBackgroundChipColors wurde aktualisiert und beginnt nun bei 50% der Primärversion statt bei 32,5%. CardDefaults.cardBackgroundPainter wurde aktualisiert und beginnt nun bei 30% der primären Variante und endet bei 20% von onSurfaceVariant (zuvor 20% bis 10% auf der Oberfläche). ToggleChip.toggleChipColors ändert sich von einem linearen Farbverlauf von 75% Oberfläche zu 32,5% primärem zu 0% primären zu 50% primären Oberfläche. (I43bbd)
Wir haben hinter Chip/ToggleChips eine Hintergrundfarbe (MaterialTheme.color.surface) mit Farbverlauf hinzugefügt, damit sie auch in dem unwahrscheinlichen Fall, dass eine helle Farbe verwendet wird, gut sichtbar sind. (Ibe1a4, b/235937657)
Wir haben die Basisprofilregeln aktualisiert, die im Paket mit der Wear Compose-Bibliothek enthalten sind (I9c694).
Version 1.0.0-rc01
15. Juni 2022
androidx.wear.compose:compose-foundation:1.0.0-rc01, androidx.wear.compose:compose-material:1.0.0-rc01 und androidx.wear.compose:compose-navigation:1.0.0-rc01 wurden veröffentlicht. Version 1.0.0-rc01 enthält diese Commits.
API-Änderungen
Schnittstellen in Erstellungsbibliotheken werden jetzt mit jdk8-Standardschnittstellenmethoden erstellt (I5bcf1).
Fehlerkorrekturen
Wir haben den expliziten Aufruf von fillMaxWidth() für den Listenheader entfernt, da er nicht erforderlich ist. Dies kann zu Problemen führen, wenn eine ScalinglazyColumn aus einer Mischung aus ListHeader()- und Chip()-Komponenten besteht, da die Breite tendenziell größer oder kleiner wird, wenn ListHeader-Elemente aus der Ansicht herausgescrollt werden. (I37144, b/235074035)
Wir haben einen Fehler im ScalingLazyColumn behoben, der dazu führen konnte, dass die Listenelemente erst nach dem Scrollen korrekt gezeichnet werden, wenn das 0. Listenelement groß genug war (einschließlich Abstände). (Ic6159, b/234328517)
Wir haben das Easing „ScalingLazyColumn“ geringfügig angepasst, da Elemente den Bildschirmrand erreichen und den Aktualisierungen der UX-Spezifikation entsprechen. Alte Werte CubicBezierEasing(0.25f, 0.00f, 0.75f, 1.00f) -> neue Werte CubicBezierEasing(0.3f, 0f, 0.7f, 1f). Wenn Sie das alte Verhalten beibehalten möchten, können Sie das scalingParams von ScalingLazyColumn (Ie375c) überschreiben.
Wir haben für das Element „CompactChip“ einen Abstand hinzugefügt, damit die Größe des Berührungszielbereichs von mindestens 48 dp gemäß den Richtlinien für Bedienungshilfen von Material erfüllt ist. Dies kann sich auf alle Layouts auswirken, die Sie mit CompactChips verwenden, da diese zusätzlichen Speicherplatz belegen. (I3d57c)
Version 1.0.0-beta03
1. Juni 2022
androidx.wear.compose:compose-foundation:1.0.0-beta03, androidx.wear.compose:compose-material:1.0.0-beta03 und androidx.wear.compose:compose-navigation:1.0.0-beta03 wurden veröffentlicht. Version 1.0.0-beta03 enthält diese Commits.
Neue Funktionen
ScalingLazyColumn funktioniert jetzt im Modus @Preview zum Schreiben. (I3b3b6, b/232947354)
API-Änderungen
Wir haben den Standardwert für die Eigenschaft ScalingLazyColumn.horizontalAlignment von „Start“ in „CenterHorizontally“ geändert. Damit wird sichergestellt, dass Listenelemente, die nicht die gesamte Breite der Spalte ausfüllen, im Sinne einer bestmöglichen Sichtbarkeit aufeinander ausgerichtet werden. Wenn Sie zum vorherigen Verhalten zurückkehren möchten, legen Sie horizontalAlignment = Alignment.Start fest.(I9ed4b)
Bekannte Probleme
Die Tipp-/Berührungshöhe von CompactChip ist kleiner als die Vorgaben für Bedienungshilfen (Material). Dieses Problem wird in der nächsten Version (15. Juni) korrigiert. Wenn du CompactChip verwendest, wirkt sich dies auf deine Layouts aus, da CompactChips jetzt einen zusätzlichen Abstand darüber und darunter haben. Passen Sie Ihre Layouts an und testen Sie sie oder sehen Sie sich die Fehlerkommentare an, um eine Behelfslösung zur Verwendung des vorhandenen Verhaltens zu erhalten. (b/234332135)
Fehlerkorrekturen
Neue Demo zum Animieren des Hinzufügens oder Entfernens eines Starttexts auf einem TimeText. (I16d75)
Tests für HorizontalPageIndicator.PagesState (I64ed0) hinzufügen
TimeText wird näher an die UX-Spezifikationen angepasst (Ib7ea1)
Version 1.0.0-beta02
18. Mai 2022
androidx.wear.compose:compose-foundation:1.0.0-beta02, androidx.wear.compose:compose-material:1.0.0-beta02 und androidx.wear.compose:compose-navigation:1.0.0-beta02 wurden veröffentlicht. Version 1.0.0-beta02 enthält diese Commits.
Neue Funktionen
Die Auswahl reagiert jetzt immer auf Scroll-Ereignisse, auch im Lesemodus. So müssen Nutzer nicht erst eine Auswahl durch Tippen auswählen, bevor sie scrollen können. Im Lesemodus werden andere als die aktuell ausgewählten Optionen durch einen Shim in gradientColor verdeckt. (I72925)
Wir haben das UX-Verhalten von Chip/ToggleChip/CompactChip/SplitToggleChip geändert, damit sie nicht mehr standardmäßig fillMaxWidth ausführen. Stattdessen passen sie sich an ihre Inhalte an. Um das vorherige Verhalten beizubehalten, fügen Sie einfach modifier = Modifier.fillMaxWidth()(I60a2c, b/232206371) hinzu.
Fehlerkorrekturen
Der CurvedTextStyle-Konstruktor, der einen TextStyle verwendet, berücksichtigt jetzt auch das fontWeight. Dies kann in zukünftigen Versionen der API dem Konstruktor und den Kopiermethoden hinzugefügt werden (Ieebb9).
Verbesserungen beim Wischen am Rand. Wenn Modifier.edgeSwipeToDismiss verwendet wird und ein Wischen vom Randbereich nach links ausgelöst wird, wird kein Wischen zum Schließen mehr ausgelöst, wenn sich die Wischrichtung nach rechts ändert. Bisher war es möglich, die Funktion zum Schließen durch Wischen nach links und dann nach rechts auszulösen.(I916ea)
In HorizontalPageIndicator werden jetzt bis zu 6 Seiten auf dem Bildschirm angezeigt. Wenn es insgesamt mehr als sechs Seiten gibt, wird links oder rechts ein Indikator in halber Größe mit einem sanften Übergang zwischen den Seiten angezeigt.(I2ac29)
Das standardmäßige Andockverhalten bei ScalingLazyColumn und Picker wurde verbessert (I49539).
Verbesserungen beim Wischen am Rand. Wenn Modifier.edgeSwipeToDismiss verwendet wird, wird die Wischgeste zum Schließen nur ausgelöst, wenn die erste Berührung am Rand landet und nach rechts gewischt wird. Bisher war es möglich, durch Wischen von einem beliebigen Teil des Bildschirms zum Schließen zu wischen, wenn ein Scrollen den Anfang erreicht hat.(I8ca2a)
Version 1.0.0-beta01
11. Mai 2022
androidx.wear.compose:compose-foundation:1.0.0-beta01, androidx.wear.compose:compose-material:1.0.0-beta01 und androidx.wear.compose:compose-navigation:1.0.0-beta01 wurden veröffentlicht. Version 1.0.0-beta01 enthält diese Commits.
Funktionen der Funktion „Compose“ für Wear OS 1.0
Die 1.0.0-beta01 von Compose für Wear OS markiert einen wichtigen Meilenstein, da die Funktionen der Mediathek vollständig sind und die API gesperrt ist.
Zu den Wear Compose Material-Komponenten in Version 1.0 gehören:
Material Design: Es wird als Ersatz für „Compose for Mobile“ MaterialTheme verwendet und bietet Farben, Formen und Typografie für Bauteile auf Wearables, die die UX-Richtlinien für Wear Material Design implementieren.
Button, CompactButton und ToggleButton – für die Schaltfläche steht nur ein Platz für ein Symbol, ein Bild oder einen kurzen Text (maximal 3 Zeichen) zur Verfügung. Kreisförmig mit den empfohlenen Größen für Standard-, große oder kleine Schaltflächen. CompactButton bietet einen einzelnen Slot für beliebige Inhalte (Symbol, Bild oder Text) und ist kreisförmig mit einer sehr kleinen Hintergrundgröße. CompactButton hat einen optionalen transparenten Rahmen um den Hintergrund, der den anklickbaren Bereich vergrößert. ToggleButton ist eine Schaltfläche, über die in einem einzelnen Bereich beliebige Inhalte (kurzer Text, Symbol oder Bild) ausgewählt werden können. Der Status „Ein/Aus“ (aktiviert/deaktiviert) ist farblich gekennzeichnet und es werden verschiedene Symbole angezeigt, die angezeigt werden, ob das Kästchen angeklickt ist oder nicht.
Karten - zur Anzeige von Informationen zu Anwendungen, wie z. B. Benachrichtigungen. Flexibles Design für verschiedene Anwendungsfälle mit AppCard und TitleCard, das unterschiedliche Layouts und Unterstützung für Bilder als Karteninhalte oder Hintergründe bietet.
Chips - stadionförmige Komponenten ähnlich wie Schaltflächen, aber mit einem größeren Bereich und mehreren Schlitzen für Beschriftungen, sekundäre Beschriftungen und Symbole. In verschiedenen Größen und mit Unterstützung von Bildern als Hintergründe
SwitchChips und SplitToggleChips – ein Chip mit einem aktivierten/nicht aktivierten Status und einem zusätzlichen ToggleControl-Slot, um ein Symbol wie einen Schalter oder ein Optionsfeld anzuzeigen, um den Status der Komponente anzuzeigen. Außerdem hat der SplitToggleChip zwei antippbare Bereiche, einen anklickbaren und einen ein-/ausschaltbaren Bereich.
CircularProgressIndicator – Fortschrittsanzeige für Wear-Material mit zwei Varianten. Die erste drückt den Anteil des Abschlusses einer laufenden Aufgabe aus und unterstützt eine Lücke in der kreisförmigen Spur zwischen Start- und Endwinkel. Die zweite gibt einen unbestimmten Fortschritt für eine nicht angegebene Wartezeit an.
CurdText: ist Teil der DSL zur Beschreibung von CurvedLayouts, zusammen mit curvedRow und curvedColumn, um Komponenten um kreisförmige Geräte herum anzuordnen. Weitere Informationen zu CurvedLayout und CurvedModifier finden Sie unten im Abschnitt „Wear Component Foundation“. Diese Funktion hat eine ähnliche Rolle wie Modifikatoren in der nicht gekrümmten Welt und ermöglicht die Konfiguration verschiedener Aspekte von Layout, Padding, Farbverläufen usw.
Dialogfeld, Benachrichtigung und Bestätigung: Ein Dialogfeld im Vollbildmodus wird über andere Inhalte gelegt und unterstützt das Schließen durch Wischen. Sie belegt einen einzelnen Slot, bei dem es sich voraussichtlich um spezielle Wear-Material-Dialoginhalte wie „Warnung“ oder „Bestätigung“ handelt. Die Benachrichtigung ist ein vorgegebener Dialoginhalt mit Platz für Symbol, Titel und Nachricht. Es weist entweder eine Überlastung von zwei Plus- und Negativschaltflächen auf, die nebeneinander angezeigt werden, oder einem Schlitz für einen oder mehrere vertikal übereinander gestapelte Chips. Bei der Bestätigung handelt es sich um vorgegebene Dialoginhalte, die eine Nachricht für einen bestimmten Zeitraum anzeigen. Sie hat eine Fläche für ein Symbol oder Bild (das könnte animiert sein).
HorizontalPageIndicator: Zeigt die horizontale Seitenposition in einer Form, die dem Wearable-Formfaktor entspricht. Die Smartwatch nimmt den Vollbildmodus ein und zeigt auf runden Geräten eine gebogene Anzeige. Kann mit der Anzeige der Seite „Begleitenden“ verwendet werden.
Symbol: Eine Wear-Implementierung von Symbol, die Farbe und Alpha aus dem Wear Material-Design übernimmt. Ein anklickbares Symbol findest du unter Schaltfläche oder Chip.
Auswahl: zeigt eine scrollbare Liste von Elementen an, aus der eine Auswahl getroffen werden kann. Standardmäßig werden Elemente unbegrenzt in beide Richtungen wiederholt. Kann im Lesemodus angezeigt werden, um nicht ausgewählte Optionen auszublenden.
PositionIndicator - zeigt die Scroll-Position oder andere Positionshinweise in einer Form, die dem Wearable-Formfaktor entspricht. Die Smartwatch nimmt den ganzen Bildschirm ein. Auf runden Geräten wird eine gekrümmte Anzeige angezeigt.
Gerüst: Implementiert die grundlegende visuelle Layoutstruktur von Wear Material Design. Diese Komponente bietet eine API, mit der mehrere Wear Material-Komponenten (z. B. TimeText, PositionIndicator und Vignette) für die Bildschirmkonstruktion zusammengestellt werden. Dabei wird eine geeignete Layoutstrategie gewährleistet und die erforderlichen Daten erfasst, damit diese Komponenten einwandfrei zusammen funktionieren.
ScalingLazyColumn – eine scrollbare Skalierungs-/Fischaugenlistenkomponente, die ein wichtiger Bestandteil der Wear Material Design-Sprache ist. Bietet Skalierungs- und Transparenzeffekte für die Inhaltselemente. ScalingLazyColumn ist darauf ausgelegt, eine potenziell große Anzahl von Inhaltselementen zu verarbeiten, die nur bei Bedarf materialisiert und zusammengestellt werden.
Schieberegler - ermöglicht Nutzern, eine Auswahl aus einem Wertebereich zu treffen. Der Auswahlbereich wird als Balken dargestellt, der optional mit Trennzeichen angezeigt werden kann.
Stepper: Eine Vollbildkomponente, mit der Nutzer über die Schaltflächen zum Erhöhen und Verringern oben und unten auf dem Bildschirm eine Auswahl aus einem Bereich von Werten treffen können, wobei in der Mitte ein Platz für Text oder einen Chip vorhanden ist.
SwipeToDismissBox - steuert die Wischgeste zum Schließen. Für den Hintergrund, der nur während der Wischgeste angezeigt wird, und für den Inhalt im Vordergrund wird ein einziger Bereich benötigt. Kann optional mit der Androidx-Navigationsbibliothek mithilfe von SwipeDismissableNavHost kombiniert werden (siehe Wear Compose-Navigationsbibliothek unten).
Text: Eine Wear-Implementierung der Komponente zum Schreiben von Material Text, bei der Farbe und Alpha aus dem Wear-Material-Design übernommen werden.
TimeText - eine Komponente zur Anzeige der Uhrzeit und des Anwendungsstatus oben auf dem Bildschirm. Passt sich durch Verwendung von gebogenem Text auf runden Displays an die Bildschirmform an.
Vignettierung – eine Bildschirmbearbeitung für das Gerüst, bei der der obere und untere Bereich des Bildschirms unkenntlich gemacht wird, wenn scrollbarer Content verwendet wird.
Die Wear Compose Foundation enthält außerdem die folgenden Komponenten:
CurvedLayout – Wear Foundation CurvedLayout ist eine zusammensetzbare Layoutoption, bei der die untergeordneten Elemente in einem Bogen platziert und nach Bedarf gedreht werden. Dies ähnelt einem Zeilenlayout, das zu einem Kreisringsegment gebogen ist. Beachte, dass der Inhalt einer CurvedLayout keine zusammensetzbare Lambda-Funktion ist, sondern eine DSL (domainspezifische Sprache). Alle Elemente in der DSL von CurvedLayout unterstützen einen optionalen Modifikatorparameter, der aus CurvedModifier erstellt wurde.
„basicCurvedText“ – ein Element in der CurvedLayout-DSL, basicCurvedText ermöglicht es Entwicklern, auf einfache Weise gekrümmten Text zu schreiben, der der Krümmung eines Kreises folgt (normalerweise am Rand eines runden Bildschirms). basicCurvedText kann nur innerhalb von CurvedLayout erstellt werden, um eine optimale Leistung zu gewährleisten, wie etwa die Möglichkeit, die Positionierung anzugeben, und die Verwendung von CurvedModifiers. In den meisten Fällen sollte stattdessen „kurventext“ verwendet werden, da hier Material-Design verwendet wird.
CurdComposable: umschließt normalen zusammensetzbaren Inhalt, sodass er mit CurvedLayout verwendet werden kann. Wenn curvedComposable mehrere Elemente enthält, werden diese übereinander gezeichnet (wie ein Kasten). Wenn Sie mehrere zusammensetzbare Funktionen entlang einer Kurve platzieren möchten, umschließen Sie diese jeweils mit curvedComposable.
CurdRow und CurdColumn – ähnlich wie Zeile und Spalte können curvedRow und curvedColumn in einem CurvedLayout verschachtelt werden, um Elemente nach Bedarf anzuordnen. Für ein curvedRow können die Winkellayoutrichtung und radiale Ausrichtung angegeben werden. Für ein curvedColumn können die Winkelausrichtung und die Radialrichtung angegeben werden.
CurvedModifier: Alle gebogenen Komponenten akzeptieren einen Modifikatorparameter, der mit CurvedModifier erstellt werden kann: Hintergrund, Größe, Gewichtung und Abstände werden unterstützt.
Die folgende Komponente ist auch in der Wear Compose-Navigation enthalten:
SwipeDismissableNavHost - stellt einen Platz in der Compose-Hierarchie zur Verfügung, an dem eine eigenständige Navigation erfolgen kann. Eine Rückwärtsnavigation wird durch eine Wischgeste ermöglicht. Inhalte werden in einem SwipeToDismissBox mit der aktuellen Navigationsebene angezeigt. Wenn Sie zum Schließen wischen, wird gegebenenfalls die vorherige Navigationsebene im Hintergrund angezeigt.
In den vorherigen Versionshinweisen für die verschiedenen Alphaversionen finden Sie weitere Informationen dazu.
API-Änderungen
CurvedModifier.padding*-Funktionen wurden hinzugefügt. Sie werden verwendet, um zusätzlichen Abstand um eine gebogene Komponente herum anzugeben. (I4dbb4)
CompositionLocal interne Klasse wurde entfernt (I42490)
Zur Orientierung haben wir konstante Werte für die Symbolgrößen Button, CompactButton und ToggleButton hinzugefügt.
(I57cab)
Aktivierten Parameter zu AppCard und TitleCard hinzufügen. Jetzt haben sie eine ähnliche API wie androidx.compose.material-Karten. Ist der Parameter auf „false“ gesetzt, kann die Karte nicht angeklickt werden. (Idc48d, b/228869805)
Fehlerkorrekturen
Der Stepper deaktiviert jetzt die Schaltflächen zum Verringern und Erhöhen, wenn die Unter-/Obergrenze erreicht ist, und wendet ContentAlpha.disable auf iconColor an (I4be9f).
Wir haben einen Abstand von 1 dp um Picker-Inhalte hinzugefügt, wenn sie mit einem Farbverlauf gezeichnet werden, um Bildsprünge beim Wischen zu vermeiden. (I0b7b9)
Screenshottests für PositionIndicator hinzufügen (I5e8bc)
Weitere Tests für AppCard und TitleCard hinzufügen (I85391, b/228869805)
Version 1.0.0-alpha21
20. April 2022
androidx.wear.compose:compose-foundation:1.0.0-alpha21, androidx.wear.compose:compose-material:1.0.0-alpha21 und androidx.wear.compose:compose-navigation:1.0.0-alpha21 wurden veröffentlicht. Version 1.0.0-alpha21 enthält diese Commits.
Neue Funktionen
Neue Modifikatoren für gebogene Elemente hinzugefügt, um den Hintergrund eines gebogenen Elements anzugeben: CurvedModifier.background, .radialGradientBackground und .angularGradientBackground (I8f392)
Angabe des Überlaufmodus für gebogenen Text (Clip/Ellipsen/sichtbar) zulassen. (I8e7aa)
Es wurde ein CurvedModifier.weight-Modifikator hinzugefügt, der dem in „Schreiben“ ähnelt. Dies kann für die untergeordneten Elemente von CurvedLayout (für die Breite) und für untergeordnete Elemente von CurvedColumn (für die Höhe) verwendet werden. (I8abbd)
Die Modifikatoren CurvedModifier.size, .angularSize und .radialSize wurden hinzugefügt, um die Größe eines gebogenen Elements anzugeben. (I623c7)
API-Änderungen
Ordnen Sie die Parameter in der Wear Compose API neu an, damit der Hintergrund und die Farbe einheitlich sind (I43208).
Im Uhrzeigersinn entfernt und insideOut-Parameter und in neuen Klassen durch ausdrucksstärkere Konstanten ersetzt. Die Ausrichtungsrichtung für das gebogene Layout kann jetzt LayoutDirection erkannt und übernommen werden, wenn keine Angabe erfolgt (If0e6a).
Wir haben autoCenter: Boolean durch autoCenter: AutoCentringParams ersetzt, um ein API-Problem mit ScalingLazyColumn zu beheben. (Ia9c90)
Wir haben iconTintColor und toggleControlTintColor in der gesamten API (Chip/ToggleChip/Dialog/Slider/Stepper/...) in iconColor und toggleControlColor umbenannt, da die Farbe auf den Slot „icon/toggleControl“ angewendet wird. (ID 238)
PageIndicatorStyle-Enum in Wertklasse (I2dc72) umschreiben
Wir haben einigen Plätzen in unseren Composables RowScope/ColumnScope/BoxScope hinzugefügt, um Entwicklern zu zeigen, von welchen Annahmen das Layout ausgegangen wird. Auf diese Weise können Entwickler zusätzliche Modifikatoren für einige Slot-Inhalte verwenden und vermeiden, dass zusätzliche Layoutelemente bereitgestellt werden müssen. Außerdem haben wir einige kleinere Aktualisierungen an den Farben der AppCard bzw. der Titelkarte vorgenommen, sodass timeColor und appColor standardmäßig auf contentColor festgelegt sind. Diese Eigenschaften können bei Bedarf trotzdem alle einzeln überschrieben werden. (I26b59)
SwipeToDismissBoxState.Companion Objekt wurde als privat gekennzeichnet (I39e84)
Korrigieren Sie die Reihenfolge der Parameter für InlineSlider und Stepper. Einfache Änderung zur Einhaltung der API-Richtlinien (I11fec)
Wir haben das Saver-Objekt für SwipeToDismissBoxState entfernt, da es nicht verwendet wurde. (Ifb54e)
Wir haben CompactChip aktualisiert, um sie an die neueste UX-Spezifikation anzupassen. Der Abstand wurde auf horizontal = 12.dp und vertikal = 0.dp reduziert. Die Schriftart für das Label wurde von "Schaltfläche" zu "Untertitel1" geändert. Die empfohlenen Symbolgrößen sind 20 x 20, wenn sowohl das Symbol als auch das Label vorhanden sind, und 24 x 24 für einen kompakten Symbolchip. Für den Anwendungsfall „Nur Symbol“ wurde außerdem sichergestellt, dass das Symbol zentriert ist. (IEa2be)
Wir haben ScalingLazyListLayoutInfo einige neue Felder hinzugefügt, damit Entwickler sehen können, wie viel contentPadding und autoCenteringPadding bereits angewendet wurden. Diese können für Entwickler bei der Berechnung von Fling/Scrollen nützlich sein (I7577b).
Wir haben In-/Out-Übergänge für Dialog implementiert. Der Parameter showDialog wurde hinzugefügt und das Dialogfeld steuert jetzt seine eigene Sichtbarkeit. Dadurch kann Dialog die Intro- und Outro-Animationen ausführen, wenn das Dialogfeld angezeigt/ausgeblendet wird. Die Outro-Animation wird nicht ausgeführt, wenn der Nutzer das Dialogfeld durch Wischen zum Schließen verlässt. Wir haben auch einen Standardwert für den Status in der kürzlich hinzugefügten SwipeToDismissBox-Überlastung hinzugefügt. (I682a0)
Zur besseren Unterstützung von i18n und a11y haben wir ToggleChip und SplitToggleChip geändert, sodass sie keine Standardeinstellungen für den Slot toggleControl mehr haben. Außerdem haben wir ToggleChipDefaults geändert, sodass die folgenden Methoden jetzt ImageVector anstelle von Symbol zurückgeben (beachten Sie, dass sie nicht mehr @Composables zurückgeben, sondern mit Kleinbuchstaben beginnen), SwitchIcon()->switchIcon(), CheckboxIcon->checkboxIcon() und RadioIcon()->radioIcon(). Dies ermöglicht und ermutigt Entwickler, ihre eigenen Icon()-Komponierbaren mit einem geeigneten contentDescription-Satz zu erstellen. (I5bb5b)
Wir haben einen SwipeDismissableNavHostState-Parameter zu SwipeDismissableNavHost hinzugefügt. Dies unterstützt die Verwendung von Kantenwischen auf Bildschirmen, die als Navigationsziele verwendet werden, da SwipeToDismissBoxState jetzt hochgezogen und verwendet werden kann, um sowohl SwipeDismissableNavHostState als auch Modifier.edgeSwipeToDismiss auf Bildschirmen zu initialisieren, die ein Edge-Wischen erfordern. (I819f5, b/228336555)
Fehlerkorrekturen
Geschwungene Layouts sollten bei Bedarf aktualisiert werden. (Ie8bfa, b/229079150)
Fehlerkorrektur für https://issuetracker.google.com/issues/226648931 (Ia0a0a, b/226648931)
androidx.wear.compose:compose-foundation:1.0.0-alpha20, androidx.wear.compose:compose-material:1.0.0-alpha20 und androidx.wear.compose:compose-navigation:1.0.0-alpha20 wurden veröffentlicht. Version 1.0.0-alpha20 enthält diese Commits.
Neue Funktionen
Fügen Sie edgeSwipeToDismiss-Modifikator für SwipeToDismiss hinzu. swipeToDismiss darf nur am linken Rand des Darstellungsbereichs aktiv sein. Wird verwendet, wenn die Mitte des Bildschirms horizontales Paging unterstützen muss, z. B. das 2-D-Scrollen einer Karte oder horizontales Wischen zwischen Seiten.(I3fcec, b/200699800)
API-Änderungen
Grundlegende Implementierung von CurvedModifiers. Dies eröffnet Möglichkeiten zur Anpassung von gebogenen Inhalten. Es gibt jedoch noch keine CurvedModifiers und es ist möglich, später benutzerdefinierte Modifikatoren zu erstellen. (I9b8df)
EdgeSwipeAktualisierung der Dokumentation zu Modifikatoren und der Standardwerte (I6d00d) zum besseren Verständnis
PageIndicator Slot in Scaffold hinzufügen. Wenn Sie PageIndicator direkt zu Scaffold hinzufügen, können wir dafür sorgen, dass es auf kreisförmigen Geräten korrekt angezeigt wird. (Ia6042)
Entfernen Sie die Standardsymbole aus den Parametern InlineSlider und Stepper. So können Entwickler auf die Anforderungen an Lokalisierung und Barrierefreiheit achten. In Demos und Beispielen wurde die Verwendung von Standardsymbolen gezeigt. (I7e6fd)
Nachgestellte und führende Parameternamen durch Start und Ende in TimeText ersetzen (Iaac32)
Wir haben eine SwipeToDismissBox-Überlastung mit einem onDismissed-Parameter hinzugefügt, um zu unterstützen, dass häufig ein Navigationsereignis ausgelöst wird, wenn die Wischgeste abgeschlossen ist. (I50353, b/226565726)
ExperimentalWearMaterialApi-Anmerkungen aus der TimeText-Nutzung entfernt (Ide520)
Wir haben ScalingLazyList/Column Bereichs- und Informationsschnittstellen als versiegelt gekennzeichnet, da sie nicht für externe Entwickler gedacht sind. So können wir in Zukunft neue Mitglieder hinzufügen, ohne Änderungen an Binärprogrammen vornehmen zu müssen. (I7d99f)
Wir haben der Auswahl eine neue flingBehaviour-Eigenschaft und eine PickerDefaults.flingBehaviour()-Methode hinzugefügt, um die Konfiguration des Suchverhaltens zu ermöglichen, z. B. die RSB-Unterstützung. Mit PickerState wird jetzt die ScrollableState-Schnittstelle implementiert. (Ib89c7)
Fehlerkorrekturen
Aktualisieren Sie die ART-Basisprofilregeln (Android Runtime) für Wear Compose-Bibliotheken. ART kann Profilregeln auf Geräten nutzen, um im Voraus eine bestimmte Teilmenge der Anwendung zu kompilieren und so die Leistung der Anwendung zu verbessern. Dies hat keine Auswirkungen auf Debug-fähige Anwendungen. (Iaa8ef)
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 in CurvedLayout umbenannt und in einen Bereich mit DSL umgestaltet. Mithilfe dieser DSL können komplexere, gebogene Layouts mithilfe einer Reihe von verschachtelten curvedRow- und curvedColumn-Elementen angegeben werden. Diese entsprechen den Äquivalenten für das gebogene Layout für Zeile und Spalte. Innerhalb dieser Layout-Elemente können drei Elemente verwendet werden: curvedComposable (zum Hinzufügen von @Composable), basicCurvedText (gekrümmter Text der Stiftung) und curvedText (Kleidungsmaterial mit gebogenem Text tragen). (Ib776a)
Machen Sie die Seite für das PositionIndicator konfigurierbar. Die Basisposition von PositionIndicator kann nun als End (auf die Layout-Richtung wahrnehmbar), Gegen Rsb (berücksichtigt die Bildschirmdrehung, gegenüber dem physischen RSB) oder als absolute Werte (Links &) konfiguriert werden Richtig. (I2f1f3)
Für SwipeToDismissBox haben wir SwipeDismissTarget.Original in SwipeToDismissValue.Default und SwipeDismissTarget.Dismissal in SwipeToDismissValue.Dismissed umbenannt. Außerdem haben wir SwipeToDismissBoxDefaults.BackgroundKey und SwipeToDismissBoxDefaults.ContentKey nach SwipeToDismissKeys.Background bzw. SwipeToDismissKeys.Content verschoben. (I47a36)
Wir haben der Auswahl einen schreibgeschützten Modus für Bildschirme mit mehreren Auswahlfeldern hinzugefügt, in denen jeweils nur eine Auswahl bearbeitet werden kann. Wenn die Auswahl schreibgeschützt ist, werden die aktuell ausgewählte Option und gegebenenfalls ein Label angezeigt. (I879de)
SwipeToDismissBoxState wurde refaktoriert, um den Bereich von ExperimentalWearMaterialApi auf Modifier.swipeable und SwipeableState zu beschränken, die jetzt intern verwendet werden. SwipeToDismissBoxState hat jetzt currentValue-, targetValue-, isAnimationRunning- und snapTo-Mitglieder, um häufige Anwendungsfälle zu unterstützen. Bitte teile uns mit, wenn du weitere Properties zur Verfügung stellen möchtest. Außerdem wurde das Verhalten von SwipeableState für den Fall behoben, dass der Versatz beim Wischen innerhalb eines Rundungsfehlers eines Ankers lag. (I58302)
Fehlerkorrekturen
Vereinfachter und korrigierter Code zur Erkennung, ob der Inhalt einer ScalingLazyColumn gescrollt werden kann. Damit wird entschieden, ob ein
Bildlaufleiste oder nicht) (I7bce0)
Ein Fehler in der Positionsanzeige wurde behoben, der bei Verwendung mit mehr als einem Status und beim Wechseln zwischen diesen Statusangaben bestand (I320b5).
Wir haben die Typografie/Schriftarten des Standarddesigns zum Schreiben von Text für Wear OS so aktualisiert, dass er unseren neuesten UX-Richtlinien entspricht. Dabei sind die Werte display1 (40.sp) und display2 (34.sp) jetzt kleiner als die vorherigen Werte. Außerdem wurden verschiedene kleinere Aktualisierungen der Zeilenhöhe und des Zeilenabstands vorgenommen. (Beispiel 3077)
Wir haben SwipeToDismissBox einen neuen Widerstand hinzugefügt. So wird eine Bewegung nur dann ausgelöst, wenn zum Schließen gewischt wird und nicht in die entgegengesetzte Richtung. (Ifdfb9)
Wir haben einige der Standardparameterwerte für die CircularProgressIndicator-Funktionen geändert, um sie an die UX-Richtlinien für Wear Material Design anzupassen. Für die Spinner-/Indeterminant-Version wurden Größe (40->24.dp), AnzeigeColor (primär->onBackground), transparente TrackColor (30%->10%) und Strichbreite (4->3dp) aktualisiert. Für die Progress/Determinate-Version wurde die trackColor-Transparenz (30%->10%) aktualisiert. (I659cc)
Wir haben die Standard-Skalierungsparameter von ScalingLazyColumn entsprechend den neuesten UX-Spezifikationen von Wear Material Design aktualisiert. Dies führt dazu, dass Listenelemente beginnend näher an der Listenmitte skaliert werden, aber am Listenrand weniger skaliert werden als zuvor. (Ica8f3)
Einige Anpassungen an ScalingLazyColumnDefaults.snapFlingBehavior, um das Ende der Animation zu verbessern (If3260)
Version 1.0.0-alpha18
9. März 2022
androidx.wear.compose:compose-foundation:1.0.0-alpha18, androidx.wear.compose:compose-material:1.0.0-alpha18 und androidx.wear.compose:compose-navigation:1.0.0-alpha18 wurden veröffentlicht. Version 1.0.0-alpha18 enthält diese Commits.
API-Änderungen
Mehrere Verbesserungen an PositionIndicator: ShowResult
in PositionIndicatorVisibility umbenannt. Einige Leistungsverbesserungen, um Neuberechnungen zu vermeiden, wenn sie nicht benötigt werden (Iaed9d)
Die empfohlene Farbe für SplitToggleChip wurde aktualisiert. SplitToggleChips haben jetzt einen einfarbigen Hintergrund, wenn sie aktiviert oder deaktiviert sind. Die Einfärbung des Umschaltsteuerelements gibt an, ob die Komponente aktiviert ist oder nicht. Wir haben eine neue ToggleDefaults.splitToggleChipColors() hinzugefügt, um das neue Farbschema zu unterstützen. Außerdem haben wir die toggleChipColors()-Methoden beim Entfernen von „splitBackgroundOverlayColor“ (I7e66e) vereinfacht.
Wir haben dem ScalingLazyListItemInfo „unAdjustedSize“ hinzugefügt, da es aufgrund der Genauigkeit der Gleitkommazahl nicht sicher ist, die ursprüngliche Elementgröße mit der skalierten Größe und dem Skalierungsfaktor zu berechnen. (I54657, b/221079441)
HorizontalPageIndicator hinzufügen. Dieser Wert steht für die Gesamtzahl der Seiten und eine ausgewählte Seite. Kann je nach Form des Geräts linear oder gekrümmt sein. Es unterstützt auch eine benutzerdefinierte Indikatorform, die definiert, wie jeder Indikator visuell dargestellt wird. (Iac898)
Wir haben PickerState aktualisiert, sodass „numberOfOptions“ aktualisiert werden kann. Dies unterstützt Anwendungsfälle wie DatePicker, bei denen sich die Anzahl der Tage im Monat je nach ausgewähltem Monat ändert. Der Konstruktorparameter für PickerState wurde entsprechend in initialNumberOfOptions geändert. (Iad066)
PositionIndicator ausblenden, wenn eine Bildlaufleiste angezeigt wird und nicht
Scrollen. (Id0a7f)
Aus Gründen der Einheitlichkeit mit dem Gerüst zeigt unsere Vollbild-Dialogkomponente jetzt ein PositionIndicator und ein Vignette an. Wir verwenden jetzt auch ScalingLazyColumn anstelle von Column. Das bedeutet, dass sich der Inhalt des Dialogfelds jetzt in ScalingLazyListScope befindet und normalerweise von Element { /* content */ } eingeschlossen sein muss. Das Dialogfeld unterstützt den Parameter „ verticalArrangement“ entsprechend. (Idee 13)
Wir haben den Namen ToggleChip und SplitToggleChip der Eigenschaft „switchIcon“ in „switchControl“ geändert, um sie besser an Material Design anzupassen und Designern und Entwicklern bei der Navigation in der API zu helfen. (If5921, b/220129803)
Wir haben der Funktion „Wear-Material“-Designtypologie einen neuen Eintrag „caption3“ hinzugefügt.Caption3 ist eine kleine Schriftart, die für das Schreiben von zusätzlichem Text im Langformat wie z. B. rechtliche Texte verwendet wird. (I74b13, b/220128356)
Fehlerkorrekturen
Beenden Sie das Andocken der Animation, wenn wir dort sind. (Idb69d)
Animieren Sie Änderungen in PositionIndicator. (I94cb9)
Aufgrund von UI/UX-Feedback haben wir die automatische Zentrierung von ScalingLazyColumn so geändert, dass nur genügend Platz vorhanden ist, um sicherzustellen, dass die Elemente mit dem Index ScalingLazyListState.initialCenterItemIndex oder höher vollständig bis zur Mitte des Darstellungsbereichs gescrollt werden können. So können Entwickler ein oder zwei Elemente zu einem Element anfänglich in der Mitte platzieren, die nicht in die Mitte gescrollt werden können. Das bedeutet, dass das automatische Zentrieren von ScalingLazyColumn nicht über initialCenterItemIndex/initialCenterItemScrollOffset hinausgescrollt werden kann (I22ee2).
Wir haben eine Demo für die Datumsauswahl hinzugefügt und einen Fehler in PickerState behoben, bei dem die initialSelectedOption angewendet wurde, bis die Auswahl angezeigt wurde. (Id0d7e)
Um das Beschneiden breiterer ScalingLazyColumn-Elemente auf runden Bildschirmen zu reduzieren, wurde der standardmäßige horizontale Abstand von Inhalten von 8 auf 10 dp erhöht. (I0d609)
Achte darauf, dass beim Scrollen PositionIndicator angezeigt wird. (Ied9a2)
Version 1.0.0-alpha17
23. Februar 2022
androidx.wear.compose:compose-foundation:1.0.0-alpha17, androidx.wear.compose:compose-material:1.0.0-alpha17 und androidx.wear.compose:compose-navigation:1.0.0-alpha17 wurden veröffentlicht. Version 1.0.0-alpha17 enthält diese Commits.
Neue Funktionen
Wir haben Snap-Unterstützung hinzugefügt, die mit ScalingLazyColumn verwendet werden kann. Legen Sie flingBehavior = ScalingLazyColumnDefaults.flingWithSnapBehavior(state) fest, um die Snap-Unterstützung zu aktivieren. (I068d3, b/217377069)
Wir haben einige Demos für Picker hinzugefügt,
wählen Sie entweder das 24- oder das 12-Stunden-Format aus. (IE5552)
API-Änderungen
Problem mit TimeText benutzerdefinierten Schriftarten und Stile auf quadratischem Gerät (Iea76e)
ScalingLazyListLayoutInfo hat jetzt reverseLayout, viewportSize und Ausrichtungseigenschaften, die mit denen von LazyListLayoutInfo übereinstimmen (I4f258, b/217917020)
ScalingLazyColumn hat jetzt eine userScrollEnabled-Property, die der Property LazyList entspricht (I164d0, b/217912513).
Die Auswahl hat jetzt standardmäßig oben und unten einen Farbverlauf (Iab92a).
Fehlerkorrekturen
Wir haben ScalingLazyColumn geändert, sodass die Datei nicht mehr gierig den gesamten Bereich des übergeordneten Elements ausfüllt. Stattdessen wird seine Größe von der Größe seines Inhalts genommen. Das stimmt damit mit dem Verhalten von LazyColumn überein. Wenn Sie das alte Verhalten wiederherstellen möchten, übergeben Sie Modifier.fillMaxWidth()/width()/widthIn() an ScalingLazyColumn (I51bf8).
Wir haben die Ausnahmemeldung in SwipeDismissableNavHost.kt verbessert, die ausgelöst wurde, wenn der Navigations-Backstack leer war. (I1b1dc)
Version 1.0.0-alpha16
9. Februar 2022
androidx.wear.compose:compose-foundation:1.0.0-alpha16, androidx.wear.compose:compose-material:1.0.0-alpha16 und androidx.wear.compose:compose-navigation:1.0.0-alpha16 wurden veröffentlicht. Version 1.0.0-alpha16 enthält diese Commits.
Neue Funktionen
CircularProgressIndicator hinzufügen. Fortschrittsanzeigen zeigen die Länge eines Prozesses oder eine nicht angegebene Wartezeit an. Unterstützt im Vollbildmodus eine Lücke (Cutout) für TimeText oder andere Komponenten.
(Iab8da)
API-Änderungen
Die Auswahl verfügt jetzt über den Parameter flingBehavior. Durch den Standardwert wird beim Scrollen/Fingen an die nächstgelegene Option angedockt. (I09000)
Zusätzliche Integer API für InlineSlider und Stepper (I1b5d6)
Fehlerkorrekturen
Wir haben den standardmäßigen initialCenterItemIndex für ScalingLazyListState von 0 nach 1 geändert. Das bedeutet, dass das zweite Listenelement (Index == 1) bei der Initialisierung in der Mitte des Darstellungsbereichs und das erste Element (index == 0) davor platziert wird, wenn es nicht bei der Zustandskonstruktion mit ScalingLazyListState.rememberScalingLazyListState(initialCenterItemIndex =) überschrieben wird. Dies ermöglicht einen besseren standardmäßigen visuellen Effekt, da der Großteil des Darstellungsbereichs mit Listenelementen gefüllt wird. (I0c623, b/217344252)
Wir haben den standardmäßigen extraPadding für ScalingLazyColumn von 10% auf 5 % reduziert, damit genügend Listenelemente gezeichnet werden können (auch wenn wir die Größe einiger Elemente verkleinern). Dadurch wird vermieden, dass zusätzliche Listenelemente zusammengestellt werden, die möglicherweise nicht im Darstellungsbereich angezeigt werden. Wenn nicht standardmäßige Skalierungsparameter verwendet werden, beispielsweise eine extremere Skalierung, kann der Entwickler das zusätzliche Padding mit viewportVerticalOffsetResolver anpassen. (I76be4)
Problem mit TimeText in mehreren Zeilen auf einem quadratischen Gerät beheben (Ibd3fb)
Wir haben ScalingLazyColumn geändert, sodass die Datei nicht mehr gierig den gesamten Bereich des übergeordneten Elements ausfüllt. Stattdessen wird seine Größe von der Größe seines Inhalts genommen. Dies entspricht dem Verhalten von LazyColumn. Wenn du das alte Verhalten wiederherstellen möchtest, übergib Modifier.fillMaxSize() an ScalingLazyColumn. HINWEIS: Diese Änderung ist unvollständig und wird im nächsten Alpharelease berücksichtigt. (I3cbfa)
Version 1.0.0-alpha15
26. Januar 2022
androidx.wear.compose:compose-foundation:1.0.0-alpha15, androidx.wear.compose:compose-material:1.0.0-alpha15 und androidx.wear.compose:compose-navigation:1.0.0-alpha15 wurden veröffentlicht. Version 1.0.0-alpha15 enthält diese Commits.
API-Änderungen
Wir haben die neue Property autoCentering zu ScalingLazyColumn hinzugefügt. Ist dieser Wert auf „true“ gesetzt (Standardeinstellung), können alle Elemente, einschließlich des ersten und letzten Elements, gescrollt werden, sodass sie in der Mitte des Darstellungsbereichs der Liste sichtbar sind. Wenn Sie die automatische Zentrierung verwenden, sollten Sie den vertikalen Inhaltsabstand wahrscheinlich auf 0.dp festlegen. Wenn sowohl das automatische Zentrieren als auch der vertikale Inhaltsabstand zur Verfügung steht, ist vor dem ersten und nach dem letzten Listenelement zusätzlicher Platz verfügbar, sodass noch weiter gescrollt werden kann. (I2a282, b/214922490)
Wir haben eine Dialog-Komponente hinzugefügt, die es jeder zusammensetzbaren Funktion ermöglicht, ein Vollbild-Dialogfeld auszulösen, das über anderen Inhalten platziert wird. Wenn das Dialogfeld angezeigt wird, lässt es sich durch Wischen schließen. Während der Wischgeste werden die Inhalte des übergeordneten Elements im Hintergrund angezeigt. Der Dialoginhalt muss Alert oder Confirmation sein (aus den früheren Komponenten AlertDialog und ConfirmationDialog umbenannt) – Alert, Confirmation und Dialog sind alle im androidx.wear.compose.material.dialog-Paket. „Warnmeldung“ und „Bestätigung“ können als Navigationsziele verwendet werden. Außerdem wurde bei Bedarf ColumnScope zu den Parametern für Benachrichtigungen und Bestätigung hinzugefügt. (Ia9014)
Wir haben „onSurfaceVariant2“ aus „Compose for Wear OS Material Design Colors“ entfernt und „Verwendungen in der Mediathek“ durch „onSurfaceVariant“ ersetzt. (ICD592)
Es wurde eine Methode hinzugefügt, mit der eine Option im PickerState programmatisch ausgewählt werden kann. Die ursprünglich ausgewählte Option kann jetzt auch beim Erstellen einer PickerState angegeben werden. (I92bdf)
Wir haben Unterstützung für die Anpassung des Interaktionsverhaltens von ScalingLazyColumn hinzugefügt. (I1ad2e, b/208842968)
NavController.currentBackStackEntryAsState() wurde der Wear.Compose.Navigation-Bibliothek hinzugefügt. (If9028, b/212739653)
Modifier.onRotaryScrollEvent() und Modifier.onPreRotaryScrollEvent() für Wear-Geräte mit drehbarer Seitentaste wurden hinzugefügt.(I18bf5, b/210748686)
Version 1.0.0-alpha14
12. Januar 2022
androidx.wear.compose:compose-foundation:1.0.0-alpha14, androidx.wear.compose:compose-material:1.0.0-alpha14 und androidx.wear.compose:compose-navigation:1.0.0-alpha14 wurden veröffentlicht. Version 1.0.0-alpha14 enthält diese Commits.
Neue Funktionen
Wir haben ScalingLazyListState eine Reihe von Methoden hinzugefügt, mit denen Entwickler das Scrollen zu bestimmten Listenelementen steuern und auch den anfänglichen Listeneintrag und den Versatz festlegen können.
Im Rahmen dieser Änderung haben wir auch die ScalingLazyList so geändert, dass sie um den Mittelpunkt des Darstellungsbereichs der ScalingLazyList und nicht um den Anfang des Darstellungsbereichs herum ausgerichtet ist.
Dem ScalingLazyList wurde die neue Eigenschaft anchorType: ScalingLazyListAnchorType = ScalingLazyListAnchorType.ItemCenter hinzugefügt, mit der gesteuert werden kann, ob die Mitte (ScalingLazyListAnchorType.ItemCenter) oder Edge (ScalingLazyListAnchorType.ItemStart) an der Mittellinie des Darstellungsbereichs ausgerichtet werden soll.
Aus diesem Grund haben sich ScalingLazyListItemInfo.offset und ScalingLazyListItemInfo.adjustedOffset geändert. Sie spiegeln jetzt den Versatz des Elements in Bezug auf die Position des Listenelements und den anchorType der Liste wider. Beispiel: Bei einem ScalingLazyColumn mit dem anchorType-Wert ItemCenter und einem Listenelement, das mit seiner Mitte in der Mitte des Darstellungsbereichs positioniert ist, wäre der Versatz 0.
Die neuen Methoden sind scrollTo, animatedScrollTo, centerItemIndex und centerItemOffset.
(I61b61)
Wir haben einen Handler für die Zurück-Schaltfläche zu SwipeDismissableNavHost hinzugefügt, sodass durch Drücken von „Zurück“ zur vorherigen Ebene in der Navigationshierarchie gewechselt wird. (I5b086, b/210205624)
Version 1.0.0-alpha13
15. Dezember 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha13, androidx.wear.compose:compose-material:1.0.0-alpha13 und androidx.wear.compose:compose-navigation:1.0.0-alpha13 wurden veröffentlicht. Version 1.0.0-alpha13 enthält diese Commits.
API-Änderungen
Wir haben RangeIcons intern gemacht (intern referenziert von InlineSlider und Stepper). (I927ec)
Fehlerkorrekturen
Es wurde ein Problem behoben, bei dem SwipeDismissableNavHost der Hierarchie „Compose“ ein Ziel hinzugefügt hat, bevor es den Lebenszyklusstatus „CREATED“ erreicht hat, was zu einer IllegalStateException führte. Diese Korrektur war eine Voraussetzung, um die Abhängigkeit von navigation-compose auf 2.4.0-beta02 und darüber hinaus zu aktualisieren. (I40a2b, b/207328687)
Es wurde eine Drawables-Enum-Klasse hinzugefügt, um Drawable-Ressourcen in der Wear Compose-Bibliothek abzurufen, sodass eine Reflexion nicht mehr erforderlich ist. Dadurch wird ein Fehler behoben, bei dem Mediathek-Drawables bei minifyEnabled=true oder shrinkResources=true entfernt wurden.
(Ib2a98)
Tests für Stepper in Wear Compose hinzugefügt (I2d03a)
Beispiele für SwipeDismissableNavHost in der Wear Compose-Navigation wurden hinzugefügt. (I85f06)
Version 1.0.0-alpha12
1. Dezember 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha12, androidx.wear.compose:compose-material:1.0.0-alpha12 und androidx.wear.compose:compose-navigation:1.0.0-alpha12 wurden veröffentlicht. Version 1.0.0-alpha12 enthält diese Commits.
Neue Funktionen
Wir haben eine Stepper-Komponente hinzugefügt, mit der Nutzende eine Auswahl aus einem Wertebereich treffen können. Stepper ist ein Vollbild-Steuerelement mit Schaltflächen zum Erhöhen und Verringern oben und unten sowie einem Slot in der Mitte (erwartet, dass entweder ein Chip oder ein Text angezeigt wird). Die Symbole der Schaltflächen können bei Bedarf angepasst werden. (I625fe)
Wir haben zwei neue zusammensetzbare Funktionen für die Anzeige von Dialogfeldern hinzugefügt:
AlertDialog wartet auf eine Antwort des Nutzers und zeigt einen Titel, ein Symbol, eine Nachricht und entweder a) zwei Schaltflächen für einfache positive/negative Entscheidungen oder b) vertikal gestapelte Chips oder Ein-/Aus-Chips für flexiblere Optionen an.
ConfirmationDialog zeigt eine Bestätigung mit einem Zeitlimit an. Dieses einfache Dialogfeld hat Plätze für einen Titel und ein (animiertes) Symbol. (Ic2cf8)
API-Änderungen
Fügen Sie den vorgeschlagenen Werten für die Dialogdauer Einheiten (Millis) hinzu. (I09b48)
Version 1.0.0-alpha11
17. November 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha11, androidx.wear.compose:compose-material:1.0.0-alpha11 und androidx.wear.compose:compose-navigation:1.0.0-alpha11 wurden veröffentlicht. Version 1.0.0-alpha11 enthält diese Commits.
Neue Funktionen
Wir haben eine Auswahlkomponente hinzugefügt, mit der Nutzer ein Element aus einer scrollbaren Liste auswählen können. Standardmäßig wird die Liste der auswählbaren Elemente "unendlich" wiederholt in beide Richtungen, um den Eindruck eines rotierenden Zylinders von der Seite zu vermitteln. In späteren Versionen werden zwei Funktionen hinzugefügt: das Andocken an einen Wert nach einem Wischen oder Ziehen; Hinzufügen einer Funktion zu PickerState, um zum aktuellen Wert zu gelangen/zum aktuellen Wert zu scrollen
(I6461b)
API-Änderungen
Ein ScalingLazyItemScope und einige neue Modifikatoren fillParentMaxSize/fillParentMaxWidth/fillParentMaxHeight wurden hinzugefügt, um zu ermöglichen, dass die Größe von Listenelementen an die Größe des übergeordneten Containers angepasst wird. Für Elemente kann festgelegt werden, dass sie die gesamte Größe oder einen Teil der Größe des übergeordneten Elements ausfüllen. Dadurch werden Funktionen angezeigt, die bereits in der LazyRow/Column (I4612f) verfügbar sind.
ScalingLazyColumn wird jetzt unterstützt, damit Elemente einen Schlüssel haben können. Außerdem wurden Convenience-Methoden hinzugefügt, mit denen Elemente aus Arrays und Listen hinzugefügt werden können. (IC1f89)
androidx.wear.compose:compose-foundation:1.0.0-alpha10, androidx.wear.compose:compose-material:1.0.0-alpha10 und androidx.wear.compose:compose-navigation:1.0.0-alpha10 wurden veröffentlicht. Version 1.0.0-alpha10 enthält diese Commits.
Neue Funktionen
Es wurde ein InlineSlider für Wear Compose hinzugefügt. Mit InlineSlider können Nutzer einen Wertebereich auswählen. Der Auswahlbereich wird als Balken zwischen den Mindest- und Höchstwerten des Bereichs angezeigt, aus dem Nutzer einen einzelnen Wert auswählen können. (If0148)
Sehen Sie sich das neue Schreiben für WearOS Codelab an.
API-Änderungen
Der Macro-Benchmark hat jetzt einen minSdkVersion von 23. (If2655)
Fehlerkorrekturen
Umgang mit Umstellungen aktualisieren in
SwipeDismissableNavHost in a SideEffect (I04994, b/202863359)
Umgang mit Umstellungen aktualisieren in
SwipeDismissableNavHost (I1cbe0, b/202863359)
Version 1.0.0-alpha09
27. Oktober 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha09, androidx.wear.compose:compose-material:1.0.0-alpha09 und androidx.wear.compose:compose-navigation:1.0.0-alpha09 wurden veröffentlicht. Version 1.0.0-alpha09 enthält diese Commits.
Neue Funktionen
Wir haben die Entwicklervorschau der Funktion „Compose“ für Wear OS eingeführt. In unserem Blogpost werden die wichtigsten zusammensetzbaren Funktionen vorgestellt und Links zu weiteren Ressourcen für den Einstieg veröffentlicht.
API-Änderungen
Entwickler können jetzt alle Farben des Farbdesigns von Wear Material Design anpassen. (I4759b, b/199754668)
Fehlerkorrekturen
SwipeToDismissBox-Beispiele hinzugefügt, die den Status beibehalten (Ibaffe)
Es wurden Links zu developer.android.com-Leitfäden von KDocs für CurvedText, TimeText und
SwipeToSchließenBox aus. (I399d4)
SwipeDismissableNavHost löst jetzt aus, wenn kein aktuelles Ziel vorhanden ist (zeigt an, dass
NavGraph wurde nicht mit der Funktion wear.compose.navigation.composable entwickelt.
Dienstprogramm) (I91403)
Zusätzliche Dokumentation und Beispiele für die Verwendung der Zeitquelle in TimeText (I4f6f0) wurden hinzugefügt.
Version 1.0.0-alpha08
13. Oktober 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha08, androidx.wear.compose:compose-material:1.0.0-alpha08 und androidx.wear.compose:compose-navigation:1.0.0-alpha08 wurden veröffentlicht. Version 1.0.0-alpha08 enthält diese Commits.
API-Änderungen
Wir haben die Properties „AppCard“ und „TitleCard“ body in „content“ umbenannt und an das Ende der Property-Liste verschoben, damit sie als nachgestelltes Lambda angegeben werden können. bodyColor wurde auch in contentColor umbenannt, um die Konsistenz mit den neuen Namen der Anzeigenflächen zu gewährleisten. (I57e78)
Fehlerkorrekturen
Links zu developer.android.com hinzugefügt
Anleitungen von KDocs zu Schaltflächen,
Karten, Chips, Designs
für die Positionsangabe und die Skalierung
von Lazy Column-Komponenten. (I22428)
Das Problem mit Wear OS SwipeToDismissBox wurde behoben, wenn das Wischen manchmal nicht funktionierte. (I9387e)
MicroBenchmark-Leistungstests wurden hinzugefügt für
Card, Chip, SwitchChip, TimeText und ScalingLazyColumn. (If2fe9)
Version 1.0.0-alpha07
29. September 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha07, androidx.wear.compose:compose-material:1.0.0-alpha07 und androidx.wear.compose:compose-navigation:1.0.0-alpha07 wurden veröffentlicht. Version 1.0.0-alpha07 enthält diese Commits.
Neue Funktionen
Es wurde eine CurvedText-Komponente in Material hinzugefügt. Diese Komponente ermöglicht es Entwicklern, auf einfache Weise gekrümmten Text zu schreiben, der der Krümmung eines Kreises folgt (normalerweise am Rand eines runden Bildschirms).
(I19593)
API-Änderungen
Es wurden Tests für TimeText hinzugefügt (Idfead).
Wandelt ArcPaddingValues in eine Schnittstelle um. (Iecd4c)
Animation zu „SwipeToDismissBox“ hinzugefügt (I9ad1b)
Der Parameter hasBackground wurde zu SwipeToDismissBox hinzugefügt
damit die Wischgeste deaktiviert werden kann,
keine Hintergrundinhalte vorhanden sind. (I313d8)
rememberNavController() nimmt jetzt eine optionale
Gruppe von Navigator Instanzen, die dem
NavController zurückgegeben, um eine bessere Unterstützung zu ermöglichen (optional)
Navigatoren wie die von
Navigation für Begleitpersonen. (I4619e)
Verweis auf NamedNavArgument von
Navigation-common und entfernen Text aus
wear.compose.navigation aufrufen. (I43af6)
Fehlerkorrekturen
Fehler beim CurvedRow-Test-Test auf kleineren Geräten behoben. (If7941)
Das mögliche Flackern auf CurvedRow bei Aktualisierung des Inhalts wurde behoben.
und sorgt dafür, dass die gebogene Zeile neu gemessen wird (Ie4e06).
ChipDefaults.degreeBackgroundChipColors() wurde entsprechend den Änderungen an den UX-Spezifikationen aktualisiert. Der Farbverlauf beginnt jetzt mit MaterialTheme.colors.primary mit alpha 32,5% und endet mit MaterialTheme.colors.surface mit Alpha bei 0% auf einem Hintergrund von MaterialTheme.colors.surface mit 75% Alpha. (ID1548)
Wir haben die Farben für SwitchChips im ausgewählten Zustand aktualisiert, damit sie den neuesten UX-Spezifikationen für Wear Material Design entsprechen. Bei ausgewählten Umschaltchips haben sie jetzt einen Farbverlaufshintergrund: MaterialTheme.color.surface @ 0% Alpha, oben links, MaterialTheme.color.primary @ 32% Alpha, unten rechts, auf einem Hintergrund von MaterialTheme.color.surface @ 75% Alpha. Dies führt zu einem feineren Unterschied zwischen aktiviert und deaktiviert für den umgeschalteten 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 Anwendung auf oberster Ebene hinzugefügt, die eine Struktur zur Handhabung von PositionIndicators (wie Scroll oder Volume) bietet, einen Bereich oben auf dem Bildschirm zur Anzeige der Uhrzeit und des Anwendungsstatus sowie eine Vignette, mit der der obere und untere Rand des Bildschirms für scrollbare Inhalte unkenntlich gemacht werden kann. Der Hauptbereich des Scaffold ist der Bereich, in dem die Anwendungsinhalte platziert werden. (I5e0bf)
TimeText-Implementierung für Wear Compose wurde hinzugefügt (I5654c).
Navigationsbibliothek für Wear Compose
Wir haben die erste Version der Wear Compose-Navigationsbibliothek hinzugefügt, die eine Integration zwischen den Wear Compose- und der Androidx-Navigationsbibliothek ermöglicht. Sie bietet eine einfache Möglichkeit, zwischen @Composable-Funktionen als Ziele in Ihrer Anwendung zu wechseln.
Diese erste Version bietet folgende Vorteile:
Eine zusammensetzbare Funktion für SwipeDismissableNavHost, die ein Navigationsdiagramm hostet und mit Wischgesten eine Rückwärtsnavigation ermöglicht
Erweiterung „NavGraphBuilder.composable“ zur Unterstützung beim Erstellen von Navigationsdiagrammen
rememberSwipeDismissableNavController(), um den Windenstatus zuzulassen
Beispielanwendung, bei der wir zwei Bildschirme erstellen und zwischen ihnen wechseln:
Wear Compose Navigation ist als separate Bibliothek gepackt, sodass einfache WearCompose-Anwendungen, die eine eigene handgerollte Navigation implementieren, nicht auf die Androidx-Navigationsbibliothek angewiesen sind.
API-Änderungen
SwipeDismissableNavHost wurde zur Unterstützung aktualisiert
rememberSaveable, indem Sie die Schlüsselidentität für Hintergrund und Inhalt festlegen (I746fd)
Wir haben einen PositionIndicator-Adapter hinzugefügt, der LazyListState verarbeiten kann (I21b88).
„SwipeToDismissBox“ wurde aktualisiert, um „merkSaveable“ zu unterstützen (Ie728b)
Wir haben die Unterstützung umgekehrterLayout für die ScalingLazyColumn hinzugefügt. So können Sie die Scrollrichtung und das Layout umkehren (I9e2fc).
performGesture und GestureScope wurden eingestellt, die Folgendes enthalten:
wurde durch performTouchInput und TouchInjectionScope ersetzt. (Ia5f3f, b/190493367)
Wir haben VignetteValue in VignettePosition umbenannt und VignetteValue.Beide in VignettePosition.TopAndBottom umbenannt. (I57ad7)
Wir haben ScalingLazyColumnState in ScalingLazyListState, „ScalingLazyColumnItemInfo“ in ScalingLazyListItemInfo, „ScalingLazyColumnLayoutInfo“ in ScalingLazyListLayoutInfo und „ScalingLazyColumnScope“ in ScalingLazyListScope umbenannt, für den Fall, dass wir künftig eine ScalingLazyRow-Implementierung hinzufügen möchten. (I22734)
Fehlerkorrekturen
Die CompactChip-Dokumentation wurde aktualisiert, um zu beschreiben, was passiert, wenn weder ein Symbol noch ein Label angegeben wurde. (I4ba88)
Wir haben einige Anpassungen an den Komponenten der Wear-Karte vorgenommen. (I6b3d0)
<ph type="x-smartling-placeholder"></ph>
Der Abstand zwischen Titel und Text wurde von 8 dp auf 2 dp reduziert.
Die Schriftart der Kopfzeile der Titelkarte wurde von "body" in "title3" geändert.
Der Hintergrundverlauf der Karte wurde geändert, um den Hintergrund dunkler zu machen.
Version 1.0.0-alpha05
1. September 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha05 und androidx.wear.compose:compose-material:1.0.0-alpha05 wurden veröffentlicht. Version 1.0.0-alpha05 enthält diese Commits.
ScalingLazyColumnState implementiert jetzt die ScrollableState-Schnittstelle, die Entwicklern programmatischen Zugriff zum Scrollen der Komponente bietet. (I47dbc)
Fehlerkorrekturen
Wir haben den Abstand zwischen Symbol und Text im Chip und mit umgeschaltetem Chip verkleinert, um sie an die Aktualisierungen der UX-Spezifikationen anzupassen. (I83802)
Version 1.0.0-alpha04
18. August 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha04 und androidx.wear.compose:compose-material:1.0.0-alpha04 wurden veröffentlicht. Version 1.0.0-alpha04 enthält diese Commits.
Neue Funktionen
Es wurden eine SwipeToDismissBox und ein Swipe-Modifikator hinzugefügt, mit dem
unterstützen eine Wischgeste zum Schließen von links nach rechts.
Obwohl unabhängig von Navigationskomponenten
wird erwartet, dass dies zum Verlassen eines Bildschirms
und Navigieren zu einem anderen verwendet wird. Hinzugefügt
Integrationstests zur Demonstration der Wischgeste zum Schließen. (I7bbaa)
Wir haben die Schnittstellen ScalingLazyColumnItemInfo und ScalingLazyColumnLayoutInfo zur Klasse „ScalingLazyColumnState“ hinzugefügt, damit Entwickler die tatsächlichen Positionen und Größen von Elementen in der ScalingLazyColumn sehen können, nachdem die Skalierung angewendet wurde. Wir haben auch einen Fehler bei der Berechnung der Skalierung bei der Einstellung „Oben“ behoben. wird auf die ScalingLazyColumn angewendet. (I27c07)
API-Änderungen
Klasse „CurvedTextStyle“ hinzufügen, um den Stil des geschwungenen Textes festzulegen
Optionen. Ähnlich wie TextStyle, unterstützt jetzt aber nur Farbe, fontSize und Hintergrund. Weitere Stiloptionen werden in Zukunft hinzugefügt. (I96ac3)
Wir haben die Schnittstellen ScalingLazyColumnItemInfo und ScalingLazyColumnLayoutInfo zur Klasse „ScalingLazyColumnState“ hinzugefügt, damit Entwickler die tatsächlichen Positionen und Größen von Elementen in der ScalingLazyColumn sehen können, nachdem die Skalierung angewendet wurde. Wir haben auch einen Fehler bei der Berechnung der Skalierung bei der Einstellung „Oben“ behoben. wird auf die ScalingLazyColumn angewendet. (I27c07)
@ExperimentalWearMaterialApi wurde zu SwipeDismissTarget-Enum hinzugefügt, das Teil der SwipeToDismissBox API ist. (I48b5e)
Fehlerkorrekturen
Testmaterial für SwipeToDismissBox hinzugefügt (I9febc)
Version 1.0.0-alpha03
4. August 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha03 und androidx.wear.compose:compose-material:1.0.0-alpha03 wurden veröffentlicht. Version 1.0.0-alpha03 enthält diese Commits.
API-Änderungen
CurvedText-Komponente hinzugefügt, mit der Entwickler auf einfache Weise Text schreiben können,
Die Krümmung als Kreis (normalerweise am Rand eines runden Bildschirms) (Id1267)
Wir haben CardDefaults.imageBackgroundPainter() in CardDefaults.imageWithScrimBackgroundPainter() umbenannt, um deutlich zu machen, dass das Hintergrundbild mit einem Gitter darüber gezeichnet ist. (I53206)
Hinzufügen der ScalingLazyColumn-Komponente, die eine Listenkomponente für Wear-Material bereitstellt, die eine Fischaugenansicht ermöglicht, bei der der Listeninhalt verkleinert wird und transparent wird, wenn er zum Rand der Komponente hin skaliert wird. (I7070c)
Fehlerkorrekturen
Wir haben die Standardfarbe der appName-Inhalte auf der AppCard als Reaktion auf ein Update der UX-Spezifikationen geändert. Die Standardfarbe für „appName“ ist jetzt MaterialTheme.colors.onSurfaceVariant. Außerdem wurde eine fehlende Parameterdokumentbeschreibung für die Titelfläche hinzugefügt. (Ic4ad1)
Version 1.0.0-alpha02
21. Juli 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha02 und androidx.wear.compose:compose-material:1.0.0-alpha02 wurden veröffentlicht. Version 1.0.0-alpha02 enthält diese Commits.
Neue Funktionen
Die neue Klasse CurvedRow wurde hinzugefügt, um zusammensetzbare Funktionen in einem Bogen darzustellen (I29941).
Es wurde ein neuer Kartentyp für die Verwendung in Apps hinzugefügt (TitleCard). Außerdem können Karten als Hintergrund verwendet werden, um den Inhalt von Karten hervorzuheben (I53b0f).
API-Änderungen
Unterstützung für die radiale Ausrichtung auf CurvedRow (ähnlich wie die
vertikale Ausrichtung in einer Zeile) (Id9de5)
Neue Klasse CurvedRow zu angeordneten zusammensetzbaren Funktionen in einem Bogen hinzufügen (I29941)
Es wurde ein neuer Kartentyp für die Verwendung in Apps hinzugefügt (TitleCard). Außerdem können Karten als Hintergrund verwendet werden, um den Inhalt von Karten hervorzuheben (I53b0f).
Neues Symbol für Ein/Aus-Schaltfläche (Kästchen, Schalter und Optionsfelder) zu „UmschaltChipDefaults“, um Entwicklern die Konfiguration von „UmschaltChip“ und „SplitToggleChips“ zu erleichtern (I7b639)
Der Abstand für Start- und Endinhalte für Chips wurde aktualisiert: Dieser Wert beträgt konstant 14 dp, unabhängig davon, ob auf dem Chip ein Symbol vorhanden ist oder nicht (zuvor 12 dp, wenn ein Symbol vorhanden war, und 14 dp, wenn nicht). (I34c86)
Wear Compose-Abhängigkeiten mit Compose 1.0.0-rc01 verknüpfen. (Ie6bc9)
Die Übergabe von Hintergrundbildern in „Karten und Chips“ wurde so geändert, dass das Bild zugeschnitten und nicht gestreckt wird, um die Proportionen des Bildes beizubehalten. (I29b41)
Es wurden weitere Demos und Integrationstests für die Schaltfläche und die Ein/Aus-Schaltfläche hinzugefügt. (5e27ed2)
Es wurden weitere Chiptests hinzugefügt, um die Inhaltsfarben für „imageBackgroundChips“ abzudecken (Ia9183).
Version 1.0.0-alpha01
1. Juli 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha01 und androidx.wear.compose:compose-material:1.0.0-alpha01 wurden veröffentlicht. Version 1.0.0-alpha01 enthält diese Commits.
Neue Funktionen
Wear Compose ist eine auf Kotlin basierende Bibliothek, die Wear Material Design unterstützt, eine Erweiterung von Material Design für Wear OS-Wearables. Diese erste Alphaversion enthält frühe, funktionale Implementierungen des folgenden Elements:
Materialdesign: Konfiguriert die Farben, Typografie und Formen in den Komponenten dieser Bibliothek einheitlich.
Chip, CompactChip – Chips haben die Form eines Stadions und es gibt verschiedene Varianten für Symbol-, Label- und sekundäre Labelinhalte.
– SwitchChip, SplitToggleChip – eine spezielle Art von Chip mit einem Slot für ein zweistufiges Ein/Aus-Symbol, z. B. ein Optionsfeld oder Kästchen. Darüber hinaus hat der SplitToggleChip zwei antippbare Bereiche, einen anklickbaren und einen ein-/ausschaltbaren Bereich.
Schaltfläche, CompactButton – runde Schaltfläche mit einer einzelnen Inhaltsfläche für ein Symbol oder minimalen Text (maximal 3 Zeichen).
Ein/Aus-Schaltfläche: Eine Schaltfläche zum Ein- oder Ausschalten einer Aktion mit nur einem Platz für ein Symbol oder minimalen Text (maximal 3 Zeichen).
Karte, AppCard – rechteckige Form mit abgerundeten Ecken. Platz für Inhalte wie App-Symbol, Zeit, Titel und Textkörper.
In zukünftigen Versionen wird das Widget-Set um Unterstützung für Auswahlelemente, Schieberegler, Listen, Seitenindikatoren, Dialogfelder, Scroll-RSB-Indikatoren, Toasts und mehr in Wear Material Design erweitert.
Außerdem werden andere Wearable-spezifische Funktionen wie gebogene Layouts und Texte sowie ein Gerüst unterstützt, um Entwicklern die Erstellung von Wearable-Apps/-Overlays zu erleichtern.
Wear Compose Material wurde nach den gleichen Prinzipien entwickelt wie das Compose-Material, ist jedoch auf Wearables ausgerichtet. Beim Erstellen eines Wearable-Geräts sollte die Wear Compose Material-Bibliothek anstelle der Compose Material-Bibliothek verwendet werden.
Die beiden „Material“-Bibliotheken sollten als sich gegenseitig ausschließen und nicht in derselben App kombiniert werden. Wenn Entwickler die Compose Material-Bibliothek in ihre Abhängigkeiten einbinden, würde Folgendes vorschlagen: a) fehlende Komponenten in der Wear Compose Material-Bibliothek, teilen Sie uns bitte mit, was Sie benötigen, oder b) verwenden Sie eine Komponente, die wir nicht für die Verwendung auf einem Wearable-Gerät empfehlen.
Alle Inhalte und Codebeispiele auf dieser Seite unterliegen den Lizenzen wie im Abschnitt Inhaltslizenz beschrieben. Java und OpenJDK sind Marken oder eingetragene Marken von Oracle und/oder seinen Tochtergesellschaften.