Wear Compose Material 3
| Ultimo aggiornamento | Release stabile | Candidato per la release | Release beta | Release alpha |
|---|---|---|---|---|
| 27 agosto 2025 | 1.5.0 | - | - | - |
Dichiara le dipendenze
Per aggiungere una dipendenza da Wear, devi aggiungere il repository Maven di Google al tuo progetto. Per saperne di più, consulta il repository Maven di Google.
Aggiungi le dipendenze per gli artefatti necessari nel file build.gradle per
la tua app o il tuo modulo:
Alla moda
dependencies { implementation "androidx.wear.compose:compose-foundation:1.5.0" // For Wear Material Design UX guidelines and specifications implementation "androidx.wear.compose:compose-material3:1.5.0" // For integration between Wear Compose and Androidx Navigation libraries implementation "androidx.wear.compose:compose-navigation:1.5.0" // For Wear preview annotations implementation("androidx.wear.compose:compose-ui-tooling:1.5.0") // NOTE: DO NOT INCLUDE dependencies on androidx.wear.compose:compose-material // or androidx.compose.material:material. // androidx.wear.compose:compose-material3 is designed as a replacement, // not an addition, to both of these other libraries. // If there are features from that you feel are missing from // androidx.wear.compose:compose-material3, please raise a bug to let us know. }
Kotlin
dependencies { implementation("androidx.wear.compose:compose-foundation:1.5.0") // For Wear Material Design UX guidelines and specifications implementation("androidx.wear.compose:compose-material3:1.5.0") // For integration between Wear Compose and Androidx Navigation libraries implementation("androidx.wear.compose:compose-navigation:1.5.0") // For Wear preview annotations implementation("androidx.wear.compose:compose-ui-tooling:1.5.0") // NOTE: DO NOT INCLUDE dependencies on androidx.wear.compose:compose-material // or androidx.compose.material:material. // androidx.wear.compose:compose-material3 is designed as a replacement, // not an addition, to both of these other libraries. // If there are features from that you feel are missing from // androidx.wear.compose:compose-material3, please raise a bug to let us know. }
Per saperne di più sulle dipendenze, consulta Aggiungi dipendenze di build.
Feedback
Il tuo feedback ci aiuta a migliorare Jetpack. Facci sapere se riscontri nuovi problemi o hai idee per migliorare questa libreria. Prima di segnalare un nuovo problema, dai un'occhiata ai problemi esistenti in questa raccolta. Puoi aggiungere il tuo voto a un problema esistente facendo clic sul pulsante a forma di stella.
Per ulteriori informazioni, consulta la documentazione di Issue Tracker.
Wear Compose Material3 versione 1.5
Versione 1.5.0
27 agosto 2025
androidx.wear.compose:compose-*:1.5.0 viene rilasciata. La versione 1.5.0 contiene questi commit.
Modifiche importanti dalla versione 1.4.0
Prima release della libreria Wear Compose Material 3, che supporta il nuovo sistema di progettazione Material 3 Expressive. Questa release include:
MaterialThemeaggiornato e temi di colore dinamici.- Nuovi componenti
AppScaffold, ScreenScaffold,HorizontalPagerScaffoldeVerticalPagerScaffoldper definire la struttura della schermata e coordinare le animazioniScrollIndicator,TimeText,HorizontalPageIndicatoreVerticalPageIndicator. - Trasformazione delle forme
IconButton,TextButton,IconToggleButtoneTextToggleButton, con variazioni che si animano quando vengono premute o selezionate. EdgeButton, che ha una forma speciale progettata per la parte inferiore dello schermo.ButtonGroupimplementa un gruppo espressivo di pulsanti, in una riga che cambia forma quando viene toccata.AlertDialogeConfirmationDialogcon variazioni per contenuti di dialogo aggiuntivi.- componenti
TimePickereDatePicker. - Gli indicatori di avanzamento includono
CircularProgressIndicator(con variante segmentata),ArcProgressIndicatoreLinearProgressIndicator.
Inoltre, Wear Compose Foundation 1.5.0 include quanto segue:
TransformingLazyColumn, un elenco a scorrimento verticale pigro che supporta le animazioni di scalabilità e morphing.- Supporto della paginazione in Wear Compose Foundation con
HorizontalPagereVerticalPager. - Gruppi di messa a fuoco gerarchici: utilizzati per annotare i componenti combinabili in un'applicazione per tenere traccia della parte attiva della composizione e coordinare la messa a fuoco.
Scopri di più su Material 3 Expressive per Wear OS.
Versione 1.5.0-rc02
13 agosto 2025
androidx.wear.compose:compose-*:1.5.0-rc02 viene rilasciata. La versione 1.5.0-rc02 contiene questi commit.
Correzioni di bug
- È stato corretto un bug in
TimePickerin cui le stringhe lunghe e internazionalizzate per il periodo (AM/PM) potevano interrompere il layout. (I0fa81)
Versione 1.5.0-rc01
30 luglio 2025
androidx.wear.compose:compose-*:1.5.0-rc01 viene rilasciata. La versione 1.5.0-rc01 contiene questi commit.
Correzioni di bug
TimePickerora è completamente basato sulle impostazioni internazionali dell'utente e utilizzaDateFormat.getBestDateTimePatternper determinare l'ordine e i contenuti dei selettori e dei separatori. In questo modo viene corretta l'ordinamento errato delle colonne per le lingue CJK, vengono risolti i problemi di layout da destra a sinistra in lingue come l'arabo, vengono utilizzati separatori localizzati e vengono supportati i formati orari 0-11 e 1-12 in base alle impostazioni internazionali (I5d543).DatePickerora mostra un mese numerico in alcune impostazioni internazionali, ad esempio CJK, per evitare di combinare formati numerici e linguistici (ad es. 2025 | 07 | 02 anziché 2025 | 7月 | 02). Questa modifica applica un'euristica che controlla se le impostazioni internazionali utilizzano suffissi linguistici per l'anno e, in caso affermativo, cambia il formato del mese da testuale (MMM) a numerico (MM) per coerenza. (Ia93fe)- Lo spazio verticale per l'intestazione nel componente Selettore ora è costante, il che impedisce uno spostamento visibile quando viene selezionata una colonna del selettore, soprattutto in modalità
Talkback. (I7f8b7) - È stato corretto un bug di accessibilità causato dal disegno a schermo intero di
HorizontalPageIndicatoreVerticalPageIndicator. Gli indicatori di pagina non sono più a schermo intero e vengono posizionati automaticamente quando vengono utilizzati conHorizontalPagerScaffoldoVerticalPagerScaffold. Quando non utilizzi una struttura di impaginazione, specifica l'allineamento in modo esplicito utilizzandomodifier = Modifier.align(Alignment.BottomCenter)conHorizontalPageIndicatoremodifier =Modifier.align(Alignment.CenterEnd)conVerticalPageIndicator. (I3a0ad) - La direzione dello scorrimento in
SwipeToRevealora è coerente sia perLayoutDirectionsda sinistra a destra che da destra a sinistra. (I6d427) - È stato ripristinato il centraggio verticale
SwipeToRevealper le azioni. SehasPartiallyRevealedState = true,RevealStatedeve essere reimpostato suRevealValue.Covereddal chiamante quando si verifica lo scorrimento. (I6473d) SwipeDismissableNavHostora ritaglia correttamente i contenuti per l'API 36 e versioni successive. (Ib9a44)
Versione 1.5.0-beta06
16 luglio 2025
androidx.wear.compose:compose-*:1.5.0-beta06 viene rilasciata. La versione 1.5.0-beta06 contiene questi commit.
Correzioni di bug
- Correggi l'animazione di
EdgeButtonquandoLazyColumnoScalingLazyColumnhannoreverseLayout = true. (I46a1a) - È stato corretto un bug in
ScreenScaffoldper cui l'esplorazione al tocco non funzionava in TalkBack se veniva fornito unScrollIndicator/PageIndicator. (I6dcee) TransformingLazyColumnora consente la trasformazione personalizzata daTransformationSpecleggendo il valoreitemHeightfornito daTransformationSpecnel pittore di sfondo. (I6a599)- Transizioni di colore animate abilitate/disabilitate per
IconButton, per coerenza conIconToggleButton. (Ife10a) - È stato rimosso il bloccaggio della sezione minima in
CircularProgressIndicatorper evitare un salto evidente alla dimensione minima del punto durante l'animazione. Nell'ambito di questa modifica, il parametrotargetProgressindrawCircularProgressIndicatornon viene più utilizzato. (I33309) - Il selettore ora ha il ruolo semantico
ValuePicker, che può essere utilizzato dagli screen reader per rendere i selettori più accessibili. Il selettore ha anche aggiornato le etichette di clic di accessibilità, che distinguono tra la modifica del valore in modalità di sola lettura e la selezione del valore corrente. (I33309)
Versione 1.5.0-beta05
2 luglio 2025
androidx.wear.compose:compose-*:1.5.0-beta05 viene rilasciata. La versione 1.5.0-beta05 contiene questi commit.
Correzioni di bug
- Aggiornata la documentazione per chiarire l'utilizzo di
Modifier.edgeSwipeToDismiss(I78cb5) - È stato risolto un bug a causa del quale potevano essere visualizzati più elementi rivelati con
SwipeToRevealnegli elenchi pigri (I1d4f6) - Le forme dei contenitori in
TransformingLazyColumnora vengono scalate per evitare il troncamento dei contenuti. (I9221a) - Le etichette
TimePickereDatePickerper ora/minuto/secondo o anno/mese/giorno ora hanno una semantica di intestazione per gli screen reader (I77d8b). - Rimossa la pausa tra i loop nell'intent indeterminato
CircularProgressIndicator(Iaf0bb) - È stato corretto un bug dell'animazione in
TransformingLazyColumnquando vengono rimossi elementi. (I73034) - È stata corretta la gestione degli elementi di ancoraggio in
TransformingLazyColumnquando gli elementi vengono rimossi. (I841a8) PickerGroupora anima i selettori orizzontalmente quando il centraggio automatico è attivato e il selettore selezionato (centrato) viene modificato. (Ic82c4)
Versione 1.5.0-beta04
18 giugno 2025
androidx.wear.compose:compose-*:1.5.0-beta04 viene rilasciata. La versione 1.5.0-beta04 contiene questi commit.
Correzioni di bug
- È stato corretto un bug di layout in
TransformingLazyColumn, in cui i contenuti che rientrano nello schermo ora sono allineati correttamente dalla parte superiore dello schermo (I80115). - È stato risolto un problema relativo a
TransformingLazyColumnper cui l'elemento in basso veniva scalato in modo errato durante lo scorrimento fino alla fine di un elenco con unEdgeButton. Il progresso di scorrimento ora segue una discesa del gradiente durante il ripristino del layout. (Iea375) TransformingLazyColumnora legge l'altezza dell'elemento all'interno del pittore di sfondo, il che consente aTransformationSpecspersonalizzati di implementare la trasformazione. (I022f0)SwipeToRevealora centra verticalmente le azioni visualizzate in modo corretto. (I4419b)- È stato corretto un bug in
SwipeToRevealche impediva il corretto funzionamento con lo scorrimento per chiudere se sullo schermo erano in uso sia le visualizzazioni che la composizione. (I5dc0e) - È stato corretto un bug per cui le azioni
SwipeToRevealvenivano disegnate con un offset verticale durante lo scorrimento. (I29444) AlertDialog,ConfirmationDialog,OpenOnPhoneDialogeSwipeToRevealora arrotondano per eccesso i margini interni e le dimensioni calcolate come percentuale delle dimensioni dello schermo. (I76367)ButtonDefaults.outlinedButtonBorderora si aggiorna in seguito alle modifiche dello stato di attivazione/disattivazione size(If2ddd)- È stato corretto un bug nell'altezza di
EdgeButtonche si verificava su schermate complesse con Pager eScreenScaffold. (I946e3) - È stata corretta una race condition che poteva causare l'interruzione delle animazioni segnaposto. (I53530)
- Miglioramento delle prestazioni di
HorizontalPageIndicatoreVerticalPageIndicatorgrazie al disegno su Canvas. (Ifae1e) - È stata perfezionata la forma del pulsante Edge per rendere più fluide le transizioni tra i puntini e i cerchi che compongono il contorno. (I7721e)
- È stato corretto un bug in
LevelIndicatorche causava l'interruzione delle animazioni a causa di ricomposizioni non necessarie. (I45d08)
Versione 1.5.0-beta03
4 giugno 2025
androidx.wear.compose:compose-*:1.5.0-beta03 viene rilasciata. La versione 1.5.0-beta03 contiene questi commit.
Modifiche alle API
OpenOnPhoneDialogora annuncia solo il testo del messaggio in TalkBack e salta la semantica delle icone.OpenOnPhoneDialogDefaultssono stati aggiornati per rimuovereiconContentDescriptione il parametrocontentDescriptiondaicon(). Inoltre,ConfirmationDialogDefaultsora ha parametri di modificatore sui composableSuccessIconeFailureIcon. (Id2ae2)
Correzioni di bug
- È stato modificato l'ordine in cui viene applicato l'effetto dei parametri
SurfaceTransformation. In precedenza, le trasformazioni applicate ai componenti Wear Material3 venivano eseguite nel seguente modo: pittore di sfondo, trasformazione del contenitore, trasformazione dei contenuti. Ora, i primi due sono invertiti e applichiamo qualsiasi modificatore passato tra loro, quindi è influenzato dalle trasformazioni del contenitore. In questo modo vengono risolti casi come l'utilizzo di un effetto luccichio segnaposto con elementi in un TLC utilizzando il parametro di trasformazione. (I786cf) RevealState.Saverè stato aggiunto per essere utilizzato per ripristinare lo stato diSwipeToRevealquando l'attività o il processo viene ricreato. La funzionerememberRevealStateora utilizza questo risparmiatore per impostazione predefinita. (Ie0ecb)- I pulsanti delle azioni principali e secondarie
SwipeToRevealdevono essere impostati per impostazione predefinita suButtonDefault.Height(è stato corretto un bug che riempiva l'altezza massima per i pulsanti più alti). (Ibfba1) - Modificato
SwipeToRevealper reimpostare l'ultimo componente con cui è stata eseguita un'interazione quando viene eseguito il gesto di scorrimento verso destra. (Ia8450) SwipeToRevealè stato modificato per impostare lo statoRevealingquando la posizione finale dello scorrimento si trova tra gli ancoraggi di visualizzazione e visualizzato ed è più vicina all'ancoraggio di visualizzazione. (If4458)- Ora i contenuti di
ButtonGroupsono invertiti correttamente in un layout RTL (Ib378d) AnimatedTextora supporta la direzione del testo da destra a sinistra (I4533c)TransformingLazyColumnora ridimensiona correttamente gli elementi quando viene rimosso l'elemento in basso (Idacab)TransformingLazyColumnora esegue una sola passata di misurazione, il che migliora le prestazioni riducendo i tempi dei frame. (I501a1)
Versione 1.5.0-beta02
20 maggio 2025
androidx.wear.compose:compose-*:1.5.0-beta02 viene rilasciata. La versione 1.5.0-beta02 contiene questi commit.
Correzioni di bug
- Profili di base aggiornati per le librerie foundation, material e material3. (I53f06)
- È stato corretto un bug in
TransformingLazyColumn, in cui le dimensioni degli elementi venivano modificate quando l'elemento in basso veniva rimosso. (Idacab) - È stato corretto un bug relativo a
TransformingLazyColumn, quando l'elenco rimaneva bloccato in alto o in basso. (I49d00) OpenOnPhoneDialogin TalkBack dovrebbe annunciare il testo curvo, anziché la descrizione dei contenuti dell'icona. (I4efe8)- È stato corretto un bug in
SwipeToRevealche segnalava l'ancora errata inRevealState.currentValuequandohasPartiallyRevealedStateè impostato su false. (I9c7cf) - I pulsanti
SwipeToRevealAnnulla sono oraButtonDefaults.Heightper impostazione predefinita. (I1f6c8) - Le prestazioni di
BasicSwipeToDismissBoxsono state migliorate eliminando l'utilizzo di Canvas per disegnare i veli. (I68f2c) - È stato corretto un bug di accessibilità in Slider, in cui la percentuale annunciata non corrispondeva al valore dopo gli aggiornamenti (I91146).
- È stato corretto un bug relativo all'implementazione di
placeholderShimmer. (Iee39b - Il rendimento di
TransformingLazyColumnè stato migliorato ottimizzando il calcolo diScrollProgressdel 30%. (I4c4cb)
Versione 1.5.0-beta01
7 maggio 2025
androidx.wear.compose:compose-*:1.5.0-beta01 viene rilasciata. La versione 1.5.0-beta01 contiene questi commit.
La release 1.5.0-beta01 di Compose for Wear OS indica che questa release della libreria è completa e l'API è bloccata (tranne dove contrassegnata come sperimentale).
Wear Compose 1.5.0-beta01 include la libreria Wear Compose Material3, che supporta il nuovo sistema di progettazione dell'interfaccia utente chiamato Material 3 Expressive. Ti consigliamo di eseguire l'upgrade da Material a Material 3 per adottare il nuovo design visivo nelle app e per usufruire dei nuovi componenti come segue:
MaterialThemeper combinazioni di colori, tipografia e forme aggiornate ed estese per dare profondità e varietà ai tuoi progetti.- Temi Dynamic Color che generano automaticamente una combinazione di colori per l'app in modo che corrisponda ai colori del quadrante.
- Per impostazione predefinita, i nuovi componenti si adattano automaticamente alle dimensioni dello schermo più grandi
- Trasformazione della forma: i componenti dei pulsanti rotondi come
IconButton,TextButton,IconToggleButtoneTextToggleButtonsupportano variazioni che vengono animate quando vengono premuti o selezionati. EdgeButton: un nuovo pulsante che si adatta al bordo con una forma speciale progettata per la parte inferiore dello schermo.- Strutture: introduzione di
AppScaffoldeScreenScaffoldper definire la struttura della schermata e coordinare le animazioniScrollIndicatoreTimeText. - Pulsanti: sono supportati numerosi pulsanti a forma di stadio con contenitori flessibili a un solo slot e varianti multi-slot per pulsanti con icone ed etichette.
CheckboxButtoneSwitchButtonvengono forniti quando sono necessari pulsanti di attivazione/disattivazione, mentreRadioButtonè il pulsante di selezione disponibile (vengono fornite anche le varianti "Dividi" dei pulsanti di attivazione/disattivazione e di selezione). ButtonGroup: implementa un gruppo espressivo di pulsanti in una riga che si trasformano quando vengono toccati.- Le varianti
AlertDialogsupportano i pulsanti OK/Annulla o unEdgeButton. ConfirmationDialogè disponibile per visualizzare un messaggio con un timeout, supportando animazioni speciali per le varianti di operazione riuscita, non riuscita e apertura sullo smartphone.- Sono supportate anche le varianti dei selettori
TimePickereDatePicker, nonché i componenti Selettore ePickerGroupper creare le tue schermate del selettore. ProgressIndicators: sono supportati gli indicatori di avanzamento circolari e lineari (CircularProgressIndicatorpresenta varianti segmentate e indeterminate).- Schede: sono disponibili diverse varianti di schede, tra cui
TitleCard, che offre layout specifici per schede con titolo, ora, sottotitoli codificati o slot di contenuti.TitleCardpuò anche avere un'immagine di sfondo per rafforzare il significato delle informazioni in una scheda. - I componenti Pager
HorizontalPagerScaffold,VerticalPagerScaffoldeAnimatedPagecoordinano le animazioniHorizontalPageIndicatoreVerticalPagerIndicator.HorizontalPagereVerticalPagervengono rilasciati nella libreria Wear Compose Foundation. - Segnaposto: disegna una forma scheletrica su un componente, per le situazioni in cui non sono disponibili contenuti provvisori.
- Dispositivi di scorrimento e incrementatori: entrambi consentono agli utenti di effettuare una selezione da un intervallo di valori. I cursori sono più compatti e possono essere segmentati, mentre il componente Stepper è a schermo intero e in genere è abbinato a un
StepperLevelIndicator. SwipeToReveal: utilizzato per aggiungere azioni aggiuntive a un elemento componibile quando viene eseguito uno scorrimento da destra a sinistra.
Inoltre, Wear Compose Foundation 1.5.0-beta01 include questi nuovi componenti:
TransformingLazyColumn: un elenco a scorrimento verticale pigro che supporta le animazioni di scalabilità e morphing- Gruppi di messa a fuoco gerarchici: utilizzati per annotare i componenti combinabili in un'applicazione, per tenere traccia della parte attiva della composizione e coordinare la messa a fuoco.
- Pager: componenti
HorizontalPagereVerticalPager, basati sui componenti di Compose Foundation con miglioramenti specifici per Wear per migliorare le prestazioni e il rispetto delle linee guida di Wear OS.
Modifiche alle API
- È stata aggiornata l'API Hierarchical Focus: è stato rinominato
Modifier.hierarchicalFocusinModifier.hierarchicalFocusGrouped è stato rimosso il parametro di callback; è stato rimosso l'overload diModifier.hierarchicalFocusRequestercon un parametroFocusRequester; sono stati creati nuoviCompositionLocaleLocalScreenIsActivein modo che i componenti possano informare e controllare quale schermata è attiva. (I5ff7c). - È stato ritirato
SwipeToRevealda Wear Compose Foundation a favore delle APISwipeToRevealin Wear Compose Material e Wear Compose Material3. Sostituisci le importazioni di Wear FoundationSwipeToRevealcon le importazioni di Wear Compose Material/ Wear Compose Material3 per continuare a utilizzare le API. (Ia147d). - Le dipendenze di Wear Compose Material3
SwipeToRevealda Foundation sono state spostate nel pacchetto material3, ad esempioRevealValue,RevealDirection,RevealActionType,RevealState,rememberRevealState. Gli sviluppatori devono modificare le importazioni di queste classi e funzioni daandroidx.wear.compose.foundationaandroidx.wear.compose.material3. (I640e6). - È stata aggiornata l'API Wear Compose Material3
SwipeToRevealcome segue: sono stati aggiunti i parametriprimaryAction,onFullSwipe,secondaryAction,undoPrimaryAction,undoSecondaryActionehasPartiallyRevealedStateal composableSwipeToReveal; è stata rimossa la possibilità di personalizzarepositionalThresholdeanimationSpecdaRevealState; sono stati rimossilastActionType,revealThresholde la larghezza daRevealState; è stato modificato il costruttoreRevealStatein modo che accetti unRevealDirectionanziché gli ancoraggi; sono state rimosse le funzionicreateRevealAnchors, gli ancoraggi ebidirectionalAnchors; le funzioniSwipeToRevealScopeprimaryAction,secondaryAction,undoPrimaryActioneundoSecondaryActionsono state rinominatePrimaryActionButton,SecondaryActionButton,UndoActionButtone trasformate in funzioni composable;RevealActionTypeè stato contrassegnato come interno. (I885d0). - Ulteriore aggiornamento dell'API
SwipeToRevealcome segue: rinominatoonFullSwipeinonSwipePrimaryAction; rinominatoSwipeToRevealNonAnchoredSampleper indicare l'utilizzo del parametrohasPartiallyRevealedState; rimossoactionButtonHeight, poiché il valore predefinito è l'altezza predefinita del pulsante e l'altezza maggiore può essere impostata utilizzando un modificatore; rimossoSmallActionButtonHeightdaSwipeToRevealDefaults; reso privato il parametro value nei costruttoriRevealValueeRevealDirection. (I465ce).
Correzioni di bug
- È stata corretta la gestione di
ScreenScaffold'sEdgeButtonin modo che, dopo la rimozione di un elementoTransformingLazyColumn,EdgeButtonvenga animato in posizione. (I6d366). - Aggiornamento delle dipendenze di Wear Compose dalle librerie Compose alla versione 1.8.0. (I2ef3f).
- È stato aggiornato il movimento dell'indicatore di caricamento indeterminato
CircularProgressIndicatorin modo che non regredisca più temporaneamente. (Ieddb1). - È stato corretto un bug di
SwipeDismissableNavHost: la messa a fuoco non veniva cambiata correttamente dopo lo scorrimento indietro, causando un errore di input rotativo (per API 36+, che utilizza la navigazione predittiva). (Ieddb1). - Documentazione modificata per l'API Hierarchical Focus (Idf2ff).
- È stata aggiornata la documentazione per i pulsanti e le schede per indicare in che modo
containerPainteredisabledContainerPaintersostituisconocontainerColoredisabledContainerColor(I4a453). - È stato ripristinato una modifica a
TimeTextnella release precedente che spostavaBroadcastReceiverin un thread di lavoro, perché causava problemi per le app che gestiscono i propri thread durante la navigazione. (I34d02). - Sono stati aggiornati gli esempi di Picker per rimuovere le chiamate di memorizzazione non necessarie e utilizzare invece
rememberUpdatedStatein Picker per memorizzare l'ultima funzione lambdacontentDescription. (Icb5b1). - Gli stili di testo in
TimePickereDatePickersono stati aggiornati in modo che le modifiche al carattere non comportino più il troncamento. (I26194). ListHeadereListSubHeaderora allineano il testo al centro e all'inizio, rispettivamente. (I78339).- Sono stati aggiornati gli esempi e le demo di Foundation e Material Swipe to Reveal per annunciare le azioni di accessibilità personalizzate (le azioni personalizzate devono essere aggiunte come semantica ai contenuti, non al composable
SwipeToRevealstesso). (Ie92a3). - È stato aggiornato il valore predefinito di
MaxLinesimpostato sui contenutiEdgeButtonin base alle dimensioni: ora è 1 per le dimensioni extra small, 2 per le dimensioni small e medium e 3 per le dimensioni large. (Ie35f6). LocalReduceMotionsemplificato in modo che l'osservatore venga registrato una sola volta, per migliorare il rendimento. (Ib1979).- È stato ridotto al minimo il numero di ridisegni in
ScrollIndicatorper migliorare le prestazioni. (Ia7a67). - È stato corretto un bug in
TransformingLazyColumn, a causa del quale l'elemento visibile in alto nell'elenco non veniva scalato correttamente quando EdgeButton raggiungeva la sua altezza massima. (I30580).
Wear Compose Material3 versione 1.0
Versione 1.0.0-alpha37
23 aprile 2025
androidx.wear.compose:compose-material3:1.0.0-alpha37 viene rilasciata. La versione 1.0.0-alpha37 contiene questi commit.
Modifiche alle API
- Rimozione di
scrollTransformdalla superficie dell'API pubblica. Utilizza la combinazione dei modificatoritransformedHeightegraphicsLayerse hai bisogno della stessa funzionalità. (Ie181d) - Sostituiti i composable
ImageButtoneImageCardcon gli overloadButtoneCard/TitleCardrispettivamente.imageButtonColorsè stato rinominato inbuttonWithContainerPainterColorseimageCardColorsincardWithContainerPainterColors. Aggiunta diButtonDefaults.scrimBrusheCardDefaults.scrimBrushpubblici. I pulsantiimageBackgroundGradientStartColoreimageBackgroundGradientEndColorsono stati rinominati inscrimGradientStartColorescrimGradientEndColor.CardDefaults.ImageContentPaddingrinominato inCardDefaults.CardWithContainerPainterContentPadding(I7b8b6) PickerePickerGroupora prendonocontentDescriptioncome lambda per evitare ricomposizioni non necessarie. (I002dd)
Correzioni di bug
- È stato risolto un problema per cui la casella di controllo indeterminata
CircularProgressIndicatoroscillava durante l'animazione se la larghezza non era uguale all'altezza. (I76bfe) - È stato risolto un problema relativo al layout dei pulsanti laterali con dimensioni non valide. Ora impedisce l'aggiornamento del layout del pulsante laterale quando l'altezza è NaN. (I32b93)
- È stato aumentato l'angolo di spazzata massimo in
OpenOnPhoneDialogin modo che il testo predefinito "Controlla lo smartphone" non venga tagliato con le dimensioni del carattere più grandi. (I90af9)
Versione 1.0.0-alpha36
9 aprile 2025
androidx.wear.compose:compose-material3:1.0.0-alpha36 viene rilasciata. La versione 1.0.0-alpha36 contiene questi commit.
Modifiche alle API
ButtonDefaults.imageBackgroundButtonColorssostituito conImageButton,ButtonDefaults.imageButtonColors,ButtonDefaults.containerPaintereButtonDefaults.disabledContainerPainter. E modifiche simili per la carta. I pittori vengono rimossi daButtonColorseCardColors. (I8c6a1)- Segnaposto aggiornati per semplificare l'API. Ora forniamo due modificatori,
Modifier.placeholderShimmerper applicare un effetto luccichio a livello di componente eModifier.placeholderper applicare una maschera sopra i contenuti non caricati (Iaee7a).
Correzioni di bug
- È stato integrato l'overscroll in
ScrollIndicator. (Icfb7f) - Risolvi i problemi relativi agli sfondi vuoti e alle finestre di dialogo mancanti durante l'avvio delle finestre di dialogo Material3. (Ice597)
- Risolti problemi in
FadingExpandingLabelquando il testo si estende su più righe. (I04eb7) - È stato aggiornato il padding tra le etichette principale e secondaria sui pulsanti. (I99b7b)
ArcLargeè stato ridotto da20spa18spe la spaziatura tra le lettere suArcLargeeArcSmallè stata aggiornata.ConfirmationDialog/OpenOnPhoneDialogora utilizzano il valore predefinitoArcLargeanziché sostituirlo con18sp. (Id39a8)
Aggiornamenti delle dipendenze
- Questa libreria ora ha come target il livello del linguaggio Kotlin 2.0 e richiede KGP 2.0.0 o versioni successive. (Idb6b5)
Versione 1.0.0-alpha35
26 marzo 2025
androidx.wear.compose:compose-material3:1.0.0-alpha35 viene rilasciata. La versione 1.0.0-alpha35 contiene questi commit.
Modifiche alle API
- Il padding superiore
AlertDialogora viene ridotto per impostazione predefinita quando viene fornita un'icona, in modo da sfruttare al meglio le dimensioni dello schermo disponibili. (Ief06c) PagerScaffoldDefaults.FadeOutAnimationè stato rinominato inPagerScaffoldDefaults.FadeOutAnimationSpec. Il parametro della pagina suAnimatedPageè stato rinominato inpageIndex. (I701f2)- Aggiornamento della denominazione della suddivisione
SurfaceTransformation-applyTransformationdiTransformingLazyColumninapplyContainerTransformationeapplyContentTransformatione ridenominazione dicreateBackgroundPainterincreateContainerPainter. Ulteriori aggiornamenti della denominazione diTransformationSpeceResponsiveTransformationSpec. (I1c534) AppScaffold backgroundColorè stato rinominato incontainerColor. (I4e63f)
Correzioni di bug
- Risolto un problema in
FadingExpandingLabelper cui il testo non veniva sempre espanso correttamente. (I0e773) ArcLargeè stato ridotto da 20 sp a 18 sp e la spaziatura delle lettere suArcLargeeArcSmallè stata aggiornata.ConfirmationDialog/OpenOnPhoneDialogora utilizza il valore predefinitoArcLargeanziché sostituirlo con 18sp. (Id39a8)- È stata aggiornata l'animazione dell'intestazione per
DatePickereTimePickerin modo che l'animazione di dissolvenza in uscita e in entrata agisca come un'unica animazione con effetto molla. (I68963) - Ottimizzato
PagerScaffoldevitando la lettura dicurrentPageOffsetFractionnel componente componibileAnimatedPage. (I433ef) - Tutte le scale tipografiche sono state aggiornate in modo da avere numeri proporzionali per impostazione predefinita, in quanto questo è considerato il caso d'uso più frequente e l'impostazione predefinita su tabellare ha comportato una spaziatura eccessiva tra alcune coppie di numeri.
TimePickereDatePickercontinuano ad applicareFontFeatureSetting=tnumper i numeri tabellari. (I88929) - È stato corretto lo stato attivo iniziale dell'input RSB per
TimePickereDatePicker. (I1c773) - Aggiornamento del testo predefinito su
OpenOnPhoneDialoga "Controlla lo smartphone". (I00a3f) - Pesi aggiornati per
ArcLargeeArcMediumda 600 a 599 per risolvere un problema per cui il peso 600 viene trattato come grassetto (I2a51d) - Aggiorna le spaziature interne
SwipeToRevealtra i contenuti e i pulsanti di azione, nonché la spaziatura interna tra l'icona e il testo dei pulsanti di azione. (Ic46cb)
Versione 1.0.0-alpha34
12 marzo 2025
androidx.wear.compose:compose-material3:1.0.0-alpha34 viene rilasciata. La versione 1.0.0-alpha34 contiene questi commit.
Modifiche alle API
PagerScaffoldnon emette più un componentePager. Questo deve invece essere fornito tramite il componente componibilecontent.AnimatedPageesnapWithSpringFlingBehavioursono ora pubblici e possono essere utilizzati insieme a Wear FoundationPagerper ottenere il comportamento precedente di M3PagerScaffold. (vedi esempi aggiornati). (Ia4724)- È stato aggiornato
PagerState, rimuovendo Compose FoundationPagerStatecome classe base e aggiungendo le proprietàcurrentPage,currentPageOffsetFractionepageCount. È stata aggiornata l'interfacciaGestureInclusion, rinominando il metodo inignoreGestureStart. (I4ae07) - I parametri dell'angolo di spazzata
LevelIndicatorora sono annotati conFloatRange(0, 360)(I7e636) - Abbiamo aggiunto
CurvedModifier.clearAndSetSemanticsper fornire un mezzo per disattivare la semantica curva.CurvedTextcontinua a impostare come predefinita la descrizione dei contenuti sul testo, matimeTextCurvedTextetimeTextSeparatorora non annunciano i propri contenuti. (I4b568) - Sono stati aggiunti i parametri per il colore di sfondo e dei contenuti predefiniti a
AppScaffold. (I56652) - La gestione predefinita delle scorciatoie di
HorizontalPagerè stata rinominata inPagerDefaults.gestureInclusion. Il comportamento predefinito ora prevede di ignorare solo i gesti di scorrimento che iniziano sul bordo sinistro della prima pagina e solo quando TalkBack è disattivato. Negli altri casi, il comportamento predefinito prevede che i gesti di scorrimento non vengano ignorati dal pager, quindi non saranno disponibili per i gestori di scorrimento per chiudere. (Iee486) - È stato aggiunto un parametro
SurfaceTransformationai componenti di intestazione di pulsanti, schede ed elenchi, in modo che possano applicare trasformazioni diverse di sfondo e contenuti quando vengono utilizzati in contenitori che modificano l'aspetto degli elementi in base alla loro posizione, ad esempioTransformingLazyColumn. (Iabe3f) - Abbiamo aggiornato le proprietà "public const val" nella nostra API Wear Compose Material3 a "public val", per evitare che i valori vengano incorporati. (Ib0f32)
- È stato aggiunto il supporto per una zona di scorrimento dal bordo a
SwipeToReveal. Il comportamento predefinito di FoundationSwipeToRevealora è quello di non consentire lo scorrimento quando il gesto inizia dal bordo. Il comportamento predefinito di Material3SwipeToReveal’ora è quello di non consentire lo scorrimento quando il gesto inizia dal bordo, quandoSwipeDirectionè impostato su una sola direzione. (I32ef0) - È stato aggiunto il composable
FadingExpandingLabel, che consente di visualizzare gradualmente il testo con l'animazione riga per riga. (Ic60fa) TransformingLazyColumnora utilizzacontentPaddingvuoti per impostazione predefinita anziché posizionare il primo e l'ultimo elemento al centro. (I77ab7)- Rimozione di
SwipeToReveal'srememberRevealStatedalla libreria Wear Compose Material3. (I8c0e0)
Correzioni di bug
- Le librerie Wear Compose sono state aggiornate al compilatore Kotlin 2.0. (I2de79)
- Il supporto per
ScrollIndicatorePageIndicatornon rotondi è stato rimosso da Material 3. Il supporto dello schermo quadrato non fa più parte dei requisiti di Wear OS. Per ulteriori informazioni, consulta la guida introduttiva. (I9a852) - Il
CurvedTextStyleutilizzato inConfirmationDialogDefaultseOpenOnPhoneDialogDefaultsè stato aggiornato per utilizzare la tipografiaArcLargecon dimensioni18spe spaziatura tra le lettere1.8sp. (Ic9ced) Card,ListHeader,RadioButton,CheckboxButton,SwitchButtonnon limitano più l'altezza dei contenuti per impostazione predefinita. Se necessario, utilizzaModifier.height(IntrinsicSize.Min)per ripristinare il comportamento precedente. (I80bb8)- Abbiamo aggiornato i colori predefiniti
TimeTexteScrollIndicatorin modo da includere più tonalità di grigio, perché l'utilizzo diretto del coloreOnBackground(bianco) aveva un peso visivo eccessivo rispetto ad altri contenuti sullo schermo, come i titoli. (I8b36f) - Abbiamo ridotto il timeout per l'animazione di
TimeTexteScrollIndicatornei componenti scaffold a 2 secondi. (I52021) - Abbiamo aggiornato il movimento della finestra di dialogo in modo che la scala dello sfondo della finestra di dialogo sia sincronizzata con lo scorrimento per chiuderla. (I925a9)
- Aggiungi la demo di M3
SwipeToRevealutilizzando il modificatoreedgeSwipeToDismiss. (I02b07) - Abbiamo aggiunto un'intestazione a
DatePickereTimePickerin TalkBack in modo che l'utente sappia di dover scorrere per impostare la data/l'ora. (Id738d) AnimatedTextora segue l'impostazione di riduzione del movimento. (Ib6578)- L'ottimizzazione per l'utilizzo di
AppScaffoldper i contenuti della finestra di dialogo di visualizzazione è stata migliorata per consentire la visualizzazione di più finestre di dialogo una sopra l'altra (I1209c)
Versione 1.0.0-alpha33
26 febbraio 2025
androidx.wear.compose:compose-material3:1.0.0-alpha33 viene rilasciata. La versione 1.0.0-alpha33 contiene questi commit.
Modifiche alle API
- Abbiamo rimosso il parametro dell'etichetta da
primaryActionesecondaryActiondiSwipeToRevealScope. La semantica delle azioni personalizzate deve essere aggiunta direttamente ai contenuti del componenteSwipeToRevealdallo sviluppatore. (Ia67f3) - Abbiamo rimosso i prefissi "Button" da dimensioni, stili di testo e funzioni di colore in
IconToggleButtonDefaultseTextToggleButtonDefaults(I5471d) - Abbiamo rimosso la funzionalità sperimentale
LocalMinimumInteractiveComponentEnforcement(I4ad8a) - Abbiamo sostituito il DSL
PickerGroupScopecon un componente componibile. Di conseguenza, abbiamo rimosso il metodopickerGroupItemdaPickerGroupScopee abbiamo aggiunto@Composable PickerGroupItem, che deve essere utilizzato per aggiungere un selettore aPickerGroup. Abbiamo anche aggiornato il tipo di parametro "content" diPickerGroupa@Composable PickerGroupScope.() -> Unit. (Ic6aec) - Abbiamo aggiunto un overload
LevelIndicatorper i valori frazionari e un prefisso Stepper agli overload che includono un parametro intervallo (adatti all'uso con il componente Stepper). (If4234) - Abbiamo aggiunto
TransformingLazyColumndiTransformationSpecall'API, il che consente di definire le trasformazioni esatte che avvengono agli elementi mentre vengono scorri nella TLC. (I21856) - Abbiamo aggiornato
IconButtonShapes,IconToggleButtonShapes,TextButtonShapeseTextToggleButtonShapesin modo che siano coerenti con le classi compose/material3 (I5a081) - Abbiamo aggiunto un parametro
overscrollEffectaScalingLazyColumn,TransformingLazyColumneScreenScaffold. (I0cee8) - Abbiamo rinominato il parametro
swipeDirectioninrevealDirectioninrememberRevealState. (I7472f) - Wear Pager ora ha il proprio
PagerScopeanziché utilizzarePagerScopedi Compose. (I9195b) - Abbiamo rimosso il composable
LinearProgressIndicatorContent. UtilizzaLinearProgressIndicatordirettamente in modo che le modifiche ai valori vengano animate per impostazione predefinita. (I2c4ad) - Abbiamo rimosso il composable
CircularProgressIndicatorStatice aggiunto una funzione pubblicaDrawScopedrawCircularProgressIndicatorcon la stessa funzionalità. UtilizzaCircularProgressIndicatordirettamente in modo che le modifiche vengano animate per impostazione predefinita, ma crea il tuo elemento componibile dadrawCircularProgressIndicatorse sono necessarie animazioni personalizzate. (Ie762f) - Abbiamo riordinato i parametri in
DrawScope.drawCircularProgressIndicatorper spostare il parametrotargetProgressverso l'alto. (I8ab92) - L'API
OpenOnPhoneDialogè stata aggiornata per una maggiore chiarezza e coerenza con altre finestre di dialogo. Il parametroshowè stato rinominato invisibleecurvedTextora viene fornito dal chiamante anziché avere un valore predefinito. (Idec2d) - Abbiamo rinominato
openOnPhoneCurvedTextinopenOnPhoneDialogCurvedText(I65bdd) - Abbiamo aggiunto
ScrollIndicatorColorsper fornire colori personalizzati aScrollIndicator. (I9eb8c) - Consente di configurare il colore utilizzato per disegnare uno sfondo dietro
TimeText. (I9f5d9) - Aggiornamento delle tipografie
ArcLarge,ArcMediumeArcSmallin modo che sianoCurvedTextStyle(Iffc41) - Abbiamo rimosso
ScreenScaffoldDefaults.contentPaddingWithEdgeButton. (Ia923e) - Abbiamo aggiunto
errorDimaColorSchemeper errori ad alta priorità o azioni di emergenza come avvisi di sicurezza, overlay di dialogo non riusciti o pulsanti di interruzione. (I70998)
Correzioni di bug
- Abbiamo bloccato
wear.compose.material3alla versione 1.15.0 diandroidx.core.core(I132e9) - Abbiamo migliorato le prestazioni di Dialogo utilizzando
AppScaffoldper sovrapporre le finestre di dialogo ad altri contenuti dello schermo (I1b9a4). - Riduzione del padding verticale interno di
EdgeButton. (I1a5bb) - Abbiamo aggiunto la semantica dei pulsanti ai pulsanti del cursore. (I80cc6)
Versione 1.0.0-alpha32
29 gennaio 2025
androidx.wear.compose:compose-material3:1.0.0-alpha32 viene rilasciata. La versione 1.0.0-alpha32 contiene questi commit.
Modifiche alle API
- Su
CurvedTextStyle, abbiamo suddiviso la spaziatura tra le lettere in spaziatura tra le lettere in senso orario e spaziatura tra le lettere in senso antiorario. Questo è necessario perché le lettere in senso orario si aprono dalla linea di base, mentre le lettere in senso antiorario si chiudono (quindi è necessaria una spaziatura più ampia) (I4b848). - Abbiamo aggiornato
IconButtonShapes,IconToggleButtonShapes,TextButtonShapeseTextToggleButtonShapesper migliorare la coerenza tra le librerie Material3. Questa modifica introduce anche la memorizzazione nella cache delle forme per ridurre il numero di allocazioni. (I049fc) - Abbiamo rimosso il parametro
pressedShapeCornerSizeFractiondal metodovariantAnimatedShapeinIconToggleButtoneTextToggleButton(I58a65) - Stiamo introducendo miglioramenti al rendering del testo curvo (incluso
TimeText) che non sono compatibili con gli schermi non rotondi. Il supporto dello schermo non rotondo non fa più parte dei requisiti di Wear OS. Per maggiori informazioni, consulta la guida introduttiva. (I1cc1c) - Abbiamo aggiornato
ButtonGroupScopediButtonGroup, sostituendoButtonGroupItembasato su DSL conModifier.weight,Modifier.minWidtheModifier.enlargeOnPress. (I16c3c) - Nell'API
ButtonGroup, abbiamo aggiornato il nuovoButtonGroupScopebasato su modificatori:enlargeOnPressora si chiamaanimateWidthe accetta unInteractionSourceanziché unMutableInteractionSourceperché non è necessario modificarlo. Abbiamo anche aggiunto la costante pubblicaButtonGroupDefaults.DefaultMinWidth, la larghezza minima predefinita dei pulsanti in unButtonGroup. (Ie27ec) - Abbiamo aggiornato
ListHeaderDefaults.contentColorin modo che inizi con una lettera minuscola, in quanto è una proprietà componibile (I125a5) - Abbiamo aggiunto un parametro di descrizione dei contenuti a
SliderDefaults.DecreaseIconeSliderDefaults.IncreaseIcon, con valori predefiniti adatti (I2e1a7). - Abbiamo rinominato il parametro
spacinginPickerePickerGroupinverticalSpacing(Ib75cc) - Abbiamo rimosso
ConfirmationDialogDefaults.successTextefailureTextperché è previsto che i chiamanti diConfirmationDialogforniscano stringhe con più contesto. È stato rinominato ancheconfirmationCurvedTextinconfirmationDialogCurvedText. Infine, il parametro Dialogshowè stato rinominato in visible per coerenza con altri aggiornamenti recenti alle finestre di dialogo. (I10074) IconButtonha rinominatodisabledImageOpacityinDisabledImageOpacity. (I5f94a)
Correzioni di bug
- Abbiamo corretto un bug nell'animazione
EdgeButtonin modo che in ogni frame venga utilizzata la dimensione corretta (Id3b58). - È stato risolto un problema per cui
animateContentSizenon funzionava conButton. (Ib18a0) - Abbiamo modificato la scala tipografica Titolo grande in modo che abbia una dimensione del carattere
18dp(Ic9d52) - Abbiamo aggiornato la spaziatura e le dimensioni delle icone di
AlertDialog(Iac28c) - Abbiamo corretto le incongruenze nei punti di interruzione per schermi di grandi dimensioni (gli schermi a 225 dp e superiori sono schermi di grandi dimensioni) (I36474)
- È stato corretto un bug minore nel posizionamento dei pulsanti (I952c2).
Versione 1.0.0-alpha31
15 gennaio 2025
androidx.wear.compose:compose-material3:1.0.0-alpha31 viene rilasciata. La versione 1.0.0-alpha31 contiene questi commit.
Modifiche alle API
- Abbiamo aggiornato tutte le librerie Wear Compose alla modalità "API esplicita". (Iebf9f)
- Abbiamo aggiornato le API
ScreenScaffoldeEdgeButton, in modo che sia più facile specificare i padding dei contenuti sugli schermi che includono unEdgeButton. Nella nuova API,sizediEdgeButtonviene passato solo aEdgeButton, mentreScreenScaffoldaccetta un parametroedgeButtonSpacingper la spaziatura traEdgeButtone i contenuti dell'elenco. (I424fd) - In
DatePicker, abbiamo rinominato i parametriminDateinmaxDateeminValidDateinmaxValidDate. InDatePickerColors, abbiamo rinominato il parametroselectedPickerContentColorinactivePickerContentColoreunselectedPickerContentColorininactivePickerContentColor(Iba17b) - Abbiamo aggiornato i valori predefiniti di
ArcProgressIndicatorastrokeWidth=6dpe consigliatodiameter = 81.24%dell'altezza dello schermo (I6f248) - Abbiamo aggiornato l'API Confirmation per riflettere il suo utilizzo come finestra di dialogo. Il componente componibile ora si chiama
ConfirmationDialog, con aggiornamenti associati alla denominazione dei colori e delle classi predefinite. Abbiamo anche rinominato il parametroshowinvisibleper garantire la compatibilità con altre API di animazione Compose. Inoltre, abbiamo reso disponibiliConfirmationDialogContent,SuccessConfirmationDialogContenteFailureConfirmationDialogContentper le situazioni in cui gli sviluppatori devono personalizzare le animazioni delle finestre di dialogo di introduzione/conclusione. (Iaeb33) - Abbiamo aggiornato
CircularProgressIndicatorContentaCircularProgressIndicatorStatic(la variante non animata diCircularProgressIndicator) in modo che ora possa essere utilizzato per creareCircularProgressIndicatorcon animazioni personalizzate. (I1346f) - Abbiamo corretto l'ordine dei parametri in
ArcProgressIndicator, inserendo per primo il parametro modificatore (I4656a). - È stata migliorata l'API
SwipeToRevealper ricevere un parametro di slot di testo per le etichette delle azioni (tranne l'azione secondaria) e per rimuovere i parametri delle etichette dall'azione di annullamento (I5b3db)
Correzioni di bug
- È stato corretto un bug per cui la risposta aptica
LongPressveniva attivata più di una volta inButton,Card,IconButton,TextButton(Ia8b0f) - Modifiche all'esperienza utente di
AlertDialog: sui grandi schermi i pulsanti di conferma e chiusura sono ora più piccoli. Inoltre, lo spazio sotto i pulsanti Conferma e Ignora è maggiore. (I4f066) - Abbiamo modificato le specifiche dell'animazione dell'etichetta del pulsante di azione del componente
SwipeToReveal. (Ib87fb) - Modificato
SwipeToRevealper espandere il contenitore contemporaneamente alla visualizzazione del testo. (I44cf8) SwipeToRevealmigliorato per eseguire il feedback aptico quando lo scorrimento supera la soglia in cui viene eseguita l'azione principale. (I23efe)- Abbiamo aggiornato
SwipeToRevealper visualizzare i puntini di sospensione in caso di overflow del testo per impostazione predefinita, per le azioni principali e di annullamento. (I71f5a) - Abbiamo risolto un problema che causava tremolio nelle animazioni di
ButtonGroup. (I63f8f) - Abbiamo aggiunto la semantica del testo a
AnimatedText(I6063c) - Ora la finestra di dialogo reimposta la scalabilità dello sfondo quando viene rimossa dalla composizione (senza questa correzione, la schermata di avvio potrebbe essere rimasta in uno stato ridimensionato) (Id24ac)
- Abbiamo aggiunto un'animazione di morphing della forma ai pulsanti del componente Stepper (Id6ed3).
Versione 1.0.0-alpha30
11 dicembre 2024
androidx.wear.compose:compose-material3:1.0.0-alpha30 viene rilasciata. La versione 1.0.0-alpha30 contiene questi commit.
Modifiche alle API
- Il modificatore
scrollTransformperTransformingLazyColumnè stato refactorizzato, il che ha comportato una modifica dell'API. (I0c6dc) - Abbiamo aggiornato
IconToggleButtonShapeseTextToggleButtonShapesin modo che abbiano due parametri di forma diversi,uncheckedPressedecheckedPressed(I85dbd) - Ora le opzioni di mese/giorno non valide sono visibili in
DatePicker, con un nuovoinvalidPickerContentColor, quando utilizziminDateomaxDate. (If4541) - Abbiamo aggiornato l'API
Stepperper fornire slotincreaseIconedecreaseIcon. I contenuti per questi slot possono essere creati come di consueto dal componente componibile Icon. (Id35da) - Abbiamo aggiornato
dynamicColorSchemerimuovendo il parametro facoltativodefaultColorSchemee restituendo oraColorSchemeche accetta valori nulli. Ciò significa che il chiamante deve gestire esplicitamente il caso di fallback quando non viene fornito uno schema di colori dinamico. (I6d62e) - Abbiamo aggiornato le dimensioni delle icone in
ButtonDefaultsper l'utilizzo conCompactButton. UnCompactButtoncontenente solo un'icona deve utilizzareButtonDefaults.SmallIconSize = 24.dp, mentre unCompactButtoncontenente sia l'icona che il testo deve utilizzareButtonDefaults.ExtraSmallIconSize = 20.dp. È consigliabile cheCompactButtonesegua il wrapping dei contenuti (anziché riempire la larghezza massima) e gli esempi sono stati aggiornati per mostrare questo comportamento. (I0582c) - Abbiamo aggiunto
EdgeButtonDefaultscon le dimensioni delle icone consigliate per i quattro diversiEdgeButtonSizes. Inoltre, è stato aggiornato il layout diEdgeButtonin modo che abbia un padding inferiore leggermente più grande rispetto a quello superiore, il che migliora l'aspetto dei contenuti di tipo Icona e Testo. (Id772a) - Abbiamo aggiunto il movimento a
LinearProgressIndicatored espostoLinearProgressIndicatorContent, che fornisce i contenuti visivi senza animazioni. (Idee99) - Abbiamo aggiunto un nuovo componente componibile
CircularProgressIndicatorContentper visualizzare i contenuti visivi diCircularProgressIndicatorsenza animazioni. (Ie33d4) TransformingLazyColumnora fornisce la composizione localeLocalTransformingLazyColumnItemScopecheCard,ButtoneListHeaderora utilizzano per trasformarsi automaticamente quando vengono inseriti all'interno di unTransformingLazyColumn. I chiamanti possono disattivare la trasformazione automatica utilizzando il nuovo wrapperTransformExclusion. (I1652f)- Abbiamo aggiornato il tipo di
ButtonDefaults.shapeaRoundedCornerShape(Iccdf2)
Correzioni di bug
- Abbiamo corretto un bug per rispettare l'alpha esistente sullo sfondo per
TimeText(I1eb60) - Per impostazione predefinita, abbiamo impostato
TextMotionsuAnimatednella nostra tipografia per evitare il jitter del testo dovuto all'allineamento dei glifi delle lettere ai limiti dei pixel durante le operazioni di scalabilità. (I626fa) - Abbiamo aggiornato l'aspetto di
ScrollIndicatoraumentando la larghezza e le dimensioni dello spazio per migliorare la visibilità. (Ied7cb) - Abbiamo corretto un bug su
Modifier.scrollTransformdurante l'aggiunta, la rimozione o lo spostamento di elementi. (I6830f) - Abbiamo risolto un problema di animazione del pulsante rotondo per i tocchi brevi (in precedenza, la durata minima dell'animazione non veniva sempre rispettata). (I757a7)
- Abbiamo aggiornato l'angolo di scansione per
LevelIndicatoral 20% (ovvero 72 gradi). (Idde5c) - Abbiamo corretto il posizionamento di
ScrollIndicatorquandoScalingLazyColumnveniva utilizzato conAutoCenteringParams. (I387dd) - Abbiamo aggiornato i colori e la tipografia per
ListHeadereListSubHeader. Anche i colori dei controlli di attivazione/disattivazione suCheckboxButtoneSwitchButton. (I39817) - Abbiamo corretto il posizionamento di
ScrollIndicatorinLazyColumneScalingLazyColumnconContentPadding. (I2bc51) - Abbiamo corretto un bug visualizzato nell'animazione di avanzamento
OpenOnPhoneDialogutilizzando il nuovoCircularProgressIndicatorContent. (I3e443) - Abbiamo aggiornato
HorizontalPagerScaffoldeVerticalPagerScaffoldper disattivare le animazioni quando l'opzione Riduci movimento è attiva (Iaaf68). - Abbiamo implementato un'animazione separata per gli indicatori di avanzamento circolari quando l'avanzamento supera il 100%. (I47135)
- È stato corretto un bug per cui
EdgeButtonpoteva essere disegnato con una forma errata nei componenti Pager (I91db9)
Versione 1.0.0-alpha29
13 novembre 2024
androidx.wear.compose:compose-material3:1.0.0-alpha29 viene rilasciata. La versione 1.0.0-alpha29 contiene questi commit.
Modifiche alle API
- Abbiamo aggiornato
TimeTextper fornire contenuti predefiniti che mostrano l'ora. (Id23b3) - Abbiamo semplificato
ScrollInfoProviderperPagerStaterimuovendo il parametroorientation, che non è più necessario. Il nuovo comportamento prevede cheTimeTextrimanga in posizione sia per la paginazione orizzontale che per quella verticale. (I71767) LocalHapticFeedbackora fornisce un'implementazioneHapticFeedbackpredefinita quando l'API Vibrator indica che la tecnologia aptica è supportata. Sono stati aggiunti i seguenti elementi:HapticFeedbackType-Confirm,ContextClick,GestureEnd,GestureThresholdActivate,Reject,SegmentFrequentTick,SegmentTick,ToggleOn,ToggleOff,VirtualKey. I componenti di Wear Compose su cui è possibile fare clic prolungato, comeButton,IconButton,TextButtoneCard, ora eseguono la vibrazioneLONG_PRESSquando viene fornito un gestore di clic prolungato. (I5083d)
Correzioni di bug
- Abbiamo aggiornato il movimento per le Conferme. (I04bff)
- Abbiamo aggiornato la dipendenza API minima alla versione 1.7.4 per le librerie Compose. (I88b46)
- È stato aggiunto un nuovo movimento per la finestra di dialogo
OpenOnPhone. (I1e10a) - Abbiamo corretto un bug in
LevelIndicatorin modo che ora venga visualizzato correttamente con il livello zero. (Ie95a4) - Abbiamo aggiornato le animazioni
HorizontalPageIndicatoreVerticalPageIndicator. (I5c8f3) - Abbiamo aggiunto un'animazione di riduzione a un punto all'indicatore di caricamento indeterminato
ArcProgressIndicator. (I9fd51)
Versione 1.0.0-alpha28
30 ottobre 2024
androidx.wear.compose:compose-material3:1.0.0-alpha28 viene rilasciata. La versione 1.0.0-alpha28 contiene questi commit.
Modifiche alle API
- Abbiamo aggiunto una variante ad arco all'indicatore di avanzamento circolare indeterminato (I2efc1).
- Abbiamo reso pubblici i composable
AlertDialogContenteDialogche compongono l'APIAlertDialog, in modo che sia possibile aggiungere la personalizzazione, se necessario (ad esempio personalizzare l'animazioneAlertDialogmantenendo il layout dei contenuti consigliato). Inoltre, abbiamo aggiunto i parametriModifiereColorai membriEdgeButton,ConfirmButtoneDismissButtondiAlertDialogDefaults. (I4eb71) - Abbiamo aggiornato l'API
Placeholdernel seguente modo: abbiamo rinominatoPlaceholderState.startPlaceholderAnimationinPlaceholderState.animatePlaceholder,PlaceholderState.isShowContentinPlaceholderState.isHiddenePlaceholderDefaults.shapeinPlaceholderDefaults.Shape; abbiamo rinominato il parametropainterinpainterWithPlaceholderOverlayBackgroundBrushinoriginalPainter; abbiamo modificato la visibilità diPlaceholderState.placeholderProgressionda pubblica a interna e l'abbiamo rinominata inplaceholderShimmerProgression; abbiamo aggiunto costanti di durata dell'animazione del segnaposto aPlaceholderDefaults. (Ie5a59) - Abbiamo aggiornato l'API
EdgeButtonnel seguente modo: abbiamo rinominato il parametro inScreenScaffolddabottomButtonaedgeButtone abbiamo resoEdgeButtonSizeuna classe di valori. (Ieef15) - Abbiamo modificato la visibilità di
copy()in pubblica nelle classi di colori wear material3 (I0287f)
Correzioni di bug
- Aggiunta della durata minima dell'animazione per
IconToggleButtoneTextToggleButtonal clic (Ieb333) - È stata aggiunta la durata minima all'animazione della forma
IconButtoneTextButton(Iebcee) - È stato corretto lo stato dell'opzione di ripetizione di
DatePicker. (I3587c) - È stato aggiunto il movimento per le finestre di dialogo Avviso e Conferma. (I173b1)
Versione 1.0.0-alpha27
16 ottobre 2024
androidx.wear.compose:compose-material3:1.0.0-alpha27 viene rilasciata. La versione 1.0.0-alpha27 contiene questi commit.
Modifiche alle API
- Abbiamo aggiornato
ScreenScaffoldeScrollIndicatorin seguito alla ridenominazione di Wear Compose FoundationLazyColumninTransformingLazyColumn. (I0608b) - Il parametro
preferredHeightdiEdgeButtonè stato rinominato inbuttonSizee il suo valore può essere scelto solo tra quattro costanti nella classe di valoriEdgeButtonSizeappena introdotta. (Icdd70) - Abbiamo modificato il nome di
ListSubheaderinListSubHeadere aggiunto valori predefiniti accessibili pubblicamente perListHeadereListSubHeader. (I96730) - Abbiamo aggiunto nuovi componenti
HorizontalPagerScaffoldeVerticalPagerScaffoldper Wear che forniscono nuove animazioni e coordinamento tra i componenti di testo dell'ora e indicatore di pagina. (Iff7d0) - Abbiamo aggiunto il supporto della rotazione a
HorizontalPagerScaffoldeVerticalPagerScaffold, consentendo agli utenti di navigare nei pager utilizzando dispositivi di input rotativi. (I9770d) - Abbiamo apportato modifiche all'API
MotionSchemeper semplificare l'utilizzo e migliorare la coerenza. Sono state rimosse le funzioni di memorizzazione in linea e gli schemi di movimento integrati sono stati spostati in un oggetto complementare MotionScheme dedicato. È stato rinominatostandardMotionSchemeeexpressiveMotionSchemein standard ed espressivo. (I5fd45) - Abbiamo aggiunto il supporto per una combinazione di colori dinamica basata sui colori di sistema. (I073e9)
- Abbiamo aggiornato lo Stepper alle ultime specifiche UX. (I622bb)
Correzioni di bug
- Abbiamo aggiornato la tipografia e i padding per i componenti Scheda. (I3ae48)
- Abbiamo modificato il padding in
AlertDialogtra i pulsanti Conferma/Ignora e il resto dei contenuti da 8 dp a 12 dp in base alle specifiche UX (Ie55f0) - Abbiamo aggiornato l'opacità del colore per il componente Dispositivo di scorrimento. (Idb383)
Versione 1.0.0-alpha26
2 ottobre 2024
androidx.wear.compose:compose-material3:1.0.0-alpha26 viene rilasciata. La versione 1.0.0-alpha26 contiene questi commit.
Modifiche alle API
- Abbiamo aggiornato l'API e l'aspetto di
HorizontalPageIndicatore aggiuntoVerticalPageIndicatorper l'utilizzo conVerticalPager(Ic9309) AlertDialogora supporta la possibilità di omettere il pulsante inferiore predefinito dalla variante della pila di pulsanti, per i layout personalizzati in cui EdgeButton non è richiesto. (I34fa9)- Abbiamo aggiunto un componente
SwipeToRevealper Wear Material 3 (Ic38b2). - Abbiamo aggiunto il supporto per lo scorrimento bidirezionale in
SwipeToReveal, per i rari casi in cui la schermata attuale non supporta lo scorrimento per chiudere. L'impostazione predefinita prevede lo scorrimento per rivelare solo per gli scorrimenti da destra a sinistra ed è fortemente consigliato di rispettare il comportamento predefinito per evitare conflitti con lo scorrimento per chiudere. (Ifac04) - Abbiamo rinominato il parametro
buttonHeightdiEdgeButtoninpreferredHeight. (I4fab3) - La versione di Kotlin è stata aggiornata alla 1.9 (I1a14c)
- Abbiamo rinominato
OpenOnPhoneDialogDefaults.IconinOpenOnPhoneDialogDefaults.OpenOnPhoneIconper evitare conflitti conIcon(I0f391) - Abbiamo aggiunto il supporto per
ScrollIndicatorinLazyColumn. (Ia546a) - Abbiamo aggiornato i valori predefiniti per
TextToggleButtoneIconToggleButton. (I7aaa9) - Abbiamo semplificato le API
PickerePickerGroup. (Id0653) - Abbiamo aggiunto
CardDefaults.ShapeeCardDefaults.Height, che (essendo token) erano altrimenti privati per gli sviluppatori che utilizzano la libreria. (I1594a, b/347649765) - Abbiamo rinominato il parametro di avanzamento per l'indicatore di avanzamento circolare segmentato binario in
segmentValue. (Ib72d9) - Abbiamo aggiornato i colori e il layout del cursore. (Ic3eec)
Correzioni di bug
- Abbiamo aggiornato l'animazione dell'icona
openOnPhone(I66f85) - Ora utilizziamo le icone di Google Symbols in
Slider,TimePickereDatePicker. (I46c7c) - Abbiamo aggiornato i padding in
ConfirmationeOpenOnPhoneDialog. (Iaa82e)
Versione 1.0.0-alpha25
18 settembre 2024
androidx.wear.compose:compose-material3:1.0.0-alpha25 viene rilasciata. La versione 1.0.0-alpha25 contiene questi commit.
Modifiche alle API
- Abbiamo aggiunto un indicatore di avanzamento circolare indeterminato. (I427a7)
- Abbiamo aggiunto il supporto per l'overflow dei progressi (progressi > 100%) sia per
CircularProgressIndicatorsia perSegmentedCircularProgressIndicator. Quando l'avanzamento supera 1,0, questo verrà indicato dal nuovo coloreoverflowTrack. (Iaaa3d) - I pulsanti di opzione
IconToggleButtoneTextToggleButtonora supportano una nuova variante di animazione della forma, in cui forme diverse rappresentano gli stati selezionato, deselezionato e premuto. La precedente variante della forma animata per lo stato appena premuto continua a essere supportata. (I29f03) - Abbiamo rimosso il supporto per l'utilizzo di
EdgeButtonconColumn, a causa della necessità di specificare esplicitamente l'altezza diEdgeButtoninScreenScaffold. (Ie353d) - Abbiamo aggiunto il supporto per Wear Compose
LazyColumncon il nostroScreenScaffold(e abbiamo aggiunto un'implementazione diScrollInfoProviderperLazyColumnState). (Ib8d29) - Abbiamo combinato
LocalTextMaxLines,LocalTextAligneLocalTextOverflowin una singola composizioneLocalTextConfigurationlocale per fornire una soluzione più scalabile in futuro. (I5edbc) - Abbiamo aggiunto arc-large come scala tipografica aggiuntiva, riservata alle brevi stringhe di testo dell'intestazione nella parte superiore o inferiore dello schermo, come nelle sovrimpressioni di conferma. (I60e3e)
- Abbiamo aggiunto valori predefiniti al pulsante per le dimensioni consigliate delle icone grandi e molto grandi e per il padding dei contenuti. (I84675)
Correzioni di bug
- Abbiamo aggiornato i colori per
IconButtoneTextButton. (I48324) - Abbiamo modificato gli overload dei pulsanti di base in modo che siano allineati verticalmente al centro per coerenza con gli altri overload. Per ripristinare il comportamento precedente, utilizza
Modifier.aligndaRowScope. (I66e57)
Versione 1.0.0-alpha24
4 settembre 2024
androidx.wear.compose:compose-material3:1.0.0-alpha24 viene rilasciata. La versione 1.0.0-alpha24 contiene questi commit.
Modifiche alle API
- Abbiamo aggiunto uno schema di movimento al tema Material3. Verrà utilizzato dai componenti della libreria per applicare specifiche di animazione come le molle per un movimento espressivo. (I54ff3)
- Abbiamo aggiunto i componenti
AppScaffoldeScreenScaffoldalla libreria Material3, che includono funzionalità per coordinare la stratificazione e le transizioni diTimeTexteScrollIndicator.AppScaffoldfornisce un livello superiore di componenti di scaffolding che si trovano sopra tutte le schermate. Pertanto, l'aggiunta diTimeTextaAppScaffoldconsente di mantenerlo in posizione mentre scorri tra le schermate. Le schermate possono eseguire l'override o nascondere il testo dell'ora.ScreenScaffoldfornisce uno spazio perScrollIndicatore anima automaticamente l'indicatore di scorrimento durante lo scorrimento, incluso il timeout per nasconderlo dopo un periodo di inattività. (I047d6) - Abbiamo aggiunto
ScrollIndicatorcon il nuovo design Material3. Ha una dimensione fissa della miniatura in base ai contenuti iniziali dell'elenco, per evitare variazioni di dimensioni quando i contenuti caricati in modalità differita vengono caricati nell'elenco. (Ic228d) - Abbiamo modificato l'API
ScrollAwayin modo cheScreenStagesia una classe di valori anziché una classe enum, per consentire l'aggiunta di ulteriori fasi in base alle esigenze future. (I48c93) - Abbiamo aggiunto
EdgeButton, un pulsante specifico per Wear con una forma che segue la curvatura della parte inferiore dello schermo (I16369) - Abbiamo aggiunto un nuovo spazio allo
ScreenScaffoldper un pulsante in basso (ad esempioEdgeButton), che verrà visualizzato e ridimensionato a seconda dei contenuti scorrevoli (I032eb). - Abbiamo aggiunto
Modifier.scrollTransformeModifier.targetMorphingHeightper aggiungere effetti di movimento Material3 agli elementi inLazyColumn. (Ie229a) - Abbiamo aggiunto
SegmentedCircularProgressIndicatorcome variante diCircularProgressIndicator. La variazione segmentata mostra un singolo valore di avanzamento in tutti i segmenti oppure mostra ogni segmento come attivo/disattivato. (I6e059) - Abbiamo aggiunto
LinearProgressIndicatorcome alternativa aCircularProgressIndicator. (I89182) - Abbiamo aggiunto
AlertDialog, che fornisce layout per presentare all'utente prompt importanti. Sono incluse varianti per una coppia di pulsanti di conferma/chiusura o un singolo pulsante in basso (in genere un EdgeButton) sotto una serie di opzioni. Entrambe le varianti hanno spazi per l'icona, il titolo e il testo aggiuntivo per fornire ulteriori dettagli. (Ieb873) - Abbiamo aggiunto
OpenOnPhoneDialog, che deve essere utilizzato per indicare un'azione che continuerà sullo smartphone dell'utente.OpenOnPhoneDialogviene chiuso dopo un timeout specificato. (I978fd) - Abbiamo aggiunto
Confirmation, un componente di dialogo con spazi per un'icona e testo curvo o lineare. Vengono fornite varianti specifiche per i messaggi di esito positivo/negativo. Le conferme vengono chiuse automaticamente dopo un timeout. (Ib43e8) - Abbiamo aggiunto uno sfondo a
TimeTextper mitigare i problemi in cui i contenuti sottostanti eTimeTextsi sovrapponevano e oscuravano l'ora. (Ia11fd) - Abbiamo aggiunto
LevelIndicator, che mostra il valore di un'impostazione come il volume e può essere utilizzato con il componenteStepperesistente per creare una schermata del volume.LevelIndicatorè simile aScrollIndicator, ma viene visualizzato sul lato opposto dello schermo e ha una larghezza del tratto maggiore e un colore dell'indicatore diverso per impostazione predefinita. (I8a4ac) - Abbiamo aggiunto
TimePicker, con layout per l'ora nel formato 24 ore (con o senza secondi) o nel formato 12 ore con selezione AM/PM. (Ia5124) - Abbiamo aggiunto
DatePicker, con la configurazione per l'ordinamento delle colonne (ad es. giorno-mese-anno, mese-giorno-anno o anno-mese-giorno) e date minime/massime facoltative. (Ibf13b) - Abbiamo aggiunto un parametro di peso alla funzione
textdiTimeText. Nei casi in cui TimeText è composto da più di un elemento di testo, ciò consente di controllare la distribuzione dello spazio. (I36700) - Abbiamo aggiunto
RadioButtoneSplitRadioButton. Questi componenti semplificano l'API precedente combinando sia il controllo radio (Split)SelectableButtonsia il controllo radio figlio (If7ae8). - Abbiamo aggiunto
CheckboxButtoneSplitCheckboxButton. Questi componenti semplificano l'API precedente combinando sia il controllo (Split)ToggleButtonsia la casella di controllo secondaria (Ia8f70). - Abbiamo aggiunto
SwitchButtoneSplitSwitchButton. Questi componenti semplificano l'API precedente combinando sia(Split)ToggleButtonsia il controllo Switch figlio (I0d349). - Abbiamo aggiornato la documentazione di
AnimatedTextper spiegare il comportamento di overshoot. (Iff30a) - Abbiamo aggiunto
ButtonGroupper combinare 2 o 3 pulsanti in modo che le pressioni dei pulsanti producano un'animazione coordinata. (Ie27db) - Abbiamo aggiunto l'animazione facoltativa della forma per
IconButtoneTextButtonquando vengono premuti. (Iffca5) - Abbiamo aggiunto una variante di colore aggiuntiva,
FilledVariant, aButton,IconButton,TextButton,CompactButtoneEdgeButton(I65fc3) - Abbiamo aggiunto il parametro
forcedSizeaImageWithScrimPainter, in modo che gli sfondi delle immagini dei pulsanti mantengano le dimensioni del componente per impostazione predefinita. L'impostazione diforcedSize = nulladotta invecePainter.instrinsicSize. (Ic57af) - Abbiamo aggiunto il clic prolungato ai pulsanti (Ib613d)
- È stato aggiunto anche il supporto per il clic prolungato a
IconButtoneTextButton. (I38891) - È stato aggiunto il supporto per il clic lungo alle schede. (I305d5)
- Abbiamo aggiunto
LocalTextMaxLines,LocalTextAlign,LocalTextOverflowcomeCompositionLocalse li abbiamo utilizzati come valori predefiniti dei parametri suText. Ora le impostazioni locali di composizione possono essere utilizzate da componenti comeCheckboxButton,SwitchButtoneRadioButtonper implementare le indicazioni UX, ma i parametri possono essere sostituiti dagli sviluppatori, se necessario. (Iab841) - Abbiamo aggiunto
Placeholderper mascherare il contenuto di componenti come pulsanti e schede fino al caricamento dei dati. (I1a532) - Abbiamo aggiunto
IconToggleButtonColorseTextToggleButtonColorsper sostituireToggleButtonColors, che è stato rimosso. (Ie0bf1)
Correzioni di bug
- Abbiamo aggiornato
Button,FilledTonalButton,OutlinedButton,ChildButton,CompactButtonper utilizzare i nuoviCompositionLocalsLocalTextMaxLines,LocalTextAlign,LocalTextOverflowper implementare le indicazioni UX. Questi parametri possono essere sostituiti direttamente dagli sviluppatori sul testo, se necessario (Ie51f7). - Abbiamo modificato la larghezza del tratto predefinita di
LevelIndicatorin6dpper differenziarla daScrollIndicator, che ha una larghezza del tratto di4dp. (If6f63) - Abbiamo risolto un problema in
TimeTextin modo che siano supportati angoli di scansione più ampi. (Ie489f) - Risolto un problema durante la ricomposizione di
EdgeButton. (I4cdca) - Sono stati corretti i layout dei pulsanti di attivazione/disattivazione suddivisi quando viene fornito un padding dei contenuti personalizzato. (Ia33d3)
- I piccoli valori di avanzamento vengono arrotondati per eccesso almeno alla larghezza della linea dell'indicatore di avanzamento. (I3bd84)
Versione 1.0.0-alpha23
14 maggio 2024
androidx.wear.compose:compose-material3:1.0.0-alpha23 viene rilasciata. La versione 1.0.0-alpha23 contiene questi commit.
Modifiche alle API
- Abbiamo aggiornato le API
ToggleButtoneRadioButtonin modo che sia possibile configurare i colori disattivati. (If13a7) - Abbiamo aggiunto un nuovo
CircularProgressIndicatorper Material3. (Ib3bd7)
Correzioni di bug
- Abbiamo corretto un bug a causa del quale i pulsanti selezionabili annunciavano il doppio tocco per attivare/disattivare quando erano già selezionati. (I7ed88)
Versione 1.0.0-alpha22
1° maggio 2024
androidx.wear.compose:compose-material3:1.0.0-alpha22 viene rilasciata. La versione 1.0.0-alpha22 contiene questi commit.
Modifiche alle API
- Abbiamo aggiornato Material3
ColorScheme. (I7b2b8) - Abbiamo aggiornato l'interruttore Material3. Oltre ad alcune modifiche al colore, il segno di spunta ora corrisponde a quello utilizzato per la casella di controllo. (Icac7b)
Correzioni di bug
- Aggiorna tutte le demo di integrazione in modo da utilizzare il nuovo modificatore
rotaryScrollable. (I25090)
Versione 1.0.0-alpha21
17 aprile 2024
androidx.wear.compose:compose-material3:1.0.0-alpha21 viene rilasciata. La versione 1.0.0-alpha21 contiene questi commit.
- Questa release è stata attivata a causa di un problema tecnico nella release precedente che ha comportato la mancanza di file JAR di origine. Non sono presenti nuovi commit in questa release.
Versione 1.0.0-alpha20
3 aprile 2024
androidx.wear.compose:compose-material3:1.0.0-alpha20 viene rilasciata. La versione 1.0.0-alpha20 contiene questi commit.
Correzioni di bug
- Abbiamo modificato i valori alfa dello stato premuto e attivo di Ripple per il contrasto. (I59f0a)
- Abbiamo aggiunto la spaziatura tra le etichette principali e secondarie in
Button,ToggleButtoneRadioButton, in seguito alle ultime modifiche agli stili tipografici e alle altezze delle righe. (I2c0ba)
Versione 1.0.0-alpha19
6 marzo 2024
androidx.wear.compose:compose-material3:1.0.0-alpha19 viene rilasciata. La versione 1.0.0-alpha19 contiene questi commit.
Modifiche alle API
- Abbiamo aggiunto
TimeTextalla libreria Wear Compose Material3. Questo componente mostra l'ora corrente (e lo stato aggiuntivo) nella parte superiore dello schermo. La nuova API Material3 concisa evita la duplicazione tra contenuti lineari e curvi. (I4d7c3) - Abbiamo aggiornato i nomi dei parametri da
onSelectedaonSelectperRadioButton. (I1a971) - Tokenizza
RadioButtoneSplitRadioButtone refattorizza i metodi esistenti per ridurre la quantità di ricercheCompositionLocalaggiungendo istanze memorizzate nella cache dei colori e rendendo interni i metodi diRadioButtonColorseSplitRadioButtonColors. (I02b33)
Versione 1.0.0-alpha18
21 febbraio 2024
androidx.wear.compose:compose-material3:1.0.0-alpha18 viene rilasciata. La versione 1.0.0-alpha18 contiene questi commit.
Modifiche alle API
- Abbiamo eseguito il refactoring del pattern predefinito per
CardColors,ToggleButtonColorseSplitToggleButtonColorscreando internamente istanze memorizzate nella cache e riducendo l'utilizzo diCompositionLocal. (If3fec)
Versione 1.0.0-alpha17
7 febbraio 2024
androidx.wear.compose:compose-material3:1.0.0-alpha17 viene rilasciata. La versione 1.0.0-alpha17 contiene questi commit.
Modifiche alle API
- Abbiamo aggiornato l'API Button per utilizzare
buttonColorsper impostazione predefinita e abbiamo rimosso il duplicatofilledButtonColors. (I4fe3b) - Abbiamo eseguito il refactoring dei pattern predefiniti per
ButtonColors,IconButtonColorseTextButtonColorscreando internamente un'istanza memorizzata nella cache e riducendo l'utilizzo diCompositionLocal. (I5f51c) - Abbiamo rimosso l'overhead di
rememberUpdatedStatenelle classi di colori specifiche dei componenti e abbiamo contrassegnato i metodi di accesso all'interno delle classi di colori come interni. (If6571)
Correzioni di bug
- Abbiamo aggiornato
Modifier.minimumInteractiveComponentSizein modo che utilizziModifier.node. (Iba6b7)
Versione 1.0.0-alpha16
24 gennaio 2024
androidx.wear.compose:compose-material3:1.0.0-alpha16 viene rilasciata. La versione 1.0.0-alpha16 contiene questi commit.
Nuove funzionalità
- Abbiamo aggiunto
CompactButton, che può utilizzare gli stessi colori con riempimento, tonali con riempimento e contorno del pulsante.(I05df0)
Modifiche alle API
- Abbiamo aggiunto
RadioButton/SplitRadioButtoncome contenitori per i controlli di selezione, ad esempio il controllo Pulsante di opzione.RadioButtonè diverso daToggleButtonin quanto è selezionabile (e funziona all'interno di un gruppo di selezione), mentreToggleButtonè attivabile/disattivabile (ed è indipendente). (I61275) - Stiamo rimuovendo
LocalContentAlphadalla libreria Wear Compose Material3 per coerenza con la libreria Compose Material3. (I49a0a) - I componenti Wear Material e Wear Material3 che espongono un
MutableInteractionSourcenella loro API sono stati aggiornati in modo da esporre unMutableInteractionSourcenullable che ha come valore predefinito null. Non sono state apportate modifiche semantiche: il passaggio di null significa che non vuoi sollevareMutableInteractionSourcee verrà creato all'interno del componente, se necessario. Se viene impostato su null, alcuni componenti non allocano mai unMutableInteractionSource, mentre altri creano un'istanza solo quando necessario, il che migliora le prestazioni di questi componenti. Se non utilizziMutableInteractionSourceche passi a questi componenti, ti consigliamo di passare null. Ti consigliamo inoltre di apportare modifiche simili nei tuoi componenti. (Ib90fc, b/298048146) - Aggiunge una nuova API ripple nelle librerie
wear:compose-materialewear:compose-material3che sostituisce l'APIrememberRippledeprecata. Aggiunge anche unCompositionLocaltemporaneo,LocalUseFallbackRippleImplementation, per ripristinare l'utilizzo delle APIrememberRipple/RippleThemedeprecate per i componenti Material. Questa funzionalità verrà rimossa nella prossima release stabile ed è pensata solo per essere un ausilio temporaneo per la migrazione nei casi in cui fornisci unRippleThemepersonalizzato. Visita il sito developer.android.com per informazioni sulla migrazione e ulteriori dettagli su questa modifica. (af92b21) - Abbiamo apportato piccoli miglioramenti all'API
HorizontalPageIndicatore alla relativa documentazione. (I60efc) - Abbiamo aggiornato
ColorSchemein modo che sia immutabile, rendendo meno efficienti gli aggiornamenti dei singoli colori, ma rendendo più efficiente l'utilizzo più comune dei colori. Il motivo di questa modifica è che la maggior parte delle app non ha l'aggiornamento dei singoli colori come caso d'uso principale. È ancora possibile, ma la ricomposizione sarà maggiore rispetto a prima, il che ridurrà significativamente la quantità di abbonamenti allo stato in tutto il codice materiale e influirà sul costo di inizializzazione e runtime dei casi d'uso più standard. (Ibc2d6) - Sono state aggiornate le API
ToggleButtoneSplitToggleButtonper consentire la personalizzazione dei colori disattivati. Inoltre, ora vengono utilizzati i token Material Design per i valori di colore e tipografia. (If087c) - Aggiornamento dei colori di sfondo delle immagini dei pulsanti per utilizzare i token Material Design. (Iba215)
- Abbiamo modificato i componenti
Checkbox,SwitcheRadioButtonin modo che siano di sola visualizzazione, rimuovendo la gestione dei clic. Questi componenti devono essere utilizzati in(Split)ToggleButton, che gestisce il clic, quindi ora sono indicati più chiaramente come solo visualizzazione (e non sono destinati all'uso autonomo su Wear). (I2322e)
Correzioni di bug
- Abbiamo aggiunto token per i valori di movimento di durate e accelerazioni in Wear Compose Material 3. (I437cd)
- Abbiamo corretto un bug in
ToggleButton,SplitToggleButton,Checkbox,SwitcheRadioButtonin modo che gli annunci di accessibilità non vengano ripetuti (in precedenza, i ruoli semantici venivano duplicati). (Ica281) - Abbiamo rimosso il livello materialcore per
CompactButtonper migliorare le prestazioni. (7902858)
Versione 1.0.0-alpha15
15 novembre 2023
androidx.wear.compose:compose-material3:1.0.0-alpha15 viene rilasciata. La versione 1.0.0-alpha15 contiene questi commit.
Modifiche alle API
- Abbiamo rinominato il livello Foundation
SwipeToDismissBoxinBasicSwipeToDismissBox. In questo modo, la distinzione tra il componente di livello Foundation e il livello Material3SwipeToDismissBoxè più chiara. Quest'ultimo estrae i colori daMaterialThemeda utilizzare nelle protezioni e delega l'implementazione rimanente aBasicSwipeToDismissBox. (Ibecfc)
Correzioni di bug
- Abbiamo rimosso il livello material-core per il pulsante Material3 per migliorare il rendimento. (I55555)
Versione 1.0.0-alpha14
18 ottobre 2023
androidx.wear.compose:compose-material3:1.0.0-alpha14 viene rilasciata. La versione 1.0.0-alpha14 contiene questi commit.
Modifiche alle API
- Abbiamo rimosso il parametro
indicatorStyleda Material3HorizontalPageIndicator. Seguirà invece la forma dello schermo del dispositivo (lineare o rotonda). (I83728) - Abbiamo separato i colori per
SplitToggleButtonda quelli perToggleButtonaggiungendo una nuova classeSplitToggleButtonColors. (I78bee)
Versione 1.0.0-alpha13
4 ottobre 2023
androidx.wear.compose:compose-material3:1.0.0-alpha13 viene rilasciata. La versione 1.0.0-alpha13 contiene questi commit.
Modifiche alle API
- Abbiamo aggiunto un campo Sottotitolo facoltativo a
TitleCard. (Ifc45a) - Abbiamo aggiunto token di colore Material Design per
TextButton. (I769dc)
Versione 1.0.0-alpha12
20 settembre 2023
androidx.wear.compose:compose-material3:1.0.0-alpha12 viene rilasciata. La versione 1.0.0-alpha12 contiene questi commit.
Modifiche alle API
- Abbiamo aggiornato
IconButtonper utilizzare i token Material Design. (I3f137) - Abbiamo aggiornato
IconToggleButtonper utilizzare i token Material Design. (I7d263) - Abbiamo reso pubblici i costruttori di
CheckboxColors,RadioButtonColors,SwitchColors. (I82b73)
Versione 1.0.0-alpha11
6 settembre 2023
androidx.wear.compose:compose-material3:1.0.0-alpha11 viene rilasciata. La versione 1.0.0-alpha11 contiene questi commit.
Correzioni di bug
- Abbiamo aggiornato la tipografia delle schede Material3 a
TitleMedium. (I597bd) - Abbiamo aggiornato la tipografia e l'allineamento per
ListHeadereListSubheaderdi Material3. (Ib5ceb)
Versione 1.0.0-alpha10
23 agosto 2023
androidx.wear.compose:compose-material3:1.0.0-alpha10 viene rilasciata. La versione 1.0.0-alpha10 contiene questi commit.
Nuove funzionalità
- Aggiungi
HorizontalPageIndicatornella libreria Wear Material3. (Ifee99)
Modifiche alle API
- Aggiorna il codice dei pulsanti per utilizzare i token di progettazione Material3. (I92fe4)
- Dichiarazione delle API Wear Material 3 Stepper e Slider come sperimentali, in quanto i dettagli dell'interfaccia utente sono ancora in fase di finalizzazione. (I84d54)
- Abbiamo rimosso le dimensioni
ExtraSmalldai roundTextButtoneTextToggleButtonperché queste dimensioni si applicano solo aIconButton. (Ibc7d5)
Correzioni di bug
- Abbiamo aggiornato le indicazioni sulla tipografia per TextToggleButton in modo da utilizzare LabelLarge per LargeButtonSize (Ib10fa).
- Abbiamo aggiornato le indicazioni sulla tipografia per TextButton in modo da utilizzare LabelLarge per LargeButtonSize (I8f3a7)
- Abbiamo impostato il touch target minimo della scheda su 48 dp per l'accessibilità. (Ieb9b1)
- Aggiungi AppCard con demo dell'immagine, rimuovendo AppCard con demo dello sfondo (Id735f)
- Correzione di un bug nei pulsanti rotondi in cui i modificatori non venivano concatenati correttamente. (I5e162)
Versione 1.0.0-alpha09
9 agosto 2023
androidx.wear.compose:compose-material3:1.0.0-alpha09 viene rilasciata. La versione 1.0.0-alpha09 contiene questi commit.
Nuove funzionalità
- Abbiamo aggiunto
ToggleButtonper material3 (I6bed6)
Modifiche alle API
- Abbiamo attivato l'annotazione
FloatRangecome vincoli API , che in precedenza erano indicati nei commenti. (Icb401) - Abbiamo aggiornato la tipografia per Wear Material3 in modo che rispetti le ultime linee guida di Material3. (I1bad6)
Correzioni di bug
- Abbiamo aggiornato i colori per
Button,IconButtoneTextButtonin linea con il design Material3. (Ib2495) - Abbiamo corretto la visibilità del segno di spunta nelle caselle di controllo negli stati disattivati. (Ib25bf)
Versione 1.0.0-alpha08
26 luglio 2023
androidx.wear.compose:compose-material3:1.0.0-alpha08 viene rilasciata. La versione 1.0.0-alpha08 contiene questi commit.
Nuove funzionalità
- Abbiamo aggiunto i seguenti controlli di selezione per Material3:
Switch,Checkbox,RadioButton. (Ib918c) - Abbiamo aggiunto
IconToggleButtoneTextToggleButtona Material 3, un pulsante di attivazione/disattivazione circolare con un singolo spazio per l'icona e il testo, rispettivamente. Per le diverse dimensioni diToggleButton, ti consigliamo di utilizzareModifier.touchTargetAwareSizecon le dimensioni fornite nei rispettivi pulsanti di attivazione/disattivazione. (I9f015) - Abbiamo aggiunto
ListHeadereListSubheaderai nostri componenti Material 3. (Ibaefe) - Abbiamo aggiunto Material3
SwipeToDismissBox, che chiama la nuova FoundationSwipeToDismissBoxe fornisce i valori di colore predefiniti dal suo tema. (I275fb) - Abbiamo aggiunto
InlineSliderMaterial3 a Wear Compose. Consente agli utenti di effettuare una selezione da un intervallo di valori. L'intervallo di selezioni viene visualizzato come una barra tra i valori minimo e massimo dell'intervallo, da cui gli utenti possono selezionare un singolo valore.InlineSliderè ideale per regolare impostazioni come volume o luminosità. (I7085f)
Modifiche alle API
- Abbiamo aggiornato le forme nel tema Wear Material 3 per utilizzare
RoundedCornerShapeinvece di Forma. (Idb133) - Abbiamo reso pubbliche le costanti di altezza per il pulsante (Idbfde)
- File API aggiornati per annotare la soppressione della compatibilità (I8e87a, b/287516207)
- Abbiamo aggiornato
InlineSliderColorsin Wear Compose Material 3 in modo che abbia un costruttore pubblico e proprietà pubbliche. (I6b632) - Abbiamo aggiornato tutte le classi di colori in Wear Compose Material 3 in modo che abbiano costruttori e proprietà pubblici. (I17702)
- Abbiamo reso pubbliche le costanti di spaziatura orizzontale e verticale del pulsante. (Ieeaf7)
Correzioni di bug
- Ora il pulsante regolerà la sua altezza per adattarsi ai contenuti che sono aumentati di dimensioni a causa dei caratteri grandi per l'accessibilità, se necessario (Iaf302).
- Abbiamo aggiornato una serie di demo di pulsanti per risolvere i problemi di accessibilità. (I61ce9)
SteppereInlineSliderora supportano i clic ripetuti sulla pressione prolungata, in modo da poter aumentare/diminuire rapidamente il valore diSteppereInlineSlidertenendo premuti i pulsanti + o - (I27359).
Versione 1.0.0-alpha07
21 giu 2023
androidx.wear.compose:compose-material3:1.0.0-alpha07 viene rilasciata. La versione 1.0.0-alpha07 contiene questi commit.
Nuove funzionalità
- Abbiamo aggiunto il componente
Stepperalla nostra libreria Compose per Wear OS Material 3. È simile alla versione precedente di Material, ma omette la semantica dell'intervallo per impostazione predefinita, in base al feedback degli sviluppatori. ForniamoModifier.rangeSemanticsi casi in cui è richiesta la semantica dell'intervallo. (Ic39fd) - Abbiamo aggiunto
curvedTextalla nostra libreria Compose per Wear OS Material 3. (Ia8ae3)
Correzioni di bug
- Abbiamo aggiornato
wear.compose.foundationin modo che sia una dipendenza API diwear.compose.material3(I72004, b/285404743)
Versione 1.0.0-alpha06
7 giugno 2023
androidx.wear.compose:compose-material3:1.0.0-alpha06 viene rilasciata. La versione 1.0.0-alpha06 contiene questi commit.
Correzioni di bug
- Abbiamo aggiornato
TextButtonper utilizzare la funzione di estensionetoDisabledColorper i valori alfa disattivati corretti. (I814c8)
Versione 1.0.0-alpha05
24 maggio 2023
androidx.wear.compose:compose-material3:1.0.0-alpha05 viene rilasciata. La versione 1.0.0-alpha05 contiene questi commit.
Nuove funzionalità
- Abbiamo aggiunto
TextButtona Material3, un pulsante circolare con un unico spazio per il testo. Per le diverse dimensioni diTextButton, ti consigliamo di utilizzareModifier.touchTargetAwareSizeeExtraSmallButtonSize,SmallButtonSize,DefaultButtonSizeeLargeButtonSizeIconforniti inTextButtonDefaults. IlTextButtonpredefinito non ha bordi e ha uno sfondo trasparente per le azioni a bassa enfasi. Per le azioni che richiedono un'enfasi elevata, utilizzafilledTextButtonColors; per un'enfasi media, utilizzaTextButtoncon bordo impostato suButtonDefaults.outlinedButtonBorder; per un compromesso tra contorno e riempimento, utilizzafilledTonalTextButtonColors. (I667e4) - Abbiamo aggiunto
Card,OutlinedCard,AppCardeTitleCardalla libreria Wear Compose Material3.AppCardeTitleCardpossono anche essere visualizzati con un aspetto contornato utilizzandoCardDefaults.outlinedCardColorseCardDefaults.outlinedCardBorder(I80e72).
Modifiche alle API
- Abbiamo spostato il parametro Etichetta pulsante alla fine per supportare la sintassi lambda finale e abbiamo rimosso il parametro ruolo (in quanto può essere sostituito utilizzando
Modifier.semantics). I costruttoriButtonColorssono ora pubblici. (Ie1b6d)
Versione 1.0.0-alpha04
10 maggio 2023
androidx.wear.compose:compose-material3:1.0.0-alpha04 viene rilasciata. La versione 1.0.0-alpha04 contiene questi commit.
Nuove funzionalità
- Abbiamo aggiunto
IconButtona Material 3, un pulsante circolare con un unico spazio per l'icona/immagine. Esistono quattro varianti:IconButton,FilledIconButton,FilledTonalIconButtoneOutlinedIconButton. Per le diverse dimensioni diIconButton, ti consigliamo di utilizzareModifier.touchTargetAwareSizeeExtraSmallButtonSize,SmallButtonSize,DefaultButtonSizeeLargeButtonSizeIconforniti inIconButtonDefaults. Forniamo ancheIconButtonDefaults.iconSizeForper determinare le dimensioni consigliate dell'icona per una determinata dimensione del pulsante. (I721d4)
Versione 1.0.0-alpha03
19 aprile 2023
androidx.wear.compose:compose-material3:1.0.0-alpha03 viene rilasciata. La versione 1.0.0-alpha03 contiene questi commit.
Modifiche alle API
- Abbiamo aggiunto il componente Pulsante Material 3, il nostro pulsante a forma di stadio, precedentemente chiamato Chip nella libreria Wear Compose Material (è stato rinominato Pulsante per coerenza con la libreria Compose Material 3). Il pulsante predefinito ha uno sfondo pieno e sono disponibili varianti per
FilledTonal(sfondo disattivato), Contorno (trasparente con un bordo sottile) e Secondario (sfondo trasparente e nessun bordo, utilizzato per azioni supplementari con la minore visibilità). I pulsanti rotondi per icone semplici e contenuti di testo verranno aggiunti in una release futura.(Ia6942)
Versione 1.0.0-alpha02
5 aprile 2023
androidx.wear.compose:compose-material3:1.0.0-alpha02 viene rilasciata. La versione 1.0.0-alpha02 contiene questi commit.
Correzioni di bug
- Abbiamo aggiunto un
DefaultTextStylea Wear Compose Material 3 che impostaPlatformTextStyle.includeFontPaddingsu true (l'impostazione attuale). In questo modo, in futuro potremo sincronizzare la disattivazione del padding dei caratteri per impostazione predefinita con le librerie Compose (vedi Correzione del padding dei caratteri in Compose per lo sfondo). (I7e461)
Versione 1.0.0-alpha01
22 marzo 2023
androidx.wear.compose:compose-material3:1.0.0-alpha01 viene rilasciata. La versione 1.0.0-alpha01 contiene questi commit.
Nuove funzionalità
Material 3 è la nuova evoluzione di Material Design e include temi aggiornati e componenti riprogettati. Material 3 su Wear Compose è progettato per essere coerente con la libreria Material 3 Compose su Android. Questa prima release alpha contiene implementazioni funzionali preliminari di quanto segue:
Continueremo a sviluppare Wear Material (
androidx.wear.compose:compose-material) e Wear Material 3 (androidx.wear.compose:compose-material3) in parallelo. Le future release di Material 3 estenderanno il set di widget per includere altri componenti familiari di Compose for Wear OS, come pulsanti, selettori e slider.Le librerie Wear Material e Wear Material 3 si escludono a vicenda e non devono essere combinate nella stessa app, principalmente perché fanno riferimento a temi diversi che porterebbero a incoerenze impreviste.