Wear Compose Material 3

  
Scrivi applicazioni Jetpack Compose per i dispositivi Wear OS fornendo funzionalità per supportare dimensioni e gesti di navigazione diversi dei dispositivi utilizzando il sistema di design Material 3 Expressive.
Aggiornamento più recente Release stabile Candidato per la release Versione beta Versione alpha
4 giugno 2025 - - 1.5.0-beta03 -

Dichiarazione delle dipendenze

Per aggiungere una dipendenza da Wear, devi aggiungere il repository Maven di Google al tuo progetto. Per ulteriori informazioni, consulta il repository Maven di Google.

Aggiungi le dipendenze per gli elementi 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-beta03"

    // For Wear Material Design UX guidelines and specifications
    implementation "androidx.wear.compose:compose-material3:1.5.0-beta03"

    // For integration between Wear Compose and Androidx Navigation libraries
    implementation "androidx.wear.compose:compose-navigation:1.5.0-beta03"

    // For Wear preview annotations
    implementation("androidx.wear.compose:compose-ui-tooling:1.5.0-beta03")
    
    // 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-beta03")

    // For Wear Material Design UX guidelines and specifications
    implementation("androidx.wear.compose:compose-material3:1.5.0-beta03")

    // For integration between Wear Compose and Androidx Navigation libraries
    implementation("androidx.wear.compose:compose-navigation:1.5.0-beta03")
    
    // For Wear preview annotations
    implementation("androidx.wear.compose:compose-ui-tooling:1.5.0-beta03")

    // 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 ulteriori informazioni sulle dipendenze, consulta Aggiungere dipendenze di compilazione.

Feedback

Il tuo feedback ci aiuta a migliorare Jetpack. Facci sapere se riscontri nuovi problemi o hai idee per migliorare questa raccolta. Prima di crearne uno nuovo, 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.

Creare un nuovo problema

Per ulteriori informazioni, consulta la documentazione del Tracker dei problemi.

Wear Compose Material3 versione 1.5

Versione 1.5.0-beta03

4 giugno 2025

androidx.wear.compose:compose-*:1.5.0-beta03 viene rilasciato. La versione 1.5.0-beta03 contiene questi commit.

Modifiche all'API

  • OpenOnPhoneDialog ora annuncia solo il testo del messaggio in TalkBack e salta la semantica delle icone. I OpenOnPhoneDialogDefaults sono stati aggiornati per rimuovere i parametri iconContentDescription e contentDescription da icon(). Inoltre, ConfirmationDialogDefaults ora dispone di parametri di modificatore per i composabili SuccessIcon e FailureIcon. (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: sfondo, trasformazione del contenitore, trasformazione dei contenuti. Ora i primi 2 sono invertiti e applichiamo qualsiasi modificatore passato tra di loro, quindi è interessato dalle trasformazioni del contenitore. In questo modo vengono corretti casi come l'utilizzo di un effetto Shimmer segnaposto con elementi in un TLC che utilizzano il parametro di trasformazione. (I786cf)
  • RevealState.Saver è stato aggiunto per essere utilizzato per ripristinare lo stato di SwipeToReveal quando l'attività o il processo viene ricreato. La funzione rememberRevealState ora utilizza questo risparmio per impostazione predefinita. (Ie0ecb)
  • Per impostazione predefinita, i pulsanti di azioni principali e secondarie SwipeToReveal devono essere impostati su ButtonDefault.Height (è stato corretto il bug che li riempiva con l'altezza massima per i pulsanti più alti). (Ibfba1)
  • È stato modificato il comando SwipeToReveal per reimpostare l'ultimo componente con cui è stata eseguita un'interazione quando viene eseguito il gesto di scorrimento verso destra. (Ia8450)
  • Lo stato SwipeToReveal è stato modificato in modo da impostare lo stato Revealing quando la posizione di fine dello scorrimento è compresa tra gli ancoraggi di rivelazione e di visualizzazione ed è più vicina all'ancoraggio di rivelazione. (If4458)
  • Ora i contenuti di ButtonGroup sono invertiti correttamente in un layout RTL (Ib378d)
  • AnimatedText ora supporta l'orientamento del testo RTL (I4533c)
  • TransformingLazyColumn ora ridimensiona gli elementi correttamente quando l'elemento in basso viene rimosso (Idacab)
  • TransformingLazyColumn ora esegue un solo passaggio di misurazione, il che migliora le prestazioni riducendo i tempi di frame. (I501a1)

Versione 1.5.0-beta02

20 maggio 2025

androidx.wear.compose:compose-*:1.5.0-beta02 viene rilasciato. La versione 1.5.0-beta02 contiene questi commit.

Correzioni di bug

  • Profili di riferimento aggiornati per le librerie foundation, material e material3. (I53f06)
  • È stato risolto un bug in TransformingLazyColumn, per cui le dimensioni degli elementi cambiavano quando veniva rimosso l'elemento in basso. (Idacab)
  • È stato corretto un bug relativo a TransformingLazyColumn, quando l'elenco si bloccava nella parte superiore o inferiore dell'elenco. (I49d00)
  • OpenOnPhoneDialog in TalkBack dovrebbe annunciare il testo curvo anziché la descrizione dei contenuti dell'icona. (I4efe8)
  • È stato corretto un bug in SwipeToReveal che segnalava l'ancora errata in RevealState.currentValue quando hasPartiallyRevealedState è impostato su false. (I9c7cf)
  • I pulsanti di annullamento SwipeToReveal ora sono ButtonDefaults.Height per impostazione predefinita. (I1f6c8)
  • Le prestazioni di BasicSwipeToDismissBox sono state migliorate eliminando l'utilizzo di Canvas per disegnare gli scrim. (I68f2c)
  • È stato corretto un bug di accessibilità nel cursore, per 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 di ScrollProgress del 30%. (I4c4cb)

Versione 1.5.0-beta01

7 maggio 2025

androidx.wear.compose:compose-*:1.5.0-beta01 viene rilasciato. La versione 1.5.0-beta01 contiene questi commit.

La release 1.5.0-beta01 di Compose per 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 Material3 per adottare il nuovo design visivo nelle app e usufruire dei nuovi componenti come segue:

  • MaterialTheme per schemi di colori, tipografia e forme aggiornati ed estesi che donano profondità e varietà ai tuoi progetti.
  • Temi a colori dinamici che generano automaticamente una combinazione di colori per l'app in modo che corrisponda ai colori del quadrante.
  • I nuovi componenti si adattano automaticamente a dimensioni dello schermo più grandi per impostazione predefinita
  • Morphing delle forme: i componenti dei pulsanti rotondi come IconButton, TextButton, IconToggleButton e TextToggleButton supportano le variazioni che si animano quando vengono premuti o selezionati.
  • EdgeButton: un nuovo pulsante che segue i bordi dello schermo e ha una forma speciale progettata per la parte inferiore dello schermo.
  • Strutture di supporto: vengono introdotti AppScaffold e ScreenScaffold per definire la struttura della schermata e coordinare le animazioni ScrollIndicator e TimeText.
  • Pulsanti: sono supportati numerosi pulsanti a forma di ellisse con contenitori flessibili a un'unica posizione e varianti multi-slot per pulsanti con icone ed etichette. CheckboxButton e SwitchButton vengono forniti quando sono necessari pulsanti di attivazione/disattivazione, mentre RadioButton è il pulsante di selezione disponibile (sono disponibili anche le varianti "Split" dei pulsanti di attivazione/disattivazione e di selezione).
  • ButtonGroup: implementa un gruppo espressivo di pulsanti in una riga che cambiano forma quando vengono toccati.
  • Le varianti AlertDialog supportano i pulsanti OK/Annulla o un EdgeButton.
  • ConfirmationDialog è disponibile per visualizzare un messaggio con un timeout, supportando animazioni speciali per le varianti di successo, errore e apertura sullo smartphone.
  • Selettori: sono supportate le varianti TimePicker e DatePicker, nonché i componenti Picker e PickerGroup per creare le tue schermate di selettori.
  • ProgressIndicators: sono supportati indicatori di avanzamento circolari e lineari (CircularProgressIndicator ha varianti segmentate e indeterminate).
  • Schede: sono disponibili diverse varianti di schede, tra cui TitleCard, che offre layout specifici per schede con titoli, orari, sottotitoli o spazi per i contenuti. A TitleCard puoi anche assegnare uno sfondo immagine per rafforzare il significato delle informazioni in una scheda.
  • Lettori di pagine: i componenti HorizontalPagerScaffold, VerticalPagerScaffold e AnimatedPage coordinano le animazioni HorizontalPageIndicator e VerticalPagerIndicator. HorizontalPager e VerticalPager vengono rilasciati nella libreria Wear Compose Foundation.
  • Segnaposto: viene disegnata una forma scheletro su un componente per le situazioni in cui non sono disponibili contenuti provvisori.
  • Dispositivi di scorrimento e cursori: sia i dispositivi di scorrimento che i cursori consentono agli utenti di effettuare una selezione da un intervallo di valori. I dispositivi di scorrimento sono più compatti e possono essere segmentati, mentre il cursore è un componente a schermo intero in genere accoppiato a un StepperLevelIndicator.
  • SwipeToReveal: utilizzato per aggiungere altre azioni a un composable quando viene swipato da destra a sinistra.

Inoltre, Wear Compose Foundation 1.5.0-beta01 include i seguenti nuovi componenti:

  • TransformingLazyColumn: un elenco lazy con scorrimento verticale che supporta le animazioni di ridimensionamento e trasformazione
  • Gruppi di attenzione gerarchici: utilizzati per annotare i composabili in un'applicazione, per tenere traccia della parte attiva della composizione e coordinare l'attenzione.
  • Lettori di codici a barre: componenti HorizontalPager e VerticalPager, basati sui componenti di Compose Foundation con miglioramenti specifici per Wear per migliorare le prestazioni e l'adesione alle linee guida di Wear OS.

Modifiche all'API

  • Aggiornamento dell'API Hierarchical Focus: è stato rinominato Modifier.hierarchicalFocus in Modifier.hierarchicalFocusGroup e rimosso il parametro di callback; è stato rimosso il sovraccarico di Modifier.hierarchicalFocusRequester con un parametro FocusRequester; è stato creato un nuovo CompositionLocal, LocalScreenIsActive, in modo che i componenti possano informare e controllare quale schermata è attiva. (I5ff7c).
  • È stata ritirata la funzionalità SwipeToReveal da Wear Compose Foundation a favore delle API SwipeToReveal in Wear Compose Material e Wear Compose Material3. Per continuare a utilizzare le API, sostituisci le importazioni di Wear Foundation SwipeToReveal con quelle di Wear Compose Material/ Wear Compose Material3. (Ia147d).
  • Le dipendenze SwipeToReveal di Wear Compose Material3 su Foundation sono state spostate nel pacchetto material3, ad esempio RevealValue, RevealDirection, RevealActionType, RevealState, rememberRevealState. Gli sviluppatori devono modificare le importazioni di queste classi e funzioni da androidx.wear.compose.foundation a androidx.wear.compose.material3. (I640e6).
  • È stata aggiornata l'API SwipeToReveal Material3 di Wear Compose nel seguente modo: sono stati aggiunti i parametri primaryAction, onFullSwipe, secondaryAction, undoPrimaryAction, undoSecondaryAction e hasPartiallyRevealedState al composable SwipeToReveal; è stata rimossa la possibilità di personalizzare positionalThreshold e animationSpec da RevealState; sono stati rimossi lastActionType, revealThreshold e la larghezza da RevealState; è stato modificato il costruttore RevealState in modo che accetti un RevealDirection anziché le ancore; sono state rimosse le funzioni createRevealAnchors, le ancore e bidirectionalAnchors; le funzioni SwipeToRevealScope primaryAction, secondaryAction, undoPrimaryAction e undoSecondaryAction sono state rinominate in PrimaryActionButton, SecondaryActionButton, UndoActionButton e sono state convertite in funzioni Composable; RevealActionType è stato contrassegnato come interno. (I885d0).
  • Ulteriore aggiornamento dell'API SwipeToReveal come segue: il nome di onFullSwipe è stato rinominato in onSwipePrimaryAction; il nome di SwipeToRevealNonAnchoredSample è stato rinominato per indicare l'utilizzo del parametro hasPartiallyRevealedState; è stato rimosso actionButtonHeight, poiché il valore predefinito è l'altezza predefinita del pulsante e l'altezza maggiore può essere impostata utilizzando un modificatore; è stato rimosso SmallActionButtonHeight da SwipeToRevealDefaults; il parametro value nei costruttori RevealValue e RevealDirection è stato reso privato. (I465ce).

Correzioni di bug

  • È stato corretto il trattamento del EdgeButton di ScreenScaffold in modo che, dopo la rimozione di un elemento TransformingLazyColumn, il EdgeButton venga animato in posizione. (I6d366).
  • Le dipendenze di Wear Compose sulle librerie Compose sono state aggiornate alla versione 1.8.0. (I2ef3f).
  • È stato aggiornato il movimento dell'elemento CircularProgressIndicator indeterminato in modo che non regredisca più temporaneamente. (Ieddb1).
  • È stato corretto un bug SwipeDismissableNavHost: l'attenzione non passava correttamente dopo lo scorrimento verso il retro, causando l'errore dell'input rotatorio (per API 36 e versioni successive, che utilizzano il pulsante Indietro predittivo). (Ieddb1).
  • Documentazione modificata per l'API Hierarchical Focus (Idf2ff).
  • È stata aggiornata la documentazione di Button e Card per indicare in che modo containerPainter e disabledContainerPainter sostituiscono containerColor e disabledContainerColor (I4a453).
  • È stata ripristinata una modifica a TimeText nella release precedente che spostava BroadcastReceiver in un thread di lavoro, perché causava problemi per le app che gestiscono il proprio threading durante la navigazione. (I34d02).
  • Sono stati aggiornati i Sample di Picker per rimuovere le chiamate remember non necessarie e utilizzare rememberUpdatedState in Picker per ricordare l'ultima funzione lambda contentDescription. (Icb5b1).
  • Sono stati aggiornati gli stili di testo in TimePicker e DatePicker in modo che le modifiche ai caratteri non causino più il troncamento. (I26194).
  • ListHeader e ListSubHeader ora impostano l'allineamento del testo predefinito rispettivamente su allineamento al centro e allineamento all'inizio. (I78339).
  • Sono stati aggiornati i sample e le demo di scorrimento per rivelare di Material e Foundation per annunciare le azioni di accessibilità personalizzate (le azioni personalizzate devono essere aggiunte come semantica ai contenuti, non al composable SwipeToReveal stesso). (Ie92a3).
  • È stato aggiornato il valore predefinito MaxLines impostato sui contenuti EdgeButton in base alle dimensioni: ora è 1 per extra small, 2 per small e medium e 3 per large. (Ie35f6).
  • È stata semplificata LocalReduceMotion in modo che l'osservatore venga registrato una sola volta, per migliorare il rendimento. (Ib1979).
  • È stato ridotto al minimo il numero di riduzioni in ScrollIndicator per migliorare le prestazioni. (Ia7a67).
  • È stato corretto un bug in TransformingLazyColumn, per cui l'elemento visibile in alto nell'elenco non veniva ridimensionato correttamente quando EdgeButton raggiungeva la sua altezza completa. (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 rilasciato. La versione 1.0.0-alpha37 contiene questi commit.

Modifiche all'API

  • scrollTransform è stato rimosso dall'API pubblica. Utilizza la combinazione dei modificatori transformedHeight e graphicsLayer se hai bisogno della stessa funzionalità. (Ie181d)
  • I composabili ImageButton e ImageCard sono stati sostituiti rispettivamente con sovraccarichi Button e Card/TitleCard. imageButtonColors è stato rinominato in buttonWithContainerPainterColors e imageCardColors in cardWithContainerPainterColors. Sono stati aggiunti ButtonDefaults.scrimBrush e CardDefaults.scrimBrush pubblici. I pulsanti imageBackgroundGradientStartColor e imageBackgroundGradientEndColor sono stati rinominati in scrimGradientStartColor e scrimGradientEndColor. CardDefaults.ImageContentPadding rinominato in CardDefaults.CardWithContainerPainterContentPadding (I7b8b6)
  • Picker e PickerGroup ora prendono contentDescription come lambda per evitare ricostruzioni non necessarie. (I002dd)

Correzioni di bug

  • È stato risolto un problema per cui il carattere CircularProgressIndicator indeterminato tremolava 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 scansione massimo in OpenOnPhoneDialog in modo che il testo predefinito "Controlla lo smartphone" non venga tagliato con le dimensioni dei caratteri più grandi. (I90af9)

Versione 1.0.0-alpha36

9 aprile 2025

androidx.wear.compose:compose-material3:1.0.0-alpha36 viene rilasciato. La versione 1.0.0-alpha36 contiene questi commit.

Modifiche all'API

  • ButtonDefaults.imageBackgroundButtonColors sostituito con ImageButton, ButtonDefaults.imageButtonColors, ButtonDefaults.containerPainter e ButtonDefaults.disabledContainerPainter. E modifiche simili per la scheda. I pittori vengono rimossi da ButtonColors e CardColors. (I8c6a1)
  • Segnaposto aggiornati per semplificare l'API. Ora forniamo due modificatori: Modifier.placeholderShimmer per applicare un effetto di sfarfallio a livello di componente e Modifier.placeholder per applicare una maschera sui contenuti non caricati (Iaee7a)

Correzioni di bug

  • Abbiamo integrato il movimento scorrente in ScrollIndicator. (Icfb7f)
  • Risolvere i problemi relativi agli sfondi vuoti e alle finestre di dialogo mancanti quando vengono lanciate le finestre di dialogo Material 3. (Ice597)
  • Sono stati risolti i problemi in FadingExpandingLabel quando il testo si estende su più righe. (I04eb7)
  • È stato aggiornato il padding tra le etichette principali e secondarie sui pulsanti. (I99b7b)
  • ArcLarge è stato ridotto da 20sp a 18sp e le spaziature tra le lettere su ArcLarge e ArcSmall sono state aggiornate. ConfirmationDialog/OpenOnPhoneDialog ora utilizzano il valore predefinito ArcLarge anziché sostituirlo con 18sp. (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 rilasciato. La versione 1.0.0-alpha35 contiene questi commit.

Modifiche all'API

  • Il AlertDialog padding superiore ora è 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 in PagerScaffoldDefaults.FadeOutAnimationSpec. Il parametro pagina in AnimatedPage è stato rinominato in pageIndex. (I701f2)
  • La denominazione di TransformingLazyColumn è stata aggiornata da SurfaceTransformation a applyTransformation, suddivisa in applyContainerTransformation e applyContentTransformation, e createBackgroundPainter è stato rinominato in createContainerPainter. Ulteriori aggiornamenti dei nomi di TransformationSpec e ResponsiveTransformationSpec. (I1c534)
  • AppScaffold backgroundColor è stato rinominato in containerColor. (I4e63f)

Correzioni di bug

  • È stato risolto un problema in FadingExpandingLabel per cui il testo non si espandeva sempre correttamente. (I0e773)
  • La dimensione di ArcLarge è stata ridotta da 20 sp a 18 sp e le spaziature tra le lettere di ArcLarge e ArcSmall sono state aggiornate. ConfirmationDialog/OpenOnPhoneDialog ora utilizza il valore predefinito ArcLarge anziché sostituirlo con 18sp. (Id39a8)
  • È stata aggiornata l'animazione dell'intestazione in base a DatePicker e TimePicker, in modo che l'animazione di dissolvenza in entrata e in uscita agisca come un'animazione con effetto molla. (I68963)
  • PagerScaffold è stato ottimizzato evitando la lettura di currentPageOffsetFraction nel composable AnimatedPage. (I433ef)
  • Tutte le scale di tipo sono state aggiornate in modo da avere numeri proporzionali per impostazione predefinita, perché questo è considerato il caso d'uso più frequente e l'impostazione predefinita di tipo tabulare ha comportato uno spazio eccessivo tra determinate coppie di numeri. TimePicker e DatePicker continuano ad applicare FontFeatureSetting=tnum per i numeri tabulari. (I88929)
  • È stato corretto lo stato attivo iniziale dell'input RSB per TimePicker e DatePicker. (I1c773)
  • Il testo predefinito su OpenOnPhoneDialog è stato aggiornato in "Controlla lo smartphone". (I00a3f)
  • Aggiornamento dei pesi per ArcLarge e ArcMedium da 600 a 599 per aggirare un problema in cui il peso 600 viene trattato come grassetto (I2a51d)
  • Aggiorna le spaziature interne SwipeToReveal tra i contenuti e i pulsanti di azione, nonché la spaziatura 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 rilasciato. La versione 1.0.0-alpha34 contiene questi commit.

Modifiche all'API

  • PagerScaffold non emette più un componente Pager, ma deve essere fornito tramite il composable content. AnimatedPage e snapWithSpringFlingBehaviour sono ora pubblici e possono essere utilizzati insieme a Wear Foundation Pager per ottenere il comportamento precedente di M3 PagerScaffold. (vedi gli esempi aggiornati). (Ia4724)
  • È stato aggiornato PagerState, rimuovendo Compose Foundation PagerState come classe di base e aggiungendo le proprietà currentPage, currentPageOffsetFraction e pageCount. È stata aggiornata l'interfaccia GestureInclusion e il metodo è stato rinominato ignoreGestureStart. (I4ae07)
  • I parametri dell'angolo di scansione LevelIndicator ora sono annotati con FloatRange(0, 360) (I7e636)
  • Abbiamo aggiunto CurvedModifier.clearAndSetSemantics per fornire un mezzo per disattivare la semantica curva. CurvedText continua a impostare per impostazione predefinita la descrizione dei contenuti sul testo, ma timeTextCurvedText e timeTextSeparator ora non annunciano i loro contenuti. (I4b568)
  • A AppScaffold sono stati aggiunti i parametri di colore di sfondo e dei contenuti predefiniti. (I56652)
  • La gestione predefinita dei gesti di scorrimento di HorizontalPager è stata rinominata in PagerDefaults.gestureInclusion. Ora il comportamento predefinito è ignorare solo i gesti di scorrimento che iniziano sul bordo sinistro della prima pagina e solo quando TalkBack è disattivato. In altri casi, il comportamento predefinito è che i gesti di scorrimento non verranno ignorati dal selettore pagine, pertanto non saranno disponibili per gli handler di scorrimento per chiudere. (Iee486)
  • È stato aggiunto un parametro SurfaceTransformation ai componenti di intestazione di pulsanti, schede e elenchi, in modo che possano applicare diverse trasformazioni di sfondo e contenuti quando vengono utilizzati in contenitori che modificano l'aspetto degli elementi in base alla loro posizione, ad esempio TransformingLazyColumn. (Iabe3f)
  • Abbiamo aggiornato le proprietà "public const val" nella nostra API Wear Compose Material3 in "public val" per evitare l'inserimento in linea dei valori. (Ib0f32)
  • È stato aggiunto il supporto di una zona di scorrimento laterale a SwipeToReveal. Il comportamento predefinito di Foundation SwipeToReveal ora è di non consentire lo scorrimento quando il gesto inizia dal bordo. Il comportamento predefinito di SwipeToReveal’ di Material3 ora è di non consentire lo scorrimento quando il gesto inizia dal bordo, quando SwipeDirection è impostato su una sola direzione. (I32ef0)
  • È stato aggiunto il composable FadingExpandingLabel, che consente di attenuare il testo con animazione riga per riga. (Ic60fa)
  • TransformingLazyColumn ora utilizza contentPadding vuoto per impostazione predefinita anziché mettere gli elementi primo e ultimo al centro. (I77ab7)
  • SwipeToReveal di rememberRevealState è stato rimosso dalla raccolta Wear Compose Material3. (I8c0e0)

Correzioni di bug

  • Le librerie Wear Compose sono state aggiornate al compilatore Kotlin 2.0. (I2de79)
  • Il supporto per ScrollIndicator e PageIndicator non rotondi è stato rimosso da Material3. Inoltre, il supporto degli schermi quadrati non fa più parte dei requisiti di Wear OS. Per ulteriori informazioni, consulta la guida introduttiva. (I9a852)
  • Il carattere CurvedTextStyle utilizzato in ConfirmationDialogDefaults e OpenOnPhoneDialogDefaults è stato aggiornato in modo da utilizzare la tipografia ArcLarge con dimensioni 18sp e spaziatura tra le lettere 1.8sp. (Ic9ced)
  • Card, ListHeader, RadioButton, CheckboxButton, SwitchButton non limitano più l'altezza dei relativi contenuti per impostazione predefinita. Se necessario, utilizza Modifier.height(IntrinsicSize.Min) per ripristinare il comportamento precedente. (I80bb8)
  • Abbiamo aggiornato i colori predefiniti TimeText e ScrollIndicator in modo da includere più tonalità di grigio, perché l'utilizzo di OnBackground (bianco) aveva un impatto visivo troppo elevato rispetto ad altri contenuti sullo schermo, come i titoli. (I8b36f)
  • Abbiamo ridotto il timeout per l'animazione di TimeText e ScrollIndicator nei componenti dello 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 SwipeToReveal utilizzando il modificatore edgeSwipeToDismiss. (I02b07)
  • Abbiamo aggiunto un'intestazione a DatePicker e TimePicker in TalkBack in modo che l'utente venga informato di scorrere per impostare la data/l'ora. (Id738d)
  • AnimatedText ora segue l'impostazione Riduci movimento. (Ib6578)
  • L'ottimizzazione per l'utilizzo di AppScaffold per visualizzare i contenuti della finestra di dialogo è 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 rilasciato. La versione 1.0.0-alpha33 contiene questi commit.

Modifiche all'API

  • Abbiamo rimosso il parametro etichetta da primaryAction e secondaryAction di SwipeToRevealScope. La semantica delle azioni personalizzate deve essere aggiunta direttamente allo sviluppatore dai contenuti del componente SwipeToReveal. (Ia67f3)
  • Abbiamo rimosso i prefissi "Button" da dimensioni, stili di testo e funzioni di colore in IconToggleButtonDefaults e TextToggleButtonDefaults (I5471d)
  • Abbiamo rimosso il gruppo LocalMinimumInteractiveComponentEnforcement sperimentale (I4ad8a)
  • Abbiamo sostituito il DSL PickerGroupScope con un composable. Di conseguenza, abbiamo rimosso il metodo pickerGroupItem da PickerGroupScope e abbiamo aggiunto @Composable PickerGroupItem, che deve essere utilizzato per aggiungere un selettore a PickerGroup. Abbiamo anche aggiornato il tipo del parametro "content" di PickerGroup in @Composable PickerGroupScope.() -> Unit. (Ic6aec)
  • Abbiamo aggiunto un sovraccarico LevelIndicator per i valori frazionari e un prefisso Stepper a quei sovraccarichi che includono un parametro di intervallo (adatti all'utilizzo con il componente Stepper). (If4234)
  • Abbiamo aggiunto TransformingLazyColumn TransformationSpec all'API, che consente di definire le trasformazioni esatte che vengono applicate agli elementi durante lo scorrimento del TLC. (I21856)
  • Abbiamo aggiornato IconButtonShapes, IconToggleButtonShapes, TextButtonShapes e TextToggleButtonShapes in modo che siano coerenti con le classi compose/material3 (I5a081)
  • Abbiamo aggiunto un parametro overscrollEffect a ScalingLazyColumn, TransformingLazyColumn e ScreenScaffold. (I0cee8)
  • Abbiamo rinominato il parametro swipeDirection in revealDirection in rememberRevealState. (I7472f)
  • Wear Pager ora ha il proprio PagerScope anziché utilizzare Compose PagerScope. (I9195b)
  • Abbiamo rimosso il composable LinearProgressIndicatorContent. Utilizza direttamente LinearProgressIndicator in modo che le modifiche ai valori vengano animate per impostazione predefinita. (I2c4ad)
  • Abbiamo rimosso il composable CircularProgressIndicatorStatic e aggiunto una funzione DrawScope pubblica drawCircularProgressIndicator con la stessa funzionalità. Utilizza direttamente CircularProgressIndicator in modo che le modifiche vengano animate per impostazione predefinita, ma crea il tuo composable da drawCircularProgressIndicator se sono necessarie animazioni personalizzate. (Ie762f)
  • Abbiamo riordinato i parametri in DrawScope.drawCircularProgressIndicator per spostare il parametro targetProgress più in alto. (I8ab92)
  • L'API OpenOnPhoneDialog è stata aggiornata per maggiore chiarezza e coerenza con gli altri dialoghi. Il parametro show è stato rinominato in visible e curvedText ora viene fornito dall'utente che chiama anziché avere un valore predefinito. (Idec2d)
  • Abbiamo rinominato openOnPhoneCurvedText in openOnPhoneDialogCurvedText (I65bdd)
  • Abbiamo aggiunto ScrollIndicatorColors per fornire colori personalizzati a ScrollIndicator. (I9eb8c)
  • Consente la configurazione del colore utilizzato per disegnare uno sfondo dietro TimeText. (I9f5d9)
  • Le tipografie ArcLarge, ArcMedium e ArcSmall sono state aggiornate in CurvedTextStyle (Iffc41)
  • Abbiamo rimosso ScreenScaffoldDefaults.contentPaddingWithEdgeButton. (Ia923e)
  • Abbiamo aggiunto errorDim a ColorScheme per gli errori di alta priorità o le azioni di emergenza, come avvisi di sicurezza, overlay di finestre di dialogo non riusciti o pulsanti di arresto. (I70998)

Correzioni di bug

  • Abbiamo bloccato wear.compose.material3 alla versione 1.15.0 di androidx.core.core (I132e9)
  • Abbiamo migliorato il rendimento di Dialog utilizzando AppScaffold per sovrapporre i dialoghi ad altri contenuti dello schermo (I1b9a4)
  • È stato ridotto il 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 rilasciato. La versione 1.0.0-alpha32 contiene questi commit.

Modifiche all'API

  • In CurvedTextStyle, abbiamo suddiviso la spaziatura tra le lettere in spaziatura in senso orario e spaziatura in senso antiorario. Questo è necessario perché le lettere in senso orario si espandono dalla linea di base, mentre quelle in senso antiorario si restringono (quindi è necessaria una spaziatura delle lettere più ampia) (I4b848)
  • Abbiamo aggiornato IconButtonShapes, IconToggleButtonShapes, TextButtonShapes e TextToggleButtonShapes per 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 pressedShapeCornerSizeFraction dal metodo variantAnimatedShape in IconToggleButton e TextToggleButton (I58a65)
  • Stiamo introducendo miglioramenti al rendering del testo curvo (incluso TimeText) che non sono compatibili con gli schermi non rotondi. Anche il supporto di schermi non rotondi non fa più parte dei requisiti di Wear OS. Per ulteriori informazioni, consulta la guida introduttiva. (I1cc1c)
  • Abbiamo aggiornato ButtonGroupScope di ButtonGroup, sostituendo ButtonGroupItem basato su DSL con Modifier.weight, Modifier.minWidth e Modifier.enlargeOnPress. (I16c3c)
  • Nell'API ButtonGroup abbiamo aggiornato il nuovo ButtonGroupScope basato su modificatori: enlargeOnPress ora si chiama animateWidth e accetta un InteractionSource anziché MutableInteractionSource perché non è necessario modificarlo. Abbiamo anche aggiunto la costante pubblica ButtonGroupDefaults.DefaultMinWidth, la larghezza minima predefinita dei pulsanti in un ButtonGroup. (Ie27ec)
  • Abbiamo aggiornato ListHeaderDefaults.contentColor in modo che inizi con una lettera minuscola perché è una proprietà componibile (I125a5)
  • Abbiamo aggiunto un parametro di descrizione dei contenuti a SliderDefaults.DecreaseIcon e SliderDefaults.IncreaseIcon, con valori predefiniti appropriati (I2e1a7)
  • Abbiamo rinominato il parametro spacing in Picker e PickerGroup in verticalSpacing (Ib75cc)
  • Abbiamo rimosso ConfirmationDialogDefaults.successText e failureText perché ci si aspetta che i chiamanti di ConfirmationDialog forniscano stringhe con più contesto. Inoltre, confirmationCurvedText è stato rinominato in confirmationDialogCurvedText. Infine, il parametro Dialog show è stato rinominato in visible per coerenza con altri aggiornamenti recenti alle finestre di dialogo. (I10074)
  • IconButton ha rinominato disabledImageOpacity in DisabledImageOpacity. (I5f94a)

Correzioni di bug

  • Abbiamo corretto un bug nell'animazione EdgeButton in modo che in ogni frame vengano utilizzate le dimensioni corrette (Id3b58)
  • È stato risolto un problema relativo al mancato funzionamento di animateContentSize con Button. (Ib18a0)
  • Abbiamo modificato la scala del tipo di carattere Titolo grande in modo che abbia le dimensioni del carattere 18dp (Ic9d52)
  • Abbiamo aggiornato la spaziatura e le dimensioni delle icone di AlertDialog (Iac28c)
  • Abbiamo corretto le incoerenze nei breakpoint per gli schermi di grandi dimensioni (detti così se sono pari o superiori a 225 dp) (I36474)
  • È stato corretto un piccolo bug nel posizionamento dei pulsanti (I952c2)

Versione 1.0.0-alpha31

15 gennaio 2025

androidx.wear.compose:compose-material3:1.0.0-alpha31 viene rilasciato. La versione 1.0.0-alpha31 contiene questi commit.

Modifiche all'API

  • Abbiamo aggiornato tutte le librerie Wear Compose alla modalità "API esplicita". (Iebf9f)
  • Abbiamo aggiornato le API ScreenScaffold e EdgeButton per semplificare la specifica dei margini dei contenuti nelle schermate che includono un EdgeButton. Nella nuova API, il size di EdgeButton viene passato solo a EdgeButton e ScreenScaffold accetta un parametro edgeButtonSpacing per lo spazio tra EdgeButton e i contenuti dell'elenco. (I424fd)
  • In DatePicker, abbiamo rinominato i parametri minDate in maxDate e minValidDate in maxValidDate. In DatePickerColors, abbiamo rinominato il parametro selectedPickerContentColor in activePickerContentColor e unselectedPickerContentColor in inactivePickerContentColor (Iba17b)
  • Abbiamo aggiornato i valori predefiniti di ArcProgressIndicator in strokeWidth=6dp e consigliato diameter = 81.24% di altezza dello schermo (I6f248)
  • Abbiamo aggiornato l'API Confirmation in modo che rifletta il suo utilizzo come finestra di dialogo. Il composable ora si chiama ConfirmationDialog, con aggiornamenti associati alla denominazione dei colori e delle classi predefinite. Abbiamo anche rinominato il parametro show in visible per la compatibilità con altre API di animazione di Compose. Inoltre, abbiamo reso disponibili ConfirmationDialogContent, SuccessConfirmationDialogContent e FailureConfirmationDialogContent per le situazioni in cui gli sviluppatori devono personalizzare le animazioni delle finestre di dialogo di apertura/chiusura. (Iaeb33)
  • Abbiamo aggiornato CircularProgressIndicatorContent in CircularProgressIndicatorStatic (la variante non animata di CircularProgressIndicator) in modo che ora possa essere utilizzato per creare CircularProgressIndicator con animazioni personalizzate. (I1346f)
  • Abbiamo corretto l'ordine dei parametri in ArcProgressIndicator, mettendo il parametro del modificatore per primo (I4656a)
  • È stata migliorata l'API SwipeToReveal per ricevere un parametro di slot di testo per le etichette delle azioni (tranne l'azione secondaria) e per rimuovere i parametri di etichetta dall'azione di annullamento (I5b3db)

Correzioni di bug

  • Abbiamo corretto un bug per cui le vibrazioni LongPress venivano attivate più volte in Button, Card, IconButton, TextButton (Ia8b0f)
  • Modifiche all'esperienza utente di AlertDialog: sugli schermi di grandi dimensioni, i pulsanti di conferma e di chiusura sono ora più piccoli. Inoltre, è stata aumentata la spaziatura sotto i pulsanti di conferma e di chiusura. (I4f066)
  • Abbiamo modificato le specifiche di animazione dell'etichetta del pulsante di azione del componente SwipeToReveal. (Ib87fb)
  • È stato modificato SwipeToReveal per espandere il contenitore contemporaneamente alla visualizzazione del testo. (I44cf8)
  • È stato migliorato SwipeToReveal per eseguire il feedback aptico quando lo scorrimento supera la soglia in cui viene eseguita l'azione principale. (I23efe)
  • Abbiamo aggiornato SwipeToReveal in modo che mostri tre puntini per l'overflow del testo per impostazione predefinita, per le azioni principali e di annullamento. (I71f5a)
  • Abbiamo risolto un problema che causava il tremolio delle animazioni ButtonGroup. (I63f8f)
  • Abbiamo aggiunto la semantica del testo a AnimatedText (I6063c)
  • La finestra di dialogo ora reimposta la scalabilità dello sfondo quando viene rimossa dalla composizione (senza questa correzione, la schermata di lancio potrebbe essere stata lasciata in uno stato ridotto) (Id24ac)
  • Abbiamo aggiunto un'animazione di morphing delle forme ai pulsanti del componente Stepper (Id6ed3)

Versione 1.0.0-alpha30

11 dicembre 2024

androidx.wear.compose:compose-material3:1.0.0-alpha30 viene rilasciato. La versione 1.0.0-alpha30 contiene questi commit.

Modifiche all'API

  • Il modificatore scrollTransform per TransformingLazyColumn è stato sottoposto a refactoring, il che ha attivato una modifica dell'API. (I0c6dc)
  • Abbiamo aggiornato IconToggleButtonShapes e TextToggleButtonShapes in modo da avere due parametri di forma diversi, uncheckedPressed e checkedPressed (I85dbd)
  • Le opzioni di mese/giorno non valide sono ora visibili in DatePicker, con un nuovo invalidPickerContentColor, quando si utilizzano minDate o maxDate. (If4541)
  • Abbiamo aggiornato l'API Stepper per fornire gli slot increaseIcon e decreaseIcon, i cui contenuti possono essere creati come di consueto dal componente componibile Icon. (Id35da)
  • Abbiamo aggiornato dynamicColorScheme rimuovendo il parametro facoltativo defaultColorScheme e ora restituiamo ColorScheme nullable. Ciò significa che chi chiama deve gestire esplicitamente il caso di riserva quando non viene fornita una combinazione di colori dinamica. (I6d62e)
  • Abbiamo aggiornato le dimensioni delle icone in ButtonDefaults per l'utilizzo con CompactButton. Un CompactButton contenente solo un'icona deve utilizzare ButtonDefaults.SmallIconSize = 24.dp, mentre un CompactButton contenente sia l'icona sia il testo deve utilizzare ButtonDefaults.ExtraSmallIconSize = 20.dp. È consigliabile che CompactButton inserisca un a capo nei contenuti (anziché riempire la larghezza massima) e i sample sono stati aggiornati per dimostrarlo. (I0582c)
  • Abbiamo aggiunto EdgeButtonDefaults con le dimensioni consigliate per le icone per i 4 diversi EdgeButtonSizes. Inoltre, abbiamo aggiornato il layout di EdgeButton in modo che abbia una spaziatura inferiore leggermente più grande rispetto a quella superiore, il che migliora l'aspetto sia dei contenuti di icone che di testo. (Id772a)
  • Abbiamo aggiunto il movimento a LinearProgressIndicator e abbiamo esposto LinearProgressIndicatorContent, che fornisce i contenuti visivi senza animazioni. (Idee99)
  • Abbiamo aggiunto un nuovo composable CircularProgressIndicatorContent per visualizzare i contenuti visivi di CircularProgressIndicator senza animazioni. (Ie33d4)
  • TransformingLazyColumn ora fornisce la composizione LocalTransformingLazyColumnItemScope locale che Card, Button e ListHeader ora utilizzano per trasformarsi automaticamente quando vengono inseriti in un TransformingLazyColumn. I chiamanti possono disattivare il morphing automatico utilizzando il nuovo wrapper TransformExclusion. (I1652f)
  • Abbiamo aggiornato il tipo di ButtonDefaults.shape in RoundedCornerShape (Iccdf2)

Correzioni di bug

  • Abbiamo corretto un bug per rispettare l'alpha esistente sullo sfondo per TimeText (I1eb60)
  • Per impostazione predefinita, nella nostra tipografia abbiamo impostato TextMotion su Animated per evitare il jitter del testo dovuto all'aggancio dei glifi delle lettere ai confini dei pixel durante le operazioni di ridimensionamento. (I626fa)
  • Abbiamo aggiornato l'aspetto del simbolo ScrollIndicator aumentandone la larghezza e la spaziatura per migliorarne la visibilità. (Ied7cb)
  • Abbiamo corretto un bug in Modifier.scrollTransform relativo all'aggiunta/rimozione/spostamento di elementi. (I6830f)
  • Abbiamo risolto un problema di animazione dei pulsanti rotondi per i tocchi brevi (in precedenza, la durata minima dell'animazione non veniva sempre rispettata). (I757a7)
  • Abbiamo aggiornato l'angolo di scansione per LevelIndicator al 20% (ovvero 72 gradi). (Idde5c)
  • Abbiamo corretto il posizionamento di ScrollIndicator quando ScalingLazyColumn veniva utilizzato con AutoCenteringParams. (I387dd)
  • Abbiamo aggiornato i colori e la tipografia di ListHeader e ListSubHeader. Inoltre, i colori per i controlli di attivazione/disattivazione su CheckboxButton e SwitchButton. (I39817)
  • Abbiamo corretto il posizionamento di ScrollIndicator in LazyColumn e ScalingLazyColumn con ContentPadding. (I2bc51)
  • Abbiamo corretto un bug riscontrato nell'animazione di avanzamento di OpenOnPhoneDialog utilizzando il nuovo CircularProgressIndicatorContent. (I3e443)
  • Abbiamo aggiornato HorizontalPagerScaffold e VerticalPagerScaffold per disattivare le animazioni quando è attivata la riduzione del movimento (Iaaf68)
  • Abbiamo implementato un'animazione separata per gli indicatori di avanzamento circolari quando l'avanzamento supera il 100%. (I47135)
  • Abbiamo corretto un bug per cui EdgeButton poteva 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 rilasciato. La versione 1.0.0-alpha29 contiene questi commit.

Modifiche all'API

  • Abbiamo aggiornato TimeText per fornire contenuti predefiniti che mostrano l'ora. (Id23b3)
  • Abbiamo semplificato ScrollInfoProvider per PagerState rimuovendo il parametro orientation, che non è più necessario. Il nuovo comportamento prevede che TimeText rimanga invariato sia per la paginazione orizzontale che verticale. (I71767)
  • LocalHapticFeedback ora fornisce un'implementazione predefinita di HapticFeedback quando l'API Vibratore indica che le tecnologie aptica sono supportate. I seguenti elementi sono stati aggiunti a HapticFeedbackType: Confirm, ContextClick, GestureEnd, GestureThresholdActivate, Reject, SegmentFrequentTick, SegmentTick, ToggleOn, ToggleOff, VirtualKey. I componenti di Wear Compose che possono essere selezionati con un clic prolungato, come Button, IconButton, TextButton e Card, ora eseguono il feedback aptico LONG_PRESS quando è stato fornito un gestore del clic prolungato. (I5083d)

Correzioni di bug

  • Abbiamo aggiornato la richiesta di conferme. (I04bff)
  • Abbiamo aggiornato la dipendenza API minima a 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 LevelIndicator, che ora viene visualizzato correttamente quando il livello è zero. (Ie95a4)
  • Abbiamo aggiornato le animazioni HorizontalPageIndicator e VerticalPageIndicator. (I5c8f3)
  • Abbiamo aggiunto un'animazione di riduzione a punto al carattere ArcProgressIndicator indeterminato. (I9fd51)

Versione 1.0.0-alpha28

30 ottobre 2024

androidx.wear.compose:compose-material3:1.0.0-alpha28 viene rilasciato. La versione 1.0.0-alpha28 contiene questi commit.

Modifiche all'API

  • Abbiamo aggiunto una variante ad arco all'indicatore di avanzamento circolare indeterminato (I2efc1)
  • Abbiamo reso pubblici i composabili AlertDialogContent e Dialog che compongono l'API AlertDialog, in modo che sia possibile aggiungere personalizzazioni, se necessario (ad esempio personalizzare l'animazione AlertDialog mantenendo il layout dei contenuti consigliato). Inoltre, abbiamo aggiunto i parametri Modifier e Color agli elementi EdgeButton, ConfirmButton e DismissButton di AlertDialogDefaults. (I4eb71)
  • Abbiamo aggiornato l'API Placeholder come segue: abbiamo rinominato PlaceholderState.startPlaceholderAnimation in PlaceholderState.animatePlaceholder, PlaceholderState.isShowContent in PlaceholderState.isHidden e PlaceholderDefaults.shape in PlaceholderDefaults.Shape; abbiamo rinominato il parametro painter in painterWithPlaceholderOverlayBackgroundBrush in originalPainter; abbiamo modificato la visibilità di PlaceholderState.placeholderProgression da pubblica a interna e lo abbiamo rinominato in placeholderShimmerProgression; abbiamo aggiunto costanti della durata dell'animazione del segnaposto a PlaceholderDefaults. (Ie5a59)
  • Abbiamo aggiornato l'API EdgeButton come segue: abbiamo rinominato il parametro su ScreenScaffold da bottomButton a edgeButton; abbiamo definito EdgeButtonSize come una classe di valori. (Ieef15)
  • Abbiamo modificato la visibilità di copy() in pubblica nei classi di colori wear material3 (I0287f)

Correzioni di bug

  • È stata aggiunta una durata minima dell'animazione per IconToggleButton e TextToggleButton al clic (Ieb333)
  • È stata aggiunta una durata minima all'animazione delle forme IconButton e TextButton (Iebcee)
  • Stato dell'opzione di ripetizione corretto in DatePicker. (I3587c)
  • È stata aggiunta l'animazione per le finestre di dialogo di avviso e conferma. (I173b1)

Versione 1.0.0-alpha27

16 ottobre 2024

androidx.wear.compose:compose-material3:1.0.0-alpha27 viene rilasciato. La versione 1.0.0-alpha27 contiene questi commit.

Modifiche all'API

  • Abbiamo aggiornato ScreenScaffold e ScrollIndicator in seguito alla ridenominazione di Wear Compose Foundation LazyColumn in TransformingLazyColumn. (I0608b)
  • Il parametro preferredHeight di EdgeButton è stato rinominato in buttonSize e il relativo valore può essere scelto solo tra quattro costanti nella classe di valori EdgeButtonSize appena introdotta. (Icdd70)
  • Abbiamo modificato il nome di ListSubheader in ListSubHeader e aggiunto valori predefiniti accessibili pubblicamente per ListHeader e ListSubHeader. (I96730)
  • Abbiamo aggiunto nuovi componenti HorizontalPagerScaffold e VerticalPagerScaffold per Wear che forniscono nuove animazioni e coordinazione tra i componenti di testo dell'ora e dell'indicatore di pagina. (Iff7d0)
  • Abbiamo aggiunto il supporto del controllo rotativo a HorizontalPagerScaffold e VerticalPagerScaffold, consentendo agli utenti di navigare nei cercapersone utilizzando dispositivi di input rotatori. (I9770d)
  • Abbiamo apportato modifiche all'API MotionScheme per semplificarne l'utilizzo e migliorarne la coerenza. Sono state rimosse le funzioni remember in linea e sono stati spostati gli schemi di movimento integrati in un oggetto companion MotionScheme dedicato. I simboli standardMotionScheme e expressiveMotionScheme sono stati rinominati in standard ed espressivo. (I5fd45)
  • Abbiamo aggiunto il supporto per una combinazione di colori dinamica basata sui colori di sistema. (I073e9)
  • Abbiamo aggiornato il cursore in base alle ultime specifiche UX. (I622bb)

Correzioni di bug

  • Abbiamo aggiornato la tipografia e i margini per i componenti della scheda. (I3ae48)
  • In AlertDialog abbiamo modificato il padding tra 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 rilasciato. La versione 1.0.0-alpha26 contiene questi commit.

Modifiche all'API

  • Abbiamo aggiornato l'API e l'aspetto di HorizontalPageIndicator e aggiunto VerticalPageIndicator per l'utilizzo con VerticalPager (Ic9309)
  • AlertDialog ora supporta la possibilità di omettere il pulsante inferiore predefinito dalla variazione della serie di pulsanti, per i layout personalizzati in cui EdgeButton non è richiesto. (I34fa9)
  • Abbiamo aggiunto un componente SwipeToReveal per Wear Material 3 (Ic38b2)
  • Abbiamo aggiunto il supporto per lo scorrimento bidirezionale in SwipeToReveal, per i rari casi in cui la schermata corrente non supporta lo scorrimento per chiudere. L'impostazione predefinita è ancora lo scorrimento per visualizzare solo con scorrimenti da destra a sinistra ed è vivamente consigliato di rispettare il comportamento predefinito per evitare conflitti con lo scorrimento per chiudere. (Ifac04)
  • Abbiamo rinominato il parametro buttonHeight di EdgeButton in preferredHeight. (I4fab3)
  • La versione di Kotlin è stata aggiornata alla 1.9 (I1a14c)
  • Abbiamo rinominato OpenOnPhoneDialogDefaults.Icon in OpenOnPhoneDialogDefaults.OpenOnPhoneIcon per evitare conflitti con Icon(I0f391)
  • Abbiamo aggiunto il supporto per ScrollIndicator in LazyColumn. (Ia546a)
  • Abbiamo aggiornato i valori predefiniti per TextToggleButton e IconToggleButton. (I7aaa9)
  • Abbiamo semplificato le API Picker e PickerGroup. (Id0653)
  • Abbiamo aggiunto CardDefaults.Shape e CardDefaults.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 dispositivo di scorrimento. (Ic3eec)

Correzioni di bug

  • Abbiamo aggiornato l'animazione dell'icona openOnPhone (I66f85)
  • Ora utilizziamo le icone di Google Symbols in Slider, TimePicker e DatePicker. (I46c7c)
  • Abbiamo aggiornato i margini in Confirmation e OpenOnPhoneDialog. (Iaa82e)

Versione 1.0.0-alpha25

18 settembre 2024

androidx.wear.compose:compose-material3:1.0.0-alpha25 viene rilasciato. La versione 1.0.0-alpha25 contiene questi commit.

Modifiche all'API

  • Abbiamo aggiunto un indicatore di avanzamento circolare indeterminato. (I427a7)
  • Abbiamo aggiunto il supporto per il superamento del progresso (>100%) sia per CircularProgressIndicator che per SegmentedCircularProgressIndicator. Quando l'avanzamento supera 1,0, viene indicato dal nuovo colore overflowTrack. (Iaaa3d)
  • I pulsanti rotondi IconToggleButton e TextToggleButton ora supportano una nuova variante di animazione delle forme, in cui forme diverse rappresentano gli stati selezionato, deselezionato e premuto. La precedente variante della forma animata per lo stato appena premuto continuerà a essere supportata. (I29f03)
  • Abbiamo rimosso il supporto per l'utilizzo di EdgeButton con Column, a causa della necessità di specificare esplicitamente l'altezza di EdgeButton in ScreenScaffold. (Ie353d)
  • Abbiamo aggiunto il supporto di Wear Compose LazyColumn con il nostro ScreenScaffold (e abbiamo aggiunto un'implementazione di ScrollInfoProvider per LazyColumnState). (Ib8d29)
  • Abbiamo combinato LocalTextMaxLines, LocalTextAlign e LocalTextOverflow in un'unica composizione LocalTextConfiguration locale per fornire una soluzione più scalabile in futuro. (I5edbc)
  • Abbiamo aggiunto arc-large come tipo di carattere aggiuntivo, riservato alle stringhe di testo brevi delle intestazioni nella parte superiore o inferiore dello schermo, ad esempio nelle sovrapposizioni di conferma. (I60e3e)
  • Abbiamo aggiunto valori predefiniti a Pulsante per le dimensioni consigliate delle icone grandi ed extra large e per il padding dei contenuti. (I84675)

Correzioni di bug

  • Abbiamo aggiornato i colori di IconButton e TextButton. (I48324)
  • Abbiamo modificato i sovraccarichi di base di Button in modo che siano allineati verticalmente al centro per garantire la coerenza con gli altri sovraccarichi. Per ripristinare il comportamento precedente, utilizza Modifier.align dal menu RowScope. (I66e57)

Versione 1.0.0-alpha24

4 settembre 2024

androidx.wear.compose:compose-material3:1.0.0-alpha24 viene rilasciato. La versione 1.0.0-alpha24 contiene questi commit.

Modifiche all'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 movimenti espressivi. (I54ff3)
  • Abbiamo aggiunto i componenti AppScaffold e ScreenScaffold alla libreria Material3, che includono funzionalità per coordinare il layering e le transizioni di TimeText e ScrollIndicator. AppScaffold fornisce un livello superiore di componenti di struttura che si trovano sopra tutte le schermate. Di conseguenza, l'aggiunta di TimeText a AppScaffold consente di mantenere il cursore in posizione mentre scorri da una schermata all'altra. Le schermate possono sostituire o nascondere il testo dell'ora. ScreenScaffold fornisce uno spazio per ScrollIndicator e anima automaticamente l'indicatore di scorrimento durante lo scorrimento, incluso il timeout per nascondere l'indicatore di scorrimento dopo un periodo di inattività. (I047d6)
  • Abbiamo aggiunto ScrollIndicator con il nuovo design Material3. Ha una dimensione fissa in base ai contenuti iniziali dell'elenco, per evitare variazioni di dimensioni quando i contenuti lazy vengono caricati nell'elenco. (Ic228d)
  • Abbiamo modificato l'API ScrollAway in modo che ScreenStage sia una classe di valori anziché una classe enum, per consentire l'aggiunta di fasi aggiuntive 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 al ScreenScaffold per un pulsante in basso (ad es. EdgeButton), che verrà visualizzato e ridimensionato in base ai contenuti in scorrimento (I032eb)
  • Abbiamo aggiunto Modifier.scrollTransform e Modifier.targetMorphingHeight per aggiungere effetti di movimento Material3 agli elementi in LazyColumn. (Ie229a)
  • Abbiamo aggiunto SegmentedCircularProgressIndicator come variante di CircularProgressIndicator. La variazione segmentata mostra un singolo valore di avanzamento in tutti i segmenti o mostra ogni segmento come attivo/disattivato. (I6e059)
  • Abbiamo aggiunto LinearProgressIndicator come alternativa a CircularProgressIndicator esistente. (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 pulsante EdgeButton) sotto una serie di opzioni. Entrambe le varianti hanno spazi per l'icona, il titolo e un testo aggiuntivo per fornire ulteriori dettagli. (Ieb873)
  • Abbiamo aggiunto OpenOnPhoneDialog, che deve essere utilizzato per indicare un'azione che continuerà sullo smartphone dell'utente. OpenOnPhoneDialog viene ignorata dopo un timeout specificato. (I978fd)
  • Abbiamo aggiunto Confirmation, un componente della finestra di dialogo con spazi per un'icona e un 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 TimeText per risolvere i problemi relativi alla sovrapposizione dei contenuti sottostanti e di TimeText, che impedivano la visualizzazione dell'ora. (Ia11fd)
  • Abbiamo aggiunto LevelIndicator, che mostra il valore di un'impostazione come il volume e può essere utilizzato con il componente Stepper esistente per creare una schermata del volume. LevelIndicator è simile a ScrollIndicator, ma viene visualizzato sul lato opposto dello schermo e ha una larghezza del tratto più ampia e un colore dell'indicatore diverso per impostazione predefinita. (I8a4ac)
  • Abbiamo aggiunto TimePicker, con layout per l'ora in formato 24 ore (con o senza secondi) o 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 text di TimeText. Se TimeText è composto da più elementi di testo, questo consente di controllare la distribuzione dello spazio. (I36700)
  • Abbiamo aggiunto RadioButton e SplitRadioButton: questi componenti semplificano l'API precedente combinando sia il controllo radio (Split)SelectableButton sia il controllo radio secondario (If7ae8)
  • Abbiamo aggiunto CheckboxButton e SplitCheckboxButton: questi componenti semplificano l'API precedente combinando sia il controllo (Split)ToggleButton sia il controllo casella di controllo secondario (Ia8f70)
  • Abbiamo aggiunto SwitchButton e SplitSwitchButton: questi componenti semplificano l'API precedente combinando sia il controllo (Split)ToggleButton sia il controllo Switch secondario (I0d349)
  • Abbiamo aggiornato la documentazione di AnimatedText per spiegare il comportamento di overshooting. (Iff30a)
  • Abbiamo aggiunto ButtonGroupper combinare 2 o 3 pulsanti in modo che le pressioni dei pulsanti producano un'animazione coordinata. (Ie27db)
  • Abbiamo aggiunto un'animazione facoltativa delle forme per IconButton e TextButton quando vengono premuti. (Iffca5)
  • Abbiamo aggiunto un'ulteriore variante di colore, FilledVariant, a Button, IconButton, TextButton, CompactButton e EdgeButton (I65fc3)
  • Abbiamo aggiunto il parametro forcedSize a ImageWithScrimPainter, in modo che gli sfondi delle immagini dei pulsanti mantengano le dimensioni del componente per impostazione predefinita. Se imposti forcedSize = null, viene adottato Painter.instrinsicSize. (Ic57af)
  • Abbiamo aggiunto il clic prolungato ai pulsanti (Ib613d)
  • È stato aggiunto il supporto dei clic lunghi anche a IconButton e TextButton. (I38891)
  • Il supporto dei clic lunghi è stato aggiunto a Schede. (I305d5)
  • Abbiamo aggiunto LocalTextMaxLines, LocalTextAlign, LocalTextOverflow come CompositionLocals e li abbiamo utilizzati come valori predefiniti dei parametri in Text. Ora i valori locali della composizione possono essere utilizzati da componenti come CheckboxButton, SwitchButton, RadioButton per implementare le indicazioni sull'esperienza utente, ma i parametri possono essere sostituiti dagli sviluppatori, se necessario. (Iab841)
  • Abbiamo aggiunto Placeholder per aiutarti a mascherare i contenuti di componenti come pulsanti e schede fino al caricamento dei dati. (I1a532)
  • Abbiamo aggiunto IconToggleButtonColors e TextToggleButtonColors per sostituire ToggleButtonColors, ora rimosso. (Ie0bf1)

Correzioni di bug

  • Abbiamo aggiornato Button, FilledTonalButton, OutlinedButton, ChildButton, CompactButton in modo da utilizzare i nuovi CompositionLocals LocalTextMaxLines, LocalTextAlign, LocalTextOverflow per implementare le indicazioni sull'esperienza utente. Se necessario, questi parametri possono essere sostituiti dagli sviluppatori direttamente in Testo (Ie51f7)
  • Abbiamo modificato la larghezza del tratto predefinita del LevelIndicator in 6dp per distinguerlo dal ScrollIndicator, che ha una larghezza del tratto di 4dp. (If6f63)
  • Abbiamo risolto un problema in TimeText in modo da supportare angoli di scansione più ampi. (Ie489f)
  • È stato risolto un problema durante la ricomposizione di EdgeButton. (I4cdca)
  • Sono stati corretti i layout dei pulsanti di attivazione/disattivazione suddivisi quando viene fornito il padding dei contenuti personalizzati. (Ia33d3)
  • I valori di avanzamento piccoli 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 rilasciato. La versione 1.0.0-alpha23 contiene questi commit.

Modifiche all'API

  • Abbiamo aggiornato le API ToggleButton e RadioButton in modo da poter configurare i colori disattivati. (If13a7)
  • Abbiamo aggiunto un nuovo CircularProgressIndicator per Material3. (Ib3bd7)

Correzioni di bug

  • Abbiamo corretto un bug per cui 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 rilasciato. La versione 1.0.0-alpha22 contiene questi commit.

Modifiche all'API

  • Abbiamo aggiornato Material3 ColorScheme. (I7b2b8)
  • Abbiamo aggiornato l'opzione Material3 Switch. Oltre ad alcune modifiche ai colori, il segno di spunta ora corrisponde a quello utilizzato per la casella di controllo. (Icac7b)

Correzioni di bug

  • Aggiorna tutte le demo di integrazione per utilizzare il nuovo modificatore rotaryScrollable. (I25090)

Versione 1.0.0-alpha21

17 aprile 2024

androidx.wear.compose:compose-material3:1.0.0-alpha21 viene rilasciato. La versione 1.0.0-alpha21 contiene questi commit.

  • Questa release è stata attivata a causa di un problema tecnico nella release precedente che ha causato la mancanza di jar di origine. Non ci sono nuovi commit in questa release.

Versione 1.0.0-alpha20

3 aprile 2024

androidx.wear.compose:compose-material3:1.0.0-alpha20 viene rilasciato. La versione 1.0.0-alpha20 contiene questi commit.

Correzioni di bug

  • Abbiamo modificato gli alfa dello stato Ripple premuto e in primo piano per il contrasto. (I59f0a)
  • Abbiamo aggiunto spaziatura tra le etichette principali e secondarie in Button, ToggleButton e RadioButton, in seguito alle ultime modifiche agli stili di tipografia e alle altezze delle righe. (I2c0ba)

Versione 1.0.0-alpha19

6 marzo 2024

androidx.wear.compose:compose-material3:1.0.0-alpha19 viene rilasciato. La versione 1.0.0-alpha19 contiene questi commit.

Modifiche all'API

  • Abbiamo aggiunto TimeText alla libreria Wear Compose Material3. Questo componente mostra l'ora corrente (e uno stato aggiuntivo) nella parte superiore dello schermo. La nuova API Material3, concisa, evita la duplicazione dei contenuti lineari e curvi. (I4d7c3)
  • Abbiamo aggiornato i nomi dei parametri da onSelected a onSelect per RadioButton. (I1a971)
  • Tokenizza RadioButton e SplitRadioButton e ristruttura anche i metodi esistenti per ridurre la quantità di ricerche di CompositionLocal aggiungendo istanze memorizzate nella cache dei colori e rendendo interni i metodi di RadioButtonColors e SplitRadioButtonColors. (I02b33)

Versione 1.0.0-alpha18

21 febbraio 2024

androidx.wear.compose:compose-material3:1.0.0-alpha18 viene rilasciato. La versione 1.0.0-alpha18 contiene questi commit.

Modifiche all'API

  • Abbiamo ristrutturato il pattern predefinito per CardColors, ToggleButtonColors e SplitToggleButtonColors creando internamente istanze memorizzate nella cache e riducendo l'utilizzo di CompositionLocal. (If3fec)

Versione 1.0.0-alpha17

7 febbraio 2024

androidx.wear.compose:compose-material3:1.0.0-alpha17 viene rilasciato. La versione 1.0.0-alpha17 contiene questi commit.

Modifiche all'API

  • Abbiamo aggiornato l'API Button in modo che utilizzi buttonColors per impostazione predefinita e abbiamo rimosso il valore duplicato filledButtonColors. (I4fe3b)
  • Abbiamo riorganizzato i pattern predefiniti per ButtonColors, IconButtonColors e TextButtonColors creando internamente un'istanza memorizzata nella cache e riducendo l'utilizzo di CompositionLocal. (I5f51c)
  • Abbiamo rimosso il sovraccarico di rememberUpdatedState nei classi di colore specifici del componente e contrassegnato i metodi di accesso all'interno dei classi di colore come interni. (If6571)

Correzioni di bug

  • Abbiamo aggiornato Modifier.minimumInteractiveComponentSize in modo che utilizzi Modifier.node. (Iba6b7)

Versione 1.0.0-alpha16

24 gennaio 2024

androidx.wear.compose:compose-material3:1.0.0-alpha16 viene rilasciato. La versione 1.0.0-alpha16 contiene questi commit.

Nuove funzionalità

  • Abbiamo aggiunto CompactButton, che può utilizzare gli stessi colori con riempimento, tonalità e contorni del pulsante.(I05df0)

Modifiche all'API

  • Abbiamo aggiunto RadioButton/SplitRadioButton come contenitori per i controlli di selezione, come il controllo Radio. Questo pulsante è diverso da ToggleButton esistente in quanto RadioButton è selezionabile (e opera all'interno di un gruppo di selezione), mentre ToggleButton è attivabile/disattivabile (ed è indipendente). (I61275)
  • Stiamo rimuovendo LocalContentAlpha dalla libreria Wear Compose Material3 per garantire la coerenza con la libreria Compose Material3. (I49a0a)
  • I componenti Wear Material e Wear Material3 che espongono un MutableInteractionSource nella loro API sono stati aggiornati in modo da esporre un MutableInteractionSource nullable che per impostazione predefinita è null. Non sono presenti modifiche semantiche: se passi null, significa che non vuoi eseguire l'hoisting di MutableInteractionSource, che verrà creato all'interno del componente, se necessario. La modifica in null consente ad alcuni componenti di non allocare mai un MutableInteractionSource e ad altri di creare un'istanza solo quando è necessario, il che migliora le prestazioni di questi componenti. Se non utilizzi MutableInteractionSource che passi a questi componenti, ti consigliamo di passare null. Ti consigliamo inoltre di apportare modifiche simili nei tuoi componenti. (Ib90fc, b/298048146)
  • Aggiunge la nuova API Ripple nelle librerie wear:compose-material e wear:compose-material3, che sostituisce la precedente rememberRipple. Aggiunge anche un CompositionLocal temporaneo, LocalUseFallbackRippleImplementation, per ripristinare l'utilizzo delle API rememberRipple/RippleTheme deprecate per i componenti Material. Questo parametro verrà rimosso nella prossima release stabile e ha lo scopo di essere solo un aiuto temporaneo per la migrazione nei casi in cui fornisci un RippleTheme personalizzato. Visita la pagina developer.android.com per informazioni sulla migrazione e ulteriori informazioni sulle motivazioni alla base di questa modifica. (af92b21)
  • Abbiamo apportato piccoli miglioramenti all'API HorizontalPageIndicator e alla relativa documentazione. (I60efc)
  • Abbiamo aggiornato ColorScheme in modo che sia immutabile, rendendo meno efficienti i singoli aggiornamenti dei colori, ma rendendo più efficiente l'utilizzo più comune dei colori. Il motivo alla base di questa modifica è che la maggior parte delle app non ha l'aggiornamento dei singoli colori come caso d'uso principale. Questa operazione è ancora possibile, ma la ricomposizione avverrà più di prima. Di conseguenza, ridurremo notevolmente la quantità di abbonamenti allo stato in tutto il codice materiale e influiremo sul costo di inizializzazione e di runtime di casi d'uso più standard. (Ibc2d6)
  • Sono state aggiornate le API ToggleButton e SplitToggleButton per consentire la personalizzazione dei colori disattivati. Inoltre, ora i token Material Design vengono utilizzati 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, Switch e RadioButton in modo che siano solo di visualizzazione, rimuovendo la gestione dei clic. Poiché si prevede che questi componenti vengano utilizzati in (Split)ToggleButton, che gestisce il clic, ora sono indicati in modo più chiaro come solo di 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 animazioni in Wear Compose Material 3. (I437cd)
  • Abbiamo corretto un bug in ToggleButton, SplitToggleButton, Checkbox, Switch e RadioButton in modo che gli annunci di accessibilità non vengano ripetuti (in precedenza, i ruoli semantici erano duplicati). (Ica281)
  • Abbiamo rimosso il livello MaterialCore per CompactButton per migliorare le prestazioni. (7902858)

Versione 1.0.0-alpha15

15 novembre 2023

androidx.wear.compose:compose-material3:1.0.0-alpha15 viene rilasciato. La versione 1.0.0-alpha15 contiene questi commit.

Modifiche all'API

  • Abbiamo rinominato il livello base SwipeToDismissBox in BasicSwipeToDismissBox. In questo modo, la distinzione tra il componente a livello di base e il livello Material3 è più chiara SwipeToDismissBox. Quest'ultimo estrae i colori da MaterialTheme da utilizzare negli scrim e delega l'implementazione rimanente a BasicSwipeToDismissBox. (Ibecfc)

Correzioni di bug

  • Abbiamo rimosso il livello material-core per il pulsante Material3 per migliorare le prestazioni. (I55555)

Versione 1.0.0-alpha14

18 ottobre 2023

androidx.wear.compose:compose-material3:1.0.0-alpha14 viene rilasciato. La versione 1.0.0-alpha14 contiene questi commit.

Modifiche all'API

  • Abbiamo rimosso il parametro indicatorStyle da Material3 HorizontalPageIndicator. Ora seguirà la forma dello schermo del dispositivo (lineare o tondo). (I83728)
  • Abbiamo separato i colori per SplitToggleButton da quelli per ToggleButton aggiungendo una nuova classe SplitToggleButtonColors. (I78bee)

Versione 1.0.0-alpha13

4 ottobre 2023

androidx.wear.compose:compose-material3:1.0.0-alpha13 viene rilasciato. La versione 1.0.0-alpha13 contiene questi commit.

Modifiche all'API

  • Abbiamo aggiunto un campo facoltativo Sottotitoli 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 rilasciato. La versione 1.0.0-alpha12 contiene questi commit.

Modifiche all'API

  • Abbiamo aggiornato IconButton per utilizzare i token Material Design. (I3f137)
  • Abbiamo aggiornato IconToggleButton per 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 rilasciato. La versione 1.0.0-alpha11 contiene questi commit.

Correzioni di bug

  • Abbiamo aggiornato la tipografia delle schede Material3 alla versione TitleMedium. (I597bd)
  • Abbiamo aggiornato la tipografia e l'allineamento per ListHeader e ListSubheader di Material 3. (Ib5ceb)

Versione 1.0.0-alpha10

23 agosto 2023

androidx.wear.compose:compose-material3:1.0.0-alpha10 viene rilasciato. La versione 1.0.0-alpha10 contiene questi commit.

Nuove funzionalità

  • Aggiungi HorizontalPageIndicator nella raccolta Wear Material3. (Ifee99)

Modifiche all'API

  • Aggiorna il codice dei pulsanti per utilizzare i token di design Material3. (I92fe4)
  • Le API Wear Material 3 Stepper e Slider sono state dichiarate sperimentali perché i dettagli dell'interfaccia utente sono ancora in fase di definizione. (I84d54)
  • Abbiamo rimosso le dimensioni ExtraSmall dai formati TextButton e TextToggleButton perché si applicano solo al formato IconButton. (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)
  • Per motivi di accessibilità, abbiamo impostato il touch target minimo della scheda su 48 dp. (Ieb9b1)
  • Aggiungere una scheda dell'app con una demo di immagine, rimuovendo una scheda dell'app con una demo di sfondo (Id735f)
  • Risolto un bug nei pulsanti rotondi per cui i modificatori non venivano collegati correttamente. (I5e162)

Versione 1.0.0-alpha09

9 agosto 2023

androidx.wear.compose:compose-material3:1.0.0-alpha09 viene rilasciato. La versione 1.0.0-alpha09 contiene questi commit.

Nuove funzionalità

  • Abbiamo aggiunto ToggleButton per il materiale 3 (I6bed6)

Modifiche all'API

  • Abbiamo attivato l'annotazione FloatRange come vincoli dell'API , che in precedenza erano indicati nei commenti. (Icb401)
  • Abbiamo aggiornato la tipografia di Wear Material3 in modo che rispetti le linee guida più recenti di Material3. (I1bad6)

Correzioni di bug

  • Abbiamo aggiornato i colori di Button, IconButton e TextButton in linea con il design di Material3. (Ib2495)
  • Abbiamo corretto la visibilità del segno di spunta nelle caselle di controllo in stato disattivato. (Ib25bf)

Versione 1.0.0-alpha08

26 luglio 2023

androidx.wear.compose:compose-material3:1.0.0-alpha08 viene rilasciato. 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 IconToggleButton e TextToggleButton a Material 3, un pulsante di attivazione/disattivazione circolare con un singolo spazio per l'icona e il testo. Per dimensioni diverse di ToggleButton, ti consigliamo di utilizzare ToggleButton con le dimensioni fornite nei rispettivi pulsanti di attivazione/disattivazione.Modifier.touchTargetAwareSize (I9f015)
  • Abbiamo aggiunto ListHeader e ListSubheader ai nostri componenti Material3. (Ibaefe)
  • Abbiamo aggiunto Material3 SwipeToDismissBox, che chiama il nuovo Foundation SwipeToDismissBox e fornisce i valori di colore predefiniti dal suo tema. (I275fb)
  • Abbiamo aggiunto Material3 InlineSlider 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 il volume o la luminosità. (I7085f)

Modifiche all'API

  • Abbiamo aggiornato le forme nel tema Wear Material 3 in modo che utilizzino RoundedCornerShape anziché 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 InlineSliderColors in Wear Compose Material 3 in modo che abbia un costruttore pubblico e proprietà pubbliche. (I6b632)
  • Abbiamo aggiornato tutte le classi di colore 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 regola la sua altezza per adattarsi ai contenuti che sono aumentati a causa di caratteri grandi per l'accessibilità, se necessario (Iaf302)
  • Abbiamo aggiornato una serie di demo di pulsanti per risolvere i problemi di accessibilità. (I61ce9)
  • Stepper e InlineSlider ora supportano i clic ripetuti con pressione prolungata, in modo da poter aumentare/diminuire rapidamente il valore di Stepper e InlineSlider tenendo premuti i pulsanti + o - (I27359)

Versione 1.0.0-alpha07

21 giu 2023

androidx.wear.compose:compose-material3:1.0.0-alpha07 viene rilasciato. La versione 1.0.0-alpha07 contiene questi commit.

Nuove funzionalità

  • Abbiamo aggiunto il componente Stepper alla nostra libreria Compose per Wear OS Material 3. È simile alla versione Material precedente, ma omette la semantica dell'intervallo per impostazione predefinita, in base al feedback degli sviluppatori. Forniamo Modifier.rangeSemantics i casi in cui è richiesta la semantica dell'intervallo. (Ic39fd)
  • Abbiamo aggiunto curvedText alla nostra libreria Compose per Wear OS Material 3. (Ia8ae3)

Correzioni di bug

  • Abbiamo aggiornato wear.compose.foundation in modo che sia una dipendenza API di wear.compose.material3 (I72004, b/285404743)

Versione 1.0.0-alpha06

7 giugno 2023

androidx.wear.compose:compose-material3:1.0.0-alpha06 viene rilasciato. La versione 1.0.0-alpha06 contiene questi commit.

Correzioni di bug

  • Abbiamo aggiornato TextButton in modo che utilizzi la funzione di estensione toDisabledColor per correggere i valori alfa disattivati. (I814c8)

Versione 1.0.0-alpha05

24 maggio 2023

androidx.wear.compose:compose-material3:1.0.0-alpha05 viene rilasciato. La versione 1.0.0-alpha05 contiene questi commit.

Nuove funzionalità

  • Abbiamo aggiunto TextButton a Material3, un pulsante circolare con un'unica posizione per il testo. Per dimensioni diverse di TextButton, consigliamo di utilizzare Modifier.touchTargetAwareSize e ExtraSmallButtonSize, SmallButtonSize, DefaultButtonSize e LargeButtonSizeIcon forniti in TextButtonDefaults. Il carattere TextButton predefinito non ha bordi e uno sfondo trasparente per le azioni con enfasi ridotta. Per le azioni che richiedono un'enfasi elevata, utilizza filledTextButtonColors; per un'enfasi media, con bordi TextButton, imposta il bordo su ButtonDefaults.outlinedButtonBorder; per una via di mezzo tra con bordi e con riempimento, utilizza filledTonalTextButtonColors. (I667e4)
  • Abbiamo aggiunto Card, OutlinedCard, AppCard e TitleCard alla raccolta Wear Compose Material3. AppCard e TitleCard possono anche essere visualizzati con un'opzione di visualizzazione in rilievo utilizzando CardDefaults.outlinedCardColors e CardDefaults.outlinedCardBorder(I80e72)

Modifiche all'API

  • Abbiamo spostato il parametro dell'etichetta del pulsante alla fine per supportare la sintassi lambda finale e abbiamo rimosso il parametro del ruolo (poiché può essere ignorato utilizzando Modifier.semantics). I costruttori ButtonColors sono ora pubblici. (Ie1b6d)

Versione 1.0.0-alpha04

10 maggio 2023

androidx.wear.compose:compose-material3:1.0.0-alpha04 viene rilasciato. La versione 1.0.0-alpha04 contiene questi commit.

Nuove funzionalità

  • Abbiamo aggiunto IconButton a Material3, un pulsante circolare con un'unica posizione per l'icona/l'immagine. Esistono quattro varianti: IconButton, FilledIconButton, FilledTonalIconButton e OutlinedIconButton. Per dimensioni diverse di IconButton, consigliamo di utilizzare Modifier.touchTargetAwareSize e ExtraSmallButtonSize, SmallButtonSize, DefaultButtonSize e LargeButtonSizeIcon forniti in IconButtonDefaults. Forniamo anche IconButtonDefaults.iconSizeFor per 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 rilasciato. La versione 1.0.0-alpha03 contiene questi commit.

Modifiche all'API

  • Abbiamo aggiunto il componente Pulsante Material 3, il nostro pulsante a forma di stadio, precedentemente denominato Chip nella raccolta di Materiale di Compose per Wear (è stato rinominato Pulsante per coerenza con la raccolta di Materiale di Compose 3). Il pulsante predefinito ha uno sfondo riempito e sono disponibili varianti per FilledTonal (sfondo attenuato), Con bordi (trasparente con un bordo sottile) e Secondario (sfondo trasparente e senza bordi, utilizzato per le azioni supplementari con la minore evidenza). I pulsanti rotondi per contenuti di testo e icone semplici 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 rilasciato. La versione 1.0.0-alpha02 contiene questi commit.

Correzioni di bug

  • Abbiamo aggiunto un DefaultTextStyle a Wear Compose Material 3 che imposta per impostazione predefinita PlatformTextStyle.includeFontPadding su true (l'impostazione corrente). In questo modo, in futuro potremo sincronizzare la disattivazione dell'interno dei caratteri per impostazione predefinita con le librerie di Compose (vedi Correggere l'interno 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 rilasciato. La versione 1.0.0-alpha01 contiene questi commit.

Nuove funzionalità

  • Material 3 è la prossima evoluzione di Material Design e include temi aggiornati e componenti riprogettati. Material 3 su Wear Compose è progettato per essere coerente con la libreria Compose di Material 3 su Android. Questa prima release alpha contiene implementazioni iniziali e funzionali di quanto segue:

    • Tema Materiale: configura la combinazione di colori, la tipografia e le forme in modo coerente in tutti i componenti della raccolta. Il tema Material3 ha colori rivisti che supportano il contrasto accessibile. (I84005)
    • Testo/icona: componenti di base per le app Wear Compose (I8e06a)
  • Continueremo a sviluppare Wear Material (androidx.wear.compose:compose-material) e Wear Material 3 (androidx.wear.compose:compose-material3) in parallelo. Le release future di Material 3 estenderanno il set di widget per includere altri componenti familiari di Compose per Wear OS, come pulsanti, selettori e cursori.

  • Le librerie Wear Material e Wear Material 3 sono mutuamente esclusive e non devono essere mescolate nella stessa app, principalmente perché fanno riferimento a temi diversi che potrebbero portare a incoerenze impreviste.