Wear Compose Material 3
Actualización más reciente | Versión estable | Versión potencial | Versión beta | Versión alfa |
---|---|---|---|---|
13 de agosto de 2025 | - | 1.5.0-rc02 | - | - |
Cómo declarar dependencias
Para agregar una dependencia en Wear, debes agregar el repositorio de Maven de Google a tu proyecto. Consulta el repositorio de Maven de Google para obtener más información.
Agrega las dependencias de los artefactos que necesites en el archivo build.gradle
de tu app o módulo:
Groovy
dependencies { implementation "androidx.wear.compose:compose-foundation:1.5.0-rc02" // For Wear Material Design UX guidelines and specifications implementation "androidx.wear.compose:compose-material3:1.5.0-rc02" // For integration between Wear Compose and Androidx Navigation libraries implementation "androidx.wear.compose:compose-navigation:1.5.0-rc02" // For Wear preview annotations implementation("androidx.wear.compose:compose-ui-tooling:1.5.0-rc02") // 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-rc02") // For Wear Material Design UX guidelines and specifications implementation("androidx.wear.compose:compose-material3:1.5.0-rc02") // For integration between Wear Compose and Androidx Navigation libraries implementation("androidx.wear.compose:compose-navigation:1.5.0-rc02") // For Wear preview annotations implementation("androidx.wear.compose:compose-ui-tooling:1.5.0-rc02") // 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. }
Para obtener más información sobre las dependencias, consulta Cómo agregar dependencias de compilación.
Comentarios
Tus comentarios ayudan a mejorar Jetpack. Avísanos si descubres nuevos errores o tienes ideas para mejorar esta biblioteca. Consulta los errores existentes de esta biblioteca antes de crear uno nuevo. Puedes agregar tu voto a un error existente haciendo clic en el botón de la estrella.
Consulta la documentación sobre la Herramienta de seguimiento de errores para obtener más información.
Wear Compose Material3, versión 1.5
Versión 1.5.0-rc02
13 de agosto de 2025
Lanzamiento de androidx.wear.compose:compose-*:1.5.0-rc02
. La versión 1.5.0-rc02 contiene estas confirmaciones.
Correcciones de errores
- Se corrigió un error en
TimePicker
en el que las cadenas largas internacionalizadas para el período (a.m./p.m.) podían dañar el diseño. (I0fa81)
Versión 1.5.0-rc01
30 de julio de 2025
Lanzamiento de androidx.wear.compose:compose-*:1.5.0-rc01
. La versión 1.5.0-rc01 contiene estas confirmaciones.
Correcciones de errores
- Ahora
TimePicker
se basa completamente en la configuración regional del usuario y usaDateFormat.getBestDateTimePattern
para determinar el orden y el contenido de sus selectores y separadores. Se corrigió el orden incorrecto de las columnas para los idiomas en CJK, se resolvieron los problemas de diseño de RTL en idiomas como el árabe, se usan separadores localizados y se admiten formatos de hora de 0 a 11 y de 1 a 12 según la configuración regional (I5d543). DatePicker
ahora muestra un mes numérico en algunas configuraciones regionales, como CJK, para evitar mezclar formatos numéricos y lingüísticos (p.ej., 2025 | 07 | 02 en lugar de 2025 | 7月 | 02). Este cambio aplica una heurística que verifica si la configuración regional usa sufijos lingüísticos para el año y, si es así, cambia el formato del mes de textual (MMM) a numérico (MM) para garantizar la coherencia. (Ia93fe)- El espacio vertical del encabezado en el componente Picker ahora es constante, lo que evita un cambio visible cuando se selecciona una columna del selector, especialmente en el modo
Talkback
. (I7f8b7) - Se corrigió un error de accesibilidad causado por el dibujo de
HorizontalPageIndicator
yVerticalPageIndicator
en pantalla completa. Los indicadores de página ya no son de pantalla completa y se posicionarán automáticamente cuando se usen conHorizontalPagerScaffold
oVerticalPagerScaffold
. Cuando no uses un diseño de Pager, especifica la alineación de forma explícita conmodifier = Modifier.align(Alignment.BottomCenter)
yHorizontalPageIndicator
, y conmodifier =Modifier.align(Alignment.CenterEnd)
yVerticalPageIndicator
. (I3a0ad) - La dirección de deslizamiento en
SwipeToReveal
ahora es coherente paraLayoutDirections
LTR y RTL. (I6d427) - Se restableció el centrado vertical de
SwipeToReveal
para las acciones. Si eshasPartiallyRevealedState = true
, el llamador debe restablecerRevealState
aRevealValue.Covered
cuando se produzca el desplazamiento. (I6473d) SwipeDismissableNavHost
ahora corta correctamente el contenido para la API 36 y versiones posteriores. (Ib9a44)
Versión 1.5.0-beta06
16 de julio de 2025
Lanzamiento de androidx.wear.compose:compose-*:1.5.0-beta06
. La versión 1.5.0-beta06 contiene estas confirmaciones.
Correcciones de errores
- Se corrigió la animación de
EdgeButton
cuandoLazyColumn
oScalingLazyColumn
tienenreverseLayout = true
. (I46a1a) - Se corrigió un error en
ScreenScaffold
por el que la función de tocar para explorar no funcionaba en TalkBack si se proporcionaba unScrollIndicator/PageIndicator
. (I6dcee) TransformingLazyColumn
ahora permite la transformación personalizada desdeTransformationSpec
leyendo el valor deitemHeight
proporcionado porTransformationSpec
en el objeto de pintura en segundo plano. (I6a599)- Transiciones de color animadas habilitadas o inhabilitadas para
IconButton
, para que sean coherentes conIconToggleButton
. (Ife10a) - Se quitó la fijación mínima de la sección en
CircularProgressIndicator
para evitar un salto notable al tamaño mínimo del punto durante la animación. Como parte de este cambio, el parámetrotargetProgress
endrawCircularProgressIndicator
ahora no se usa. (I33309) - El selector ahora tiene el rol semántico
ValuePicker
, que los lectores de pantalla pueden usar para que los selectores sean más accesibles. El selector también tiene etiquetas de clic de accesibilidad actualizadas que diferencian entre ajustar el valor en el modo de solo lectura y seleccionar el valor actual de lo contrario. (I33309)
Versión 1.5.0-beta05
2 de julio de 2025
Lanzamiento de androidx.wear.compose:compose-*:1.5.0-beta05
. La versión 1.5.0-beta05 contiene estas confirmaciones.
Correcciones de errores
- Se actualizó la documentación para aclarar el uso de
Modifier.edgeSwipeToDismiss
(I78cb5). - Se corrigió un error por el que se podían mostrar varios elementos revelados con
SwipeToReveal
en listas diferidas (I1d4f6). - Las formas de los contenedores en
TransformingLazyColumn
ahora se ajustan para evitar que se recorte el contenido. (I9221a) - Las etiquetas
TimePicker
yDatePicker
para hora/minuto/segundo o año/mes/día ahora tienen semántica de encabezado para los lectores de pantalla (I77d8b). - Se quitó la pausa entre los bucles en el
CircularProgressIndicator
indeterminado (Iaf0bb). - Se corrigió un error de animación en
TransformingLazyColumn
cuando se quitan elementos. (I73034) - Se corrigió el control de los elementos de anclaje en
TransformingLazyColumn
cuando se quitan elementos. (I841a8) PickerGroup
ahora anima los selectores horizontalmente cuando se activa el centrado automático y se cambia el selector seleccionado (centrado). (Ic82c4)
Versión 1.5.0-beta04
18 de junio de 2025
Lanzamiento de androidx.wear.compose:compose-*:1.5.0-beta04
. La versión 1.5.0-beta04 contiene estas confirmaciones.
Correcciones de errores
- Se corrigió un error de diseño en
TransformingLazyColumn
, en el que el contenido que cabe en la pantalla ahora se alinea correctamente desde la parte superior de la pantalla (I80115). - Se solucionó un problema con
TransformingLazyColumn
en el que el elemento inferior se escalaba de forma incorrecta cuando se desplazaba hasta la parte inferior de una lista con unEdgeButton
. El progreso de desplazamiento ahora sigue un descenso de gradientes cuando se restablece el diseño. (Iea375) TransformingLazyColumn
ahora lee la altura del elemento dentro del pintor de fondo, lo que permite queTransformationSpecs
personalizado implemente la transformación. (I022f0)SwipeToReveal
ahora centra verticalmente las acciones reveladas de forma correcta. (I4419b)- Se corrigió un error en
SwipeToReveal
que impedía que funcionara correctamente con el gesto de deslizar para descartar si se usaban tanto vistas como Compose en la pantalla. (I5dc0e) - Se corrigió un error por el que las acciones de
SwipeToReveal
se dibujaban con una compensación vertical durante el desplazamiento. (I29444) AlertDialog
,ConfirmationDialog
,OpenOnPhoneDialog
ySwipeToReveal
ahora redondean los paddings y los tamaños que se calculan como un porcentaje del tamaño de la pantalla. (I76367)- Ahora,
ButtonDefaults.outlinedButtonBorder
se actualiza según los cambios de estado habilitado/inhabilitado(If2ddd). - Se corrigió un error en la altura de
EdgeButton
que ocurría en pantallas complejas con Pager yScreenScaffold
. (I946e3) - Se corrigió una condición de carrera que podía hacer que se detuvieran las animaciones de marcador de posición. (I53530)
- Se mejoró el rendimiento de
HorizontalPageIndicator
yVerticalPageIndicator
dibujando en Canvas. (Ifae1e) - Se perfeccionó la forma de EdgeButton para suavizar las transiciones entre los puntos suspensivos y los círculos que componen el contorno. (I7721e)
- Se corrigió un error en
LevelIndicator
que provocaba que se detuvieran las animaciones debido a recomposiciones innecesarias. (I45d08)
Versión 1.5.0-beta03
4 de junio de 2025
Lanzamiento de androidx.wear.compose:compose-*:1.5.0-beta03
. La versión 1.5.0-beta03 contiene estas confirmaciones.
Cambios en la API
- Ahora,
OpenOnPhoneDialog
solo anuncia el texto del mensaje en TalkBack y omite la semántica del ícono. Se actualizaron losOpenOnPhoneDialogDefaults
para quitar el parámetroiconContentDescription
y el parámetrocontentDescription
deicon()
. Además,ConfirmationDialogDefaults
ahora tiene parámetros de modificador en los elementosSuccessIcon
yFailureIcon
componibles. (Id2ae2)
Correcciones de errores
- Se cambió el orden en el que aplicamos el efecto de los parámetros
SurfaceTransformation
. Antes, las transformaciones aplicadas a los componentes de Wear Material 3 se realizaban de la siguiente manera: pintor de fondo, transformación del contenedor y transformación del contenido. Ahora, los primeros 2 se invierten y aplicamos cualquier modificador pasado entre ellos, por lo que se ve afectado por las transformaciones del contenedor. Esto corrige casos como el uso de un efecto de brillo de marcador de posición con elementos en un TLC que usa el parámetro de transformación. (I786cf) - Se agregó
RevealState.Saver
para restablecer el estado deSwipeToReveal
cuando se vuelve a crear la actividad o el proceso. La funciónrememberRevealState
ahora usa este Saver de forma predeterminada. (Ie0ecb) - Los botones de acciones principales y secundarias
SwipeToReveal
deben tenerButtonDefault.Height
como valor predeterminado (se corrigió un error por el que estos botones ocupaban la altura máxima para los botones más altos). (Ibfba1) - Se cambió
SwipeToReveal
para restablecer el último componente con el que se interactuó cuando se realiza el gesto de deslizar el dedo hacia la derecha. (Ia8450) SwipeToReveal
se cambió para establecerse en el estadoRevealing
cuando la posición final del deslizamiento se encuentra entre los anclajes de revelación y revelado, y está más cerca del anclaje de revelación. (If4458)- Ahora el contenido de
ButtonGroup
se invierte correctamente en un diseño de RTL (Ib378d). AnimatedText
ahora admite la dirección de texto de derecha a izquierda (I4533c)TransformingLazyColumn
ahora cambia el tamaño de los elementos correctamente cuando se quita el elemento inferior (Idacab).TransformingLazyColumn
ahora realiza solo una pasada de medición, lo que mejora el rendimiento al reducir los tiempos de fotogramas. (I501a1)
Versión 1.5.0-beta02
20 de mayo de 2025
Lanzamiento de androidx.wear.compose:compose-*:1.5.0-beta02
. La versión 1.5.0-beta02 contiene estas confirmaciones.
Correcciones de errores
- Se actualizaron los perfiles de Baseline para las bibliotecas de Foundation, Material y Material3. (I53f06)
- Se corrigió un error en
TransformingLazyColumn
, en el que los elementos cambiaban de tamaño cuando se quitaba el elemento inferior. (Idacab) - Se corrigió un error con
TransformingLazyColumn
, cuando la lista se atascaba en la parte superior o inferior. (I49d00) OpenOnPhoneDialog
en TalkBack debería anunciar el texto curvo, en lugar de la descripción del contenido del ícono. (I4efe8)- Se corrigió un error en
SwipeToReveal
que informaba la ancla incorrecta enRevealState.currentValue
cuandohasPartiallyRevealedState
se establecía en falso. (I9c7cf) - Los botones de deshacer
SwipeToReveal
ahora sonButtonDefaults.Height
de forma predeterminada. (I1f6c8) - Se mejoró el rendimiento de
BasicSwipeToDismissBox
eliminando el uso de Canvas para dibujar scrims. (I68f2c) - Se corrigió un error de accesibilidad en Slider, en el que el porcentaje anunciado no coincidía con el valor después de las actualizaciones (I91146).
- Se corrigió un error en la implementación de
placeholderShimmer
. (Iee39b - Se mejoró el rendimiento de
TransformingLazyColumn
optimizando el cálculo deScrollProgress
en un 30%. (I4c4cb)
Versión 1.5.0-beta01
7 de mayo de 2025
Lanzamiento de androidx.wear.compose:compose-*:1.5.0-beta01
. La versión 1.5.0-beta01 contiene estas confirmaciones.
La versión 1.5.0-beta01 de Compose para Wear OS indica que esta versión de la biblioteca está completa y la API está bloqueada (excepto donde se marca como experimental).
Wear Compose 1.5.0-beta01 incluye la biblioteca de Wear Compose Material3, que admite el nuevo sistema de diseño de IU llamado Material 3 Expressive. Se recomienda actualizar de Material a Material3 para adoptar el nuevo diseño visual en las apps y aprovechar los nuevos componentes de la siguiente manera:
MaterialTheme
para esquemas de colores, tipografía y formas actualizados y extendidos que aportan profundidad y variedad a tus diseños.- Temas de color dinámico que generan automáticamente un esquema de colores para tu app que coincida con los colores de la cara del reloj
- Los componentes nuevos se adaptan automáticamente a tamaños de pantalla más grandes de forma predeterminada
- Cambio de forma: Los componentes de botones redondos, como
IconButton
,TextButton
,IconToggleButton
yTextToggleButton
, admiten variaciones que se animan cuando se presionan o se marcan. EdgeButton
: Un nuevo botón que se ajusta a los bordes con una forma especial diseñada para la parte inferior de la pantalla.- Andamios: Se introducen
AppScaffold
yScreenScaffold
para diseñar la estructura de la pantalla y coordinar las animaciones deScrollIndicator
yTimeText
. - Botones: Se admiten numerosos botones con forma de estadio con contenedores flexibles de una sola ranura y variaciones de varias ranuras para botones con íconos y etiquetas.
CheckboxButton
ySwitchButton
se proporcionan cuando se necesitan botones de activación, mientras queRadioButton
es el botón de selección disponible (también se proporcionan variaciones de "dividir" de los botones de activación y selección). ButtonGroup
: Implementa un grupo expresivo de botones en una fila que cambian de forma cuando se tocan.- Las variaciones de
AlertDialog
admiten botones de aceptar/cancelar o unEdgeButton
. ConfirmationDialog
está disponible para mostrar un mensaje con un tiempo de espera, y admite animaciones especiales para las variaciones de éxito, error y abrir en el teléfono.- Selectores: También se admiten las variaciones de
TimePicker
yDatePicker
, así como los componentes Picker yPickerGroup
para compilar tus propias pantallas de selector. ProgressIndicators
: Se admiten indicadores de progreso circulares y lineales (elCircularProgressIndicator
tiene variaciones segmentadas e indeterminadas).- Tarjetas: Hay varias variaciones de tarjetas disponibles, incluida
TitleCard
, que ofrece diseños específicos para tarjetas con espacios para el título, la hora, el subtítulo o el contenido.TitleCard
también puede tener una imagen de fondo para reforzar el significado de la información en una tarjeta. - Pagers: Los componentes
HorizontalPagerScaffold
,VerticalPagerScaffold
yAnimatedPage
coordinan las animacionesHorizontalPageIndicator
yVerticalPagerIndicator
. Se lanzanHorizontalPager
yVerticalPager
en la biblioteca de Wear Compose Foundation. - Marcadores de posición: Dibujan una forma de esqueleto sobre un componente, para situaciones en las que no hay contenido provisional disponible.
- Controles deslizantes y objetos Stepper: Ambos permiten que los usuarios seleccionen un rango de valores. Los controles deslizantes son más compactos y se pueden segmentar, mientras que el componente Stepper es de pantalla completa y, por lo general, se combina con un
StepperLevelIndicator
. SwipeToReveal
: Se usa para agregar acciones adicionales a un elemento componible cuando se desliza de derecha a izquierda.
Además, Wear Compose Foundation 1.5.0-beta01 incluye estos componentes nuevos:
TransformingLazyColumn
: Una lista de desplazamiento vertical diferido que admite animaciones de cambio de forma y escalamiento- Grupos de enfoque jerárquicos: Se usan para anotar elementos componibles en una aplicación, hacer un seguimiento de la parte activa de la composición y coordinar el enfoque.
- Pagers: Componentes
HorizontalPager
yVerticalPager
, creados sobre los componentes de Compose Foundation con mejoras específicas para Wear que permiten mejorar el rendimiento y el cumplimiento de los lineamientos de Wear OS.
Cambios en la API
- Se actualizó la API de Hierarchical Focus: Se cambió el nombre de
Modifier.hierarchicalFocus
aModifier.hierarchicalFocusGroup
y se quitó el parámetro de devolución de llamada; se quitó la sobrecarga deModifier.hierarchicalFocusRequester
con un parámetro deFocusRequester
; se creó un nuevoCompositionLocal
,LocalScreenIsActive
para que los componentes puedan informar y verificar qué pantalla está activa. (I5ff7c). - Se dio de baja
SwipeToReveal
de Wear Compose Foundation en favor de las APIs deSwipeToReveal
en Wear Compose Material y Wear Compose Material3. Reemplaza las importaciones deSwipeToReveal
de Wear Foundation por las importaciones de Wear Compose Material o Wear Compose Material3 para seguir usando las APIs. (Ia147d). - Las dependencias de
SwipeToReveal
de Wear Compose Material3 en Foundation se movieron al paquete material3, p.ej.,RevealValue
,RevealDirection
,RevealActionType
,RevealState
yrememberRevealState
. Los desarrolladores deben cambiar las importaciones de estas clases y funciones deandroidx.wear.compose.foundation
aandroidx.wear.compose.material3
. (I640e6). - Se actualizó la API de
SwipeToReveal
de Wear Compose Material3 de la siguiente manera: Se agregaron los parámetrosprimaryAction
,onFullSwipe
,secondaryAction
,undoPrimaryAction
,undoSecondaryAction
yhasPartiallyRevealedState
al elementoSwipeToReveal
componible; se quitó la capacidad de personalizarpositionalThreshold
yanimationSpec
deRevealState
; se quitaronlastActionType
,revealThreshold
y el ancho deRevealState
; se cambió el constructor deRevealState
para que acepte unRevealDirection
en lugar de anclajes; se quitaron las funcionescreateRevealAnchors
, los anclajes ybidirectionalAnchors
; se cambiaron los nombres de las funcionesSwipeToRevealScope
primaryAction
,secondaryAction
,undoPrimaryAction
yundoSecondaryAction
aPrimaryActionButton
,SecondaryActionButton
,UndoActionButton
y se convirtieron en funciones componibles; se marcóRevealActionType
como interno. (I885d0). - Se actualizó aún más la API de
SwipeToReveal
de la siguiente manera: Se cambió el nombre deonFullSwipe
aonSwipePrimaryAction
, se cambió el nombre deSwipeToRevealNonAnchoredSample
para indicar el uso del parámetrohasPartiallyRevealedState
, se quitóactionButtonHeight
, ya que la altura predeterminada es la del botón y la altura más grande se puede establecer con un modificador, se quitóSmallActionButtonHeight
deSwipeToRevealDefaults
y se hizo privado el parámetro de valor en los constructoresRevealValue
yRevealDirection
. (I465ce).
Correcciones de errores
- Se corrigió el control de
EdgeButton
deScreenScaffold
para que, después de quitar un elementoTransformingLazyColumn
, elEdgeButton
se anime hasta su posición. (I6d366). - Se actualizaron las dependencias de Wear Compose en las bibliotecas de Compose a la versión 1.8.0. (I2ef3f).
- Se actualizó el movimiento del
CircularProgressIndicator
indeterminado para que ya no se produzca una regresión temporal. (Ieddb1). - Se corrigió un error de
SwipeDismissableNavHost
: El enfoque no cambiaba correctamente después de deslizar el dedo hacia atrás, lo que provocaba que fallara la entrada rotatoria (esto era para la API 36 y versiones posteriores, que usan el gesto de atrás predictivo). (Ieddb1). - Se modificó la documentación de la API de Hierarchical Focus (Idf2ff).
- Se actualizó la documentación de Button y Card para indicar cómo
containerPainter
ydisabledContainerPainter
anulancontainerColor
ydisabledContainerColor
(I4a453). - Se revirtió un cambio en
TimeText
de la versión anterior que trasladóBroadcastReceiver
a un subproceso de trabajo, ya que causaba problemas en las apps que administran su propio procesamiento durante la navegación. (I34d02). - Se actualizaron los ejemplos del selector para quitar las llamadas remember innecesarias y, en cambio, usar
rememberUpdatedState
en el selector para recordar la función lambdacontentDescription
más reciente. (Icb5b1). - Se actualizaron los estilos de texto en
TimePicker
yDatePicker
para que los cambios de fuente ya no provoquen truncamientos. (I26194). ListHeader
yListSubHeader
ahora establecen la alineación del texto de forma predeterminada en alineación centrada y alineación al inicio, respectivamente. (I78339).- Se actualizaron las muestras y demostraciones de Foundation y Material Swipe to Reveal para anunciar acciones de accesibilidad personalizadas (las acciones personalizadas se deben agregar como semántica en el contenido, no en el elemento
SwipeToReveal
componible en sí). (Ie92a3). - Se actualizó el conjunto
MaxLines
predeterminado en el contenidoEdgeButton
según su tamaño: ahora es 1 para extra pequeño, 2 para pequeño y mediano, y 3 para grande. (Ie35f6). - Se simplificó
LocalReduceMotion
para que el observador solo se registre una vez y, así, mejorar el rendimiento. (Ib1979). - Se minimizó la cantidad de redibujos en
ScrollIndicator
para mejorar el rendimiento. (Ia7a67). - Se corrigió un error en
TransformingLazyColumn
, en el que el elemento superior visible de la lista no se ajustaba correctamente cuando EdgeButton alcanzaba su altura completa. (I30580).
Wear Compose Material3 versión 1.0
Versión 1.0.0-alpha37
23 de abril de 2025
Lanzamiento de androidx.wear.compose:compose-material3:1.0.0-alpha37
. La versión 1.0.0-alpha37 contiene estas confirmaciones.
Cambios en la API
- Se quitó
scrollTransform
de la superficie de la API pública. Usa la combinación de los modificadorestransformedHeight
ygraphicsLayer
si necesitas obtener la misma funcionalidad. (Ie181d) - Se reemplazaron los elementos
ImageButton
yImageCard
componibles por las sobrecargasButton
yCard/TitleCard
, respectivamente. Se cambió el nombre deimageButtonColors
porbuttonWithContainerPainterColors
y el deimageCardColors
porcardWithContainerPainterColors
. Se agregaronButtonDefaults.scrimBrush
yCardDefaults.scrimBrush
públicos. Se cambió el nombre de los botonesimageBackgroundGradientStartColor
yimageBackgroundGradientEndColor
ascrimGradientStartColor
yscrimGradientEndColor
. Se cambió el nombre deCardDefaults.ImageContentPadding
aCardDefaults.CardWithContainerPainterContentPadding
(I7b8b6). Picker
yPickerGroup
ahora tomancontentDescription
como una expresión lambda para evitar recomposiciones innecesarias. (I002dd)
Correcciones de errores
- Se solucionó un problema por el que el
CircularProgressIndicator
indeterminado se tambaleaba durante la animación si el ancho no era igual a la altura. (I76bfe) - Se corrigió un problema con el diseño de los botones de borde en tamaños no válidos. Ahora se evita la actualización del diseño del botón de borde cuando la altura es NaN. (I32b93)
- Se aumentó el ángulo de barrido máximo en
OpenOnPhoneDialog
para que el texto predeterminado “Revisa tu teléfono” no se recorte con el tamaño de fuente más grande. (I90af9)
Versión 1.0.0-alpha36
9 de abril de 2025
Lanzamiento de androidx.wear.compose:compose-material3:1.0.0-alpha36
. La versión 1.0.0-alpha36 contiene estas confirmaciones.
Cambios en la API
- Se reemplazó
ButtonDefaults.imageBackgroundButtonColors
porImageButton
,ButtonDefaults.imageButtonColors
,ButtonDefaults.containerPainter
yButtonDefaults.disabledContainerPainter
. Y cambios similares para Card. Se quitan los pintores deButtonColors
yCardColors
. (I8c6a1) - Se actualizaron los marcadores de posición para simplificar la API. Ahora proporcionamos dos modificadores,
Modifier.placeholderShimmer
para aplicar un efecto de brillo a nivel del componente yModifier.placeholder
para aplicar una máscara sobre el contenido no cargado (Iaee7a).
Correcciones de errores
- Se integró el desplazamiento excesivo en
ScrollIndicator
. (Icfb7f) - Se solucionaron los problemas relacionados con los fondos en blanco y los diálogos faltantes cuando se inician diálogos de Material 3. (Ice597)
- Se corrigieron problemas en
FadingExpandingLabel
cuando el texto abarca varias líneas. (I04eb7) - Se actualizó el padding entre las etiquetas principal y secundaria en los botones. (I99b7b)
ArcLarge
se redujo de20sp
a18sp
, y se actualizaron los espaciados entre letras enArcLarge
yArcSmall
.ConfirmationDialog
/OpenOnPhoneDialog
ahora usan el valor predeterminadoArcLarge
en lugar de anularlo con18sp
. (Id39a8)
Actualizaciones de dependencias
- Esta biblioteca ahora tiene como objetivo el nivel de lenguaje Kotlin 2.0 y requiere KGP 2.0.0 o una versión posterior. (Idb6b5)
Versión 1.0.0-alpha35
26 de marzo de 2025
Lanzamiento de androidx.wear.compose:compose-material3:1.0.0-alpha35
. La versión 1.0.0-alpha35 contiene estas confirmaciones.
Cambios en la API
- El relleno superior
AlertDialog
ahora se reduce de forma predeterminada cuando se proporciona un ícono, lo que permite aprovechar al máximo el tamaño de pantalla disponible. (Ief06c) - El nombre de
PagerScaffoldDefaults.FadeOutAnimation
cambió porPagerScaffoldDefaults.FadeOutAnimationSpec
. Se cambió el nombre del parámetro page enAnimatedPage
apageIndex
. (I701f2) - Se actualizó la nomenclatura de la división
SurfaceTransformation
-applyTransformation
deTransformingLazyColumn
enapplyContainerTransformation
yapplyContentTransformation
, y se cambió el nombre decreateBackgroundPainter
acreateContainerPainter
. Se realizaron más actualizaciones de nombres enTransformationSpec
yResponsiveTransformationSpec
. (I1c534) - Se cambió el nombre de
AppScaffold backgroundColor
porcontainerColor
. (I4e63f)
Correcciones de errores
- Se corrigió un problema en
FadingExpandingLabel
por el que el texto no siempre se expandía correctamente. (I0e773) ArcLarge
se redujo de 20 sp a 18 sp, y se actualizaron los espacios entre letras enArcLarge
yArcSmall
.ConfirmationDialog/OpenOnPhoneDialog
ahora usa el valor predeterminadoArcLarge
en lugar de anularlo a 18 sp. (Id39a8)- Se actualizó la animación del encabezado para
DatePicker
yTimePicker
, de modo que la animación de atenuación de entrada y salida actúe como una sola animación de resorte. (I68963) - Se optimizó
PagerScaffold
evitando la lectura decurrentPageOffsetFraction
en el elementoAnimatedPage
componible. (I433ef) - Todas las escalas de escritura se actualizaron para que tengan números proporcionales de forma predeterminada, ya que se considera el caso de uso más frecuente y el uso predeterminado de números tabulares generaba demasiado espacio entre ciertos pares de números.
TimePicker
yDatePicker
siguen aplicandoFontFeatureSetting=tnum
para los números tabulares. (I88929) - Se corrigió el enfoque inicial de entrada del RSB para
TimePicker
yDatePicker
. (I1c773) - Se actualizó el texto predeterminado en
OpenOnPhoneDialog
a "Revisa tu teléfono". (I00a3f) - Se actualizaron los pesos de
ArcLarge
yArcMedium
de 600 a 599 para solucionar un problema en el que el peso 600 se trata como negrita (I2a51d). - Se actualizaron los paddings de
SwipeToReveal
entre el contenido y los botones de acción, y también el padding entre el ícono y el texto de los botones de acción. (Ic46cb)
Versión 1.0.0-alpha34
12 de marzo de 2025
Lanzamiento de androidx.wear.compose:compose-material3:1.0.0-alpha34
. La versión 1.0.0-alpha34 contiene estas confirmaciones.
Cambios en la API
PagerScaffold
ya no emite un componentePager
, sino que este debe proporcionarse a través del elementocontent
componible. Las APIs deAnimatedPage
ysnapWithSpringFlingBehaviour
ahora son públicas y se pueden usar junto conPager
de Wear Foundation para lograr el comportamiento anterior dePagerScaffold
de M3. (Consulta las muestras actualizadas). (Ia4724)- Se actualizó
PagerState
. Se quitóPagerState
de Compose Foundation como clase base y se agregaron las propiedadescurrentPage
,currentPageOffsetFraction
ypageCount
. Se actualizó la interfazGestureInclusion
y se cambió el nombre del método aignoreGestureStart
. (I4ae07) - Los parámetros de ángulo de barrido
LevelIndicator
ahora están anotados conFloatRange(0, 360)
(I7e636). - Agregamos
CurvedModifier.clearAndSetSemantics
para proporcionar un medio por el cual se puede desactivar la semántica curva.CurvedText
sigue estableciendo de forma predeterminada la descripción del contenido en el texto, perotimeTextCurvedText
ytimeTextSeparator
ya no anuncian su contenido. (I4b568) - Se agregaron parámetros de color de fondo y contenido predeterminados a
AppScaffold
. (I56652) - Se cambió el nombre del control predeterminado de los gestos de deslizamiento de
HorizontalPager
aPagerDefaults.gestureInclusion
. Ahora, el comportamiento predeterminado es ignorar solo los gestos de deslizamiento que comienzan en el borde izquierdo de la primera página y solo cuando TalkBack está desactivado. En otros casos, el comportamiento predeterminado es que el paginador no ignorará los gestos de deslizamiento, por lo que no estarán disponibles para los controladores de deslizamiento para descartar. (Iee486) - Se agregó un parámetro
SurfaceTransformation
a los componentes de botón, tarjeta y encabezado de lista para que puedan aplicar diferentes transformaciones de contenido y fondo cuando se usan en contenedores que cambian la apariencia de los elementos según su posición, comoTransformingLazyColumn
. (Iabe3f) - Actualizamos las propiedades "public const val" en nuestra API de Wear Compose Material3 a "public val" para evitar que los valores se inserten de forma directa. (Ib0f32)
- Se agregó compatibilidad con una zona de deslizamiento desde el borde a
SwipeToReveal
. El comportamiento predeterminado de FoundationSwipeToReveal
ahora es no permitir el deslizamiento cuando el gesto comienza desde el borde. El comportamiento predeterminado de losSwipeToReveal’
de Material 3 ahora es no permitir el deslizamiento cuando el gesto comienza desde el borde, cuando elSwipeDirection
se establece en una sola dirección. (I32ef0) - Se agregó el elemento
FadingExpandingLabel
componible, que permite que el texto aparezca gradualmente con una animación línea por línea. (Ic60fa) TransformingLazyColumn
ahora usacontentPadding
vacío de forma predeterminada en lugar de colocar el primer y el último elemento en el centro. (I77ab7)- Se quitó
SwipeToReveal
derememberRevealState
de la biblioteca de Wear Compose Material3. (I8c0e0)
Correcciones de errores
- Se actualizaron las bibliotecas de Wear Compose al compilador de Kotlin 2.0. (I2de79)
- Se quitó la compatibilidad con
ScrollIndicator
yPageIndicator
no redondos de Material3. La compatibilidad con pantallas cuadradas ya no forma parte de los requisitos de Wear OS. Para obtener más información, consulta la guía de introducción. (I9a852) - Se actualizó el
CurvedTextStyle
que se usa enConfirmationDialogDefaults
yOpenOnPhoneDialogDefaults
para usar la tipografíaArcLarge
con el tamaño18sp
y el espacio entre letras1.8sp
. (Ic9ced) Card
,ListHeader
,RadioButton
,CheckboxButton
ySwitchButton
ya no restringen la altura de su contenido de forma predeterminada. Cuando sea necesario, usaModifier.height(IntrinsicSize.Min)
para restablecer el comportamiento anterior. (I80bb8)- Actualizamos los colores predeterminados
TimeText
yScrollIndicator
para incluir más tonos de gris, ya que usarOnBackground
(blanco) directamente tenía demasiado peso visual cuando competía con otro contenido en la pantalla, como los títulos. (I8b36f) - Redujimos el tiempo de espera para animar
TimeText
yScrollIndicator
en los componentes de andamio a 2 segundos. (I52021) - Actualizamos el movimiento de Dialog para que la escala del fondo del diálogo se sincronice con el gesto de deslizar para descartar. (I925a9)
- Se agregó una demostración de
SwipeToReveal
de M3 con el modificadoredgeSwipeToDismiss
. (I02b07) - Agregamos un encabezado a
DatePicker
yTimePicker
en TalkBack para que el usuario sepa que debe desplazarse para configurar la fecha y la hora. (Id738d) AnimatedText
ahora sigue el parámetro de configuración de reducción de movimiento. (Ib6578)- Se mejoró la optimización para usar
AppScaffold
para mostrar el contenido de Dialog y permitir que se muestren varios diálogos uno encima del otro (I1209c).
Versión 1.0.0-alpha33
26 de febrero de 2025
Lanzamiento de androidx.wear.compose:compose-material3:1.0.0-alpha33
. La versión 1.0.0-alpha33 contiene estas confirmaciones.
Cambios en la API
- Quitamos el parámetro de etiqueta de
primaryAction
ysecondaryAction
deSwipeToRevealScope
. El desarrollador debe agregar la semántica de las acciones personalizadas directamente al contenido del componenteSwipeToReveal
. (Ia67f3) - Se quitaron los prefijos "Button" de los tamaños, los estilos de texto y las funciones de color en
IconToggleButtonDefaults
yTextToggleButtonDefaults
(I5471d). - Se quitó el elemento experimental
LocalMinimumInteractiveComponentEnforcement
(I4ad8a). - Reemplazamos el DSL de
PickerGroupScope
por un elemento componible. Por lo tanto, quitamos el métodopickerGroupItem
dePickerGroupScope
y, en su lugar, agregamos@Composable PickerGroupItem
, que se debe usar para agregar un Picker aPickerGroup
. También actualizamos el tipo del parámetroPickerGroup
"content" a@Composable PickerGroupScope.() -> Unit
. (Ic6aec) - Agregamos una sobrecarga de
LevelIndicator
para valores fraccionarios y un prefijo Stepper a las sobrecargas que incluyen un parámetro de rango (que son adecuadas para usar con el componente Stepper). (If4234) - Agregamos el
TransformationSpec
deTransformingLazyColumn
a la API, lo que permite definir las transformaciones exactas que se producen en los elementos a medida que se desplazan por el TLC. (I21856) - Se actualizaron
IconButtonShapes
,IconToggleButtonShapes
,TextButtonShapes
yTextToggleButtonShapes
para que sean coherentes con las clases de compose/material3 (I5a081). - Se agregó un parámetro
overscrollEffect
aScalingLazyColumn
,TransformingLazyColumn
yScreenScaffold
. (I0cee8) - Cambiamos el nombre del parámetro
swipeDirection
arevealDirection
enrememberRevealState
. (I7472f) - Wear Pager ahora tiene su propio
PagerScope
en lugar de usarPagerScope
de Compose. (I9195b) - Quitamos el elemento componible
LinearProgressIndicatorContent
. UsaLinearProgressIndicator
directamente para que los cambios en los valores se animen de forma predeterminada. (I2c4ad) - Quitamos el elemento
CircularProgressIndicatorStatic
componible y agregamos una función públicaDrawScope
drawCircularProgressIndicator
con la misma funcionalidad. UsaCircularProgressIndicator
directamente para que los cambios se animen de forma predeterminada, pero crea tu propio elemento componible a partir dedrawCircularProgressIndicator
si necesitas animaciones personalizadas. (Ie762f) - Se reorganizaron los parámetros en
DrawScope.drawCircularProgressIndicator
para subir el parámetrotargetProgress
. (I8ab92) - Se actualizó la API de
OpenOnPhoneDialog
para mejorar la claridad y la coherencia con otros diálogos. Se cambió el nombre del parámetroshow
avisible
, y el llamador ahora proporcionacurvedText
en lugar de tener un valor predeterminado. (Idec2d) - Cambiamos el nombre de
openOnPhoneCurvedText
aopenOnPhoneDialogCurvedText
(I65bdd). - Agregamos
ScrollIndicatorColors
para proporcionar colores personalizados aScrollIndicator
. (I9eb8c) - Permite configurar el color que se usa para dibujar un fondo detrás de
TimeText
. (I9f5d9) - Se actualizaron las tipografías
ArcLarge
,ArcMedium
yArcSmall
para que seanCurvedTextStyle
(Iffc41). - Quitamos
ScreenScaffoldDefaults.contentPaddingWithEdgeButton
. (Ia923e) - Agregamos
errorDim
aColorScheme
para errores de alta prioridad o acciones de emergencia, como alertas de seguridad, superposiciones de diálogo fallidas o botones de detener. (I70998)
Correcciones de errores
- Fijamos
wear.compose.material3
a la versión 1.15.0 deandroidx.core.core
(I132e9). - Mejoramos el rendimiento de Dialog usando
AppScaffold
para superponer diálogos sobre otro contenido de la pantalla (I1b9a4). - Se redujo el padding vertical interno de
EdgeButton
. (I1a5bb) - Agregamos semántica de botón a los botones de control deslizante. (I80cc6)
Versión 1.0.0-alpha32
29 de enero de 2025
Lanzamiento de androidx.wear.compose:compose-material3:1.0.0-alpha32
. La versión 1.0.0-alpha32 contiene estas confirmaciones.
Cambios en la API
- En
CurvedTextStyle
, dividimos el espaciado entre letras en espaciado entre letras en el sentido de las manecillas del reloj y espaciado entre letras en el sentido contrario a las manecillas del reloj. Esto es obligatorio porque las letras en sentido horario se extienden desde la línea base, mientras que las letras en sentido antihorario se extienden hacia adentro (por lo que se necesita un mayor espacio entre letras) (I4b848). - Actualizamos
IconButtonShapes
,IconToggleButtonShapes
,TextButtonShapes
yTextToggleButtonShapes
para mejorar la coherencia en las bibliotecas de Material 3. Este cambio también introduce el almacenamiento en caché de formas para reducir la cantidad de asignaciones. (I049fc) - Quitamos el parámetro
pressedShapeCornerSizeFraction
del métodovariantAnimatedShape
enIconToggleButton
yTextToggleButton
(I58a65). - Presentamos mejoras en la renderización de texto curvo (incluido
TimeText
) que son incompatibles con las pantallas no redondas. La compatibilidad con pantallas no redondas tampoco forma parte de los requisitos de Wear OS. Para obtener más información, consulta la guía de introducción. (I1cc1c) - Actualizamos
ButtonGroupScope
deButtonGroup
y reemplazamosButtonGroupItem
basado en DSL porModifier.weight
,Modifier.minWidth
yModifier.enlargeOnPress
. (I16c3c) - En la API de
ButtonGroup
, actualizamos el nuevoButtonGroupScope
basado en modificadores:enlargeOnPress
ahora se llamaanimateWidth
y toma unInteractionSource
, en lugar deMutableInteractionSource
, porque no es necesario mutarlo. También agregamos la constante públicaButtonGroupDefaults.DefaultMinWidth
, que es el ancho mínimo predeterminado de los botones en unButtonGroup
. (Ie27ec) - Actualizamos
ListHeaderDefaults.contentColor
para que comience con una letra en minúscula, ya que es una propiedad componible (I125a5). - Agregamos un parámetro de descripción de contenido a
SliderDefaults.DecreaseIcon
ySliderDefaults.IncreaseIcon
, con valores predeterminados adecuados (I2e1a7). - Cambiamos el nombre del parámetro
spacing
enPicker
yPickerGroup
averticalSpacing
(Ib75cc). - Quitamos
ConfirmationDialogDefaults.successText
yfailureText
porque se espera que quienes llamen aConfirmationDialog
proporcionen cadenas con más contexto. También se cambió el nombre deconfirmationCurvedText
porconfirmationDialogCurvedText
. Por último, se cambió el nombre del parámetroshow
de Dialog a visible para mantener la coherencia con otras actualizaciones recientes de los diálogos. (I10074) IconButton
cambió el nombre dedisabledImageOpacity
aDisabledImageOpacity
. (I5f94a)
Correcciones de errores
- Corregimos un error en la animación de
EdgeButton
para que se use el tamaño correcto en cada fotograma (Id3b58). - Se corrigió un problema por el que
animateContentSize
no funcionaba conButton
. (Ib18a0) - Cambiamos la escala de escritura de Title Large para que tenga un tamaño de fuente de
18dp
(Ic9d52). - Se actualizaron el espaciado y el tamaño del ícono de
AlertDialog
(Iac28c). - Se corrigieron las incoherencias en los puntos de interrupción de pantallas grandes (las pantallas de 225 dp o más son pantallas grandes) (I36474).
- Se corrigió un error menor en la posición del botón (I952c2).
Versión 1.0.0-alpha31
15 de enero de 2025
Lanzamiento de androidx.wear.compose:compose-material3:1.0.0-alpha31
. La versión 1.0.0-alpha31 contiene estas confirmaciones.
Cambios en la API
- Actualizamos todas las bibliotecas de Wear Compose al modo de "API explícita". (Iebf9f)
- Actualizamos las APIs de
ScreenScaffold
yEdgeButton
para que sea más fácil especificar el padding de contenido en las pantallas que incluyen unEdgeButton
. En la nueva API, elsize
deEdgeButton
solo se pasa aEdgeButton
, yScreenScaffold
toma un parámetroedgeButtonSpacing
para el espaciado entreEdgeButton
y el contenido de la lista. (I424fd) - En
DatePicker
, cambiamos el nombre de los parámetrosminDate
amaxDate
y deminValidDate
amaxValidDate
. EnDatePickerColors
, cambiamos el nombre del parámetroselectedPickerContentColor
aactivePickerContentColor
y el deunselectedPickerContentColor
ainactivePickerContentColor
(Iba17b). - Actualizamos los valores predeterminados de
ArcProgressIndicator
astrokeWidth=6dp
y recomendamosdiameter = 81.24%
de la altura de la pantalla (I6f248). - Actualizamos la API de Confirmation para reflejar su uso como diálogo. El elemento componible ahora se llama
ConfirmationDialog
, con actualizaciones asociadas a la nomenclatura de las clases de colores y valores predeterminados. También cambiamos el nombre del parámetroshow
avisible
para que sea compatible con otras APIs de animación de Compose. Además, pusimos a disposiciónConfirmationDialogContent
,SuccessConfirmationDialogContent
yFailureConfirmationDialogContent
para situaciones en las que los desarrolladores necesiten personalizar las animaciones de los diálogos de intro y outro. (Iaeb33) - Actualizamos
CircularProgressIndicatorContent
aCircularProgressIndicatorStatic
(la variación no animada deCircularProgressIndicator
) para que ahora se pueda usar para compilarCircularProgressIndicator
con animaciones personalizadas. (I1346f) - Corregimos el orden de los parámetros en
ArcProgressIndicator
y colocamos el parámetro del modificador en primer lugar (I4656a). - Se mejoró la API de
SwipeToReveal
para recibir un parámetro de ranura de texto para las etiquetas de las acciones (excepto la acción secundaria) y quitar los parámetros de etiqueta de la acción de deshacer (I5b3db).
Correcciones de errores
- Se corrigió un error por el que la respuesta háptica de
LongPress
se activaba más de una vez enButton
,Card
,IconButton
yTextButton
(Ia8b0f). - Cambios en la UX de
AlertDialog
: En pantallas grandes, los botones de confirmar y descartar ahora son más pequeños. También se aumentó el espacio debajo de los botones de confirmar y descartar. (I4f066) - Cambiamos las especificaciones de animación de la etiqueta del botón de acción del componente
SwipeToReveal
. (Ib87fb) - Se cambió
SwipeToReveal
para expandir el contenedor al mismo tiempo que se muestra el texto. (I44cf8) - Se mejoró
SwipeToReveal
para realizar comentarios hápticos cuando el deslizamiento supera el umbral en el que se confirma la acción principal. (I23efe) - Actualizamos
SwipeToReveal
para que muestre puntos suspensivos en el desbordamiento de texto de forma predeterminada, tanto para las acciones principales como para las de deshacer. (I71f5a) - Se corrigió un problema que causaba fluctuaciones en las animaciones de
ButtonGroup
. (I63f8f) - Se agregó semántica de texto a
AnimatedText
(I6063c). - Ahora, el diálogo restablece el ajuste de escala del fondo cuando se quita de la composición (sin esta corrección, es posible que la pantalla de inicio se haya quedado en un estado reducido) (Id24ac).
- Se agregó una animación de transformación de forma a los botones del componente Stepper (Id6ed3).
Versión 1.0.0-alpha30
11 de diciembre de 2024
Lanzamiento de androidx.wear.compose:compose-material3:1.0.0-alpha30
. La versión 1.0.0-alpha30 contiene estas confirmaciones.
Cambios en la API
- Se refactorizó el modificador
scrollTransform
paraTransformingLazyColumn
, lo que activó un cambio en la API. (I0c6dc) - Actualizamos
IconToggleButtonShapes
yTextToggleButtonShapes
para que tengan dos parámetros de forma diferentes,uncheckedPressed
ycheckedPressed
(I85dbd). - Las opciones de mes y día no válidas ahora son visibles en
DatePicker
, con un nuevoinvalidPickerContentColor
, cuando se usaminDate
omaxDate
. (If4541) - Actualizamos la API de
Stepper
para proporcionar ranuras deincreaseIcon
ydecreaseIcon
. El contenido de estas se puede compilar como de costumbre desde el elemento componible Icon. (Id35da) - Actualizamos
dynamicColorScheme
quitando el parámetro opcionaldefaultColorScheme
y ahora devolvemosColorScheme
anulable. Esto significa que el llamador debe controlar de forma explícita el caso de resguardo cuando no se proporciona un esquema de color dinámico. (I6d62e) - Actualizamos los tamaños de los íconos en
ButtonDefaults
para que se usen conCompactButton
. UnCompactButton
que solo contiene un ícono debe usarButtonDefaults.SmallIconSize = 24.dp
, mientras que unCompactButton
que contiene tanto un ícono como texto debe usarButtonDefaults.ExtraSmallIconSize = 20.dp
. Se recomienda queCompactButton
ajuste su contenido (en lugar de ocupar el ancho máximo), y se actualizaron los ejemplos para mostrarlo. (I0582c) - Agregamos
EdgeButtonDefaults
con tamaños de íconos recomendados para los 4 diferentesEdgeButtonSizes
. También se actualizó el diseño deEdgeButton
para que tenga un relleno inferior ligeramente más grande que el relleno superior, lo que mejora la apariencia del contenido de íconos y texto. (Id772a) - Agregamos movimiento a
LinearProgressIndicator
y expusimosLinearProgressIndicatorContent
, que proporciona el contenido visual sin animaciones. (Idee99) - Agregamos un nuevo elemento
CircularProgressIndicatorContent
componible para mostrar el contenido visual deCircularProgressIndicator
sin animaciones. (Ie33d4) TransformingLazyColumn
ahora proporciona el local de composiciónLocalTransformingLazyColumnItemScope
queCard
s,Button
s yListHeader
s ahora usan para transformarse automáticamente cuando se colocan dentro de unTransformingLazyColumn
. Los llamadores pueden inhabilitar la transformación automática con el nuevo wrapperTransformExclusion
. (I1652f)- Se actualizó el tipo de
ButtonDefaults.shape
aRoundedCornerShape
(Iccdf2).
Correcciones de errores
- Corregimos un error para respetar el alfa existente en el fondo de
TimeText
(I1eb60). - Establecimos
TextMotion
enAnimated
de forma predeterminada en nuestra tipografía para evitar el jitter del texto debido al ajuste de los glifos de letras a los límites de píxeles durante las operaciones de ajuste. (I626fa) - Actualizamos la apariencia de
ScrollIndicator
aumentando el ancho y el tamaño del espacio para mejorar la visibilidad. (Ied7cb) - Corregimos un error en
Modifier.scrollTransform
que se producía al agregar, quitar o mover elementos. (I6830f) - Se corrigió un problema de animación del botón redondo para los toques breves (anteriormente, no siempre se observaba la duración mínima de la animación). (I757a7)
- Actualizamos el ángulo de barrido de
LevelIndicator
al 20% (es decir, 72 grados). (Idde5c) - Se corrigió el posicionamiento de
ScrollIndicator
cuando se usabaScalingLazyColumn
conAutoCenteringParams
. (I387dd) - Actualizamos los colores y la tipografía de
ListHeader
yListSubHeader
. También los colores de los controles de activación enCheckboxButton
ySwitchButton
. (I39817) - Se corrigió el posicionamiento de
ScrollIndicator
enLazyColumn
yScalingLazyColumn
conContentPadding
. (I2bc51) - Corregimos un error que se veía en la animación de progreso de
OpenOnPhoneDialog
con el nuevoCircularProgressIndicatorContent
. (I3e443) - Actualizamos
HorizontalPagerScaffold
yVerticalPagerScaffold
para inhabilitar las animaciones cuando se habilita la opción Reducir movimiento (Iaaf68). - Implementamos una animación separada para los indicadores de progreso circulares cuando el progreso supera el 100%. (I47135)
- Corregimos un error por el que
EdgeButton
se podía dibujar con una forma incorrecta en los componentes de Pager (I91db9).
Versión 1.0.0-alpha29
13 de noviembre de 2024
Lanzamiento de androidx.wear.compose:compose-material3:1.0.0-alpha29
. La versión 1.0.0-alpha29 contiene estas confirmaciones.
Cambios en la API
- Actualizamos
TimeText
para proporcionar contenido predeterminado que muestre la hora. (Id23b3) - Simplificamos el
ScrollInfoProvider
paraPagerState
quitando el parámetroorientation
, que ya no es necesario. El nuevo comportamiento es queTimeText
permanezca en su lugar para la paginación horizontal y vertical. (I71767) LocalHapticFeedback
ahora proporciona una implementación predeterminada deHapticFeedback
cuando la API de Vibrator indica que se admiten los hápticos. Se agregaron los siguientes elementos aHapticFeedbackType
:Confirm
,ContextClick
,GestureEnd
,GestureThresholdActivate
,Reject
,SegmentFrequentTick
,SegmentTick
,ToggleOn
,ToggleOff
,VirtualKey
. Los componentes de Wear Compose que se pueden mantener presionados, comoButton
,IconButton
,TextButton
yCard
, ahora realizan la respuesta hápticaLONG_PRESS
cuando se proporciona un controlador de mantener presionado. (I5083d)
Correcciones de errores
- Actualizamos el movimiento de las Confirmaciones. (I04bff)
- Actualizamos la dependencia mínima de la API a 1.7.4 para las bibliotecas de Compose. (I88b46)
- Se agregó un nuevo movimiento para el diálogo
OpenOnPhone
. (I1e10a) - Corregimos un error en
LevelIndicator
para que ahora se muestre correctamente cuando el nivel es cero. (Ie95a4) - Actualizamos las animaciones de
HorizontalPageIndicator
yVerticalPageIndicator
. (I5c8f3) - Agregamos una animación de reducción a punto al
ArcProgressIndicator
indeterminado. (I9fd51)
Versión 1.0.0-alpha28
30 de octubre de 2024
Lanzamiento de androidx.wear.compose:compose-material3:1.0.0-alpha28
. La versión 1.0.0-alpha28 contiene estas confirmaciones.
Cambios en la API
- Agregamos una variación de arco en el indicador de progreso circular indeterminado (I2efc1).
- Publicamos los elementos
AlertDialogContent
yDialog
componibles que conforman la API deAlertDialog
, de modo que se pueda agregar personalización si es necesario (por ejemplo, personalizar la animación deAlertDialog
y mantener el diseño de contenido recomendado). Además, agregamos los parámetrosModifier
yColor
a los miembrosEdgeButton
,ConfirmButton
yDismissButton
deAlertDialogDefaults
. (I4eb71) - Actualizamos la API de
Placeholder
de la siguiente manera: cambiamos el nombre dePlaceholderState.startPlaceholderAnimation
aPlaceholderState.animatePlaceholder
, dePlaceholderState.isShowContent
aPlaceholderState.isHidden
y dePlaceholderDefaults.shape
aPlaceholderDefaults.Shape
; cambiamos el nombre del parámetropainter
enpainterWithPlaceholderOverlayBackgroundBrush
aoriginalPainter
; cambiamos la visibilidad dePlaceholderState.placeholderProgression
de pública a interna y le cambiamos el nombre aplaceholderShimmerProgression
; agregamos constantes de duración de la animación de marcador de posición aPlaceholderDefaults
. (Ie5a59) - Actualizamos la API de
EdgeButton
de la siguiente manera: cambiamos el nombre del parámetro enScreenScaffold
debottomButton
aedgeButton
y convertimosEdgeButtonSize
en una clase de valor. (Ieef15) - Cambiamos la visibilidad de
copy()
a pública en las clases de colores de Wear Material 3 (I0287f).
Correcciones de errores
- Se agregó una duración mínima de la animación para
IconToggleButton
yTextToggleButton
cuando se hace clic (Ieb333). - Se agregó una duración mínima a la animación de formas
IconButton
yTextButton
(Iebcee). - Se corrigió el estado de la opción de repetición de
DatePicker
. (I3587c) - Se agregó movimiento a los diálogos de alerta y confirmación. (I173b1)
Versión 1.0.0-alpha27
16 de octubre de 2024
Lanzamiento de androidx.wear.compose:compose-material3:1.0.0-alpha27
. La versión 1.0.0-alpha27 contiene estas confirmaciones.
Cambios en la API
- Actualizamos
ScreenScaffold
yScrollIndicator
después de cambiar el nombre deLazyColumn
de Wear Compose Foundation aTransformingLazyColumn
. (I0608b) - Se cambió el nombre del parámetro
preferredHeight
deEdgeButton
abuttonSize
, y su valor solo se puede elegir entre 4 constantes en la clase de valorEdgeButtonSize
recientemente introducida. (Icdd70) - Cambiamos el nombre de
ListSubheader
aListSubHeader
y agregamos valores predeterminados accesibles de forma pública paraListHeader
yListSubHeader
. (I96730) - Agregamos nuevos componentes
HorizontalPagerScaffold
yVerticalPagerScaffold
para Wear que proporcionan nuevas animaciones y coordinación entre los componentes de texto de hora y de indicador de página. (Iff7d0) - Agregamos compatibilidad con la entrada rotativa a
HorizontalPagerScaffold
yVerticalPagerScaffold
, lo que permite a los usuarios navegar por los paginadores con dispositivos de entrada rotativa. (I9770d) - Realizamos cambios en la API de
MotionScheme
para simplificar su uso y mejorar la coherencia. Se quitaron las funciones remember intercaladas y se trasladaron los esquemas de movimiento integrados a un objeto complementario MotionScheme dedicado. Se cambió el nombre destandardMotionScheme
yexpressiveMotionScheme
a estándar y expresivo. (I5fd45) - Se agregó compatibilidad con un esquema de colores dinámico basado en los colores del sistema. (I073e9)
- Actualizamos el componente Stepper según las especificaciones de UX más recientes. (I622bb)
Correcciones de errores
- Actualizamos la tipografía y los paddings de los componentes de Card. (I3ae48)
- Cambiamos el padding en
AlertDialog
entre los botones Confirmar/Descartar y el resto del contenido de 8 dp a 12 dp según las especificaciones de UX (Ie55f0). - Actualizamos la opacidad del color para el componente Slider. (Idb383)
Versión 1.0.0-alpha26
2 de octubre de 2024
Lanzamiento de androidx.wear.compose:compose-material3:1.0.0-alpha26
. La versión 1.0.0-alpha26 contiene estas confirmaciones.
Cambios en la API
- Se actualizó la API y la apariencia de
HorizontalPageIndicator
, y se agregóVerticalPageIndicator
para usar conVerticalPager
(Ic9309). AlertDialog
ahora admite la capacidad de omitir el botón inferior predeterminado de la variación de la pila de botones para diseños personalizados en los que no se requiere EdgeButton. (I34fa9)- Agregamos un componente
SwipeToReveal
para Wear Material 3 (Ic38b2). - Agregamos compatibilidad con el deslizamiento bidireccional en
SwipeToReveal
para los casos poco frecuentes en los que la pantalla actual no admite el deslizamiento para descartar. El comportamiento predeterminado sigue siendo deslizar para revelar solo en los deslizamientos de derecha a izquierda, y se recomienda respetar el comportamiento predeterminado para evitar conflictos con el gesto de deslizar para descartar. (Ifac04) - Se cambió el nombre del parámetro
buttonHeight
deEdgeButton
apreferredHeight
. (I4fab3) - Se actualizó la versión de Kotlin a 1.9 (I1a14c).
- Cambiamos el nombre de
OpenOnPhoneDialogDefaults.Icon
aOpenOnPhoneDialogDefaults.OpenOnPhoneIcon
para evitar conflictos conIcon
(I0f391). - Agregamos compatibilidad con
ScrollIndicator
enLazyColumn
. (Ia546a) - Actualizamos los valores predeterminados para
TextToggleButton
yIconToggleButton
. (I7aaa9) - Simplificamos las APIs de
Picker
yPickerGroup
. (Id0653) - Agregamos
CardDefaults.Shape
yCardDefaults.Height
, que (al ser tokens) eran privados para los desarrolladores que usaban la biblioteca. (I1594a, b/347649765) - Cambiamos el nombre del parámetro de progreso del indicador de progreso circular segmentado binario a
segmentValue
. (Ib72d9) - Actualizamos los colores y el diseño del control deslizante. (Ic3eec)
Correcciones de errores
- Actualizamos la animación del ícono de
openOnPhone
(I66f85). - Ahora usamos íconos de Símbolos de Google en
Slider
,TimePicker
yDatePicker
. (I46c7c) - Actualizamos los paddings en
Confirmation
yOpenOnPhoneDialog
. (Iaa82e)
Versión 1.0.0-alpha25
18 de septiembre de 2024
Lanzamiento de androidx.wear.compose:compose-material3:1.0.0-alpha25
. La versión 1.0.0-alpha25 contiene estas confirmaciones.
Cambios en la API
- Se agregó un indicador de progreso circular indeterminado. (I427a7)
- Se agregó compatibilidad con el desbordamiento del progreso (más del 100% de progreso) para
CircularProgressIndicator
ySegmentedCircularProgressIndicator
. Cuando el progreso supere el 1.0, se indicará con el nuevo coloroverflowTrack
. (Iaaa3d) - Los elementos
IconToggleButton
yTextToggleButton
redondos ahora admiten una nueva variación de animación de forma, en la que diferentes formas representan los estados seleccionado, no seleccionado y presionado. Se sigue admitiendo la variación de forma animada anterior para el estado de presión. (I29f03) - Quitamos la compatibilidad con el uso de
EdgeButton
conColumn
debido a la necesidad de especificar la altura deEdgeButton
de forma explícita enScreenScaffold
. (Ie353d) - Agregamos compatibilidad con
LazyColumn
de Wear Compose con nuestroScreenScaffold
(y agregamos una implementación deScrollInfoProvider
paraLazyColumnState
). (Ib8d29) - Combinamos
LocalTextMaxLines
,LocalTextAlign
yLocalTextOverflow
en un soloLocalTextConfiguration
local de composición para proporcionar una solución más escalable en el futuro. (I5edbc) - Agregamos arc-large como una escala de escritura adicional, reservada para cadenas de texto de encabezado cortas en la parte superior o inferior de la pantalla, como en las superposiciones de confirmación. (I60e3e)
- Agregamos valores predeterminados al botón para los tamaños de ícono grandes y extragrandes recomendados, y el padding de contenido. (I84675)
Correcciones de errores
- Actualizamos los colores de
IconButton
yTextButton
. (I48324) - Cambiamos las sobrecargas base de Button para que estén alineadas verticalmente en el centro y sean coherentes con otras sobrecargas. Para restablecer el comportamiento anterior, usa
Modifier.align
deRowScope
. (I66e57)
Versión 1.0.0-alpha24
4 de septiembre de 2024
Lanzamiento de androidx.wear.compose:compose-material3:1.0.0-alpha24
. La versión 1.0.0-alpha24 contiene estas confirmaciones.
Cambios en la API
- Se agregó un esquema de movimiento al tema de Material 3. Los componentes de la biblioteca usarán este objeto para aplicar especificaciones de animación, como resortes para un movimiento expresivo. (I54ff3)
- Agregamos los componentes
AppScaffold
yScreenScaffold
a la biblioteca de Material3, que incluyen la funcionalidad para coordinar las capas y las transiciones deTimeText
yScrollIndicator
.AppScaffold
proporciona un nivel superior de componentes de andamiaje que se encuentran en la parte superior de todas las pantallas. Por lo tanto, agregarTimeText
alAppScaffold
permite que permanezca en su lugar mientras se desliza entre pantallas. Las pantallas pueden anular u ocultar el texto de la hora.ScreenScaffold
proporciona una ranura paraScrollIndicator
y anima automáticamente el indicador de desplazamiento cuando se desplaza, incluido el tiempo de espera para ocultar el indicador de desplazamiento después de la inactividad. (I047d6) - Agregamos
ScrollIndicator
con el nuevo diseño de Material 3. Tiene un tamaño de miniatura fijo basado en el contenido inicial de la lista para evitar variaciones de tamaño cuando se carga contenido diferido en la lista. (Ic228d) - Cambiamos la API de
ScrollAway
para queScreenStage
sea una clase de valor en lugar de una clase de enumeración, lo que permite agregar etapas adicionales según sea necesario en el futuro. (I48c93) - Agregamos
EdgeButton
, un botón distintivo específico para Wear con una forma que sigue la curvatura de la parte inferior de la pantalla (I16369). - Agregamos una nueva ranura al
ScreenScaffold
para un botón inferior (comoEdgeButton
), que se mostrará y cambiará de tamaño según el contenido de desplazamiento (I032eb). - Agregamos
Modifier.scrollTransform
yModifier.targetMorphingHeight
para agregar efectos de movimiento de Material 3 a los elementos deLazyColumn
. (Ie229a) - Agregamos
SegmentedCircularProgressIndicator
como una variación deCircularProgressIndicator
. La variación segmentada muestra un solo valor de progreso en todos los segmentos o muestra cada segmento como activado o desactivado. (I6e059) - Agregamos
LinearProgressIndicator
como alternativa alCircularProgressIndicator
existente. (I89182) - Agregamos
AlertDialog
, que proporciona diseños para presentar mensajes importantes al usuario. Se incluyen variaciones para un par de botones de confirmación o descarte, o un solo botón inferior (por lo general, un EdgeButton) debajo de una pila de opciones. Ambas variaciones tienen espacios para el ícono, el título y texto adicional para proporcionar más detalles. (Ieb873) - Agregamos
OpenOnPhoneDialog
, que se debe usar para indicar una acción que continuará en el teléfono del usuario.OpenOnPhoneDialog
se descarta después de un tiempo de espera especificado. (I978fd) - Agregamos
Confirmation
, un componente de diálogo que tiene ranuras para un ícono y texto curvo o lineal. Se proporcionan variaciones específicas para los mensajes de éxito o error. Las confirmaciones se descartan automáticamente después de un tiempo de espera. (Ib43e8) - Agregamos un fondo a
TimeText
para mitigar los problemas en los que el contenido subyacente y elTimeText
se superponían y ocultaban la hora. (Ia11fd) - Agregamos
LevelIndicator
, que muestra el valor de un parámetro de configuración, como el volumen, y se puede usar con el componenteStepper
existente para crear una pantalla de volumen.LevelIndicator
es similar aScrollIndicator
, pero se muestra en el lado opuesto de la pantalla y tiene un ancho de trazo más amplio y un color de indicador diferente de forma predeterminada. (I8a4ac) - Agregamos
TimePicker
, con diseños para la hora en formato de 24 horas (con o sin segundos) o en formato de 12 horas con selección de a.m./p.m. (Ia5124) - Agregamos
DatePicker
, con configuración para el orden de las columnas (es decir, día-mes-año, mes-día-año o año-mes-día) y fechas mínimas y máximas opcionales. (Ibf13b) - Agregamos un parámetro de peso a la función
text
deTimeText
. En los casos en que TimeText se compone de más de un elemento de texto, esto permite controlar cómo se distribuye el espacio. (I36700) - Agregamos
RadioButton
ySplitRadioButton
. Estos componentes simplifican la API anterior combinando el control de radio secundario (If7ae8) y el (Split)SelectableButton
. - Agregamos
CheckboxButton
ySplitCheckboxButton
. Estos componentes simplifican la API anterior combinando el control (dividido)ToggleButton
y el control de casilla de verificación secundario (Ia8f70). - Agregamos
SwitchButton
ySplitSwitchButton
. Estos componentes simplifican la API anterior combinando el(Split)ToggleButton
y el control secundario de interruptor (I0d349). - Actualizamos la documentación de
AnimatedText
para explicar el comportamiento de sobrepaso. (Iff30a) - Agregamos
ButtonGroup
para combinar 2 o 3 botones de modo que las pulsaciones de los botones produzcan una animación coordinada. (Ie27db) - Agregamos una animación de forma opcional para
IconButton
yTextButton
cuando se presionan. (Iffca5) - Agregamos una variación de color adicional,
FilledVariant
, aButton
,IconButton
,TextButton
,CompactButton
yEdgeButton
(I65fc3). - Agregamos el parámetro
forcedSize
aImageWithScrimPainter
, de modo que los fondos de las imágenes de los botones ahora mantienen el tamaño del componente de forma predeterminada. Si se estableceforcedSize = null
, se adoptaPainter.instrinsicSize
en su lugar. (Ic57af) - Agregamos la acción de mantener presionado a los botones (Ib613d).
- También se agregó compatibilidad con clics largos a
IconButton
yTextButton
. (I38891) - Se agregó compatibilidad con el clic prolongado en las tarjetas. (I305d5)
- Agregamos
LocalTextMaxLines
,LocalTextAlign
yLocalTextOverflow
comoCompositionLocals
y los usamos como valores predeterminados de parámetros enText
. Los elementos locales de composición ahora pueden ser utilizados por componentes comoCheckboxButton
,SwitchButton
yRadioButton
para implementar orientación sobre la UX, pero los desarrolladores pueden anular los parámetros si es necesario. (Iab841) - Agregamos
Placeholder
para ayudar a enmascarar el contenido de componentes como botones y tarjetas hasta que se carguen los datos. (I1a532) - Agregamos
IconToggleButtonColors
yTextToggleButtonColors
para reemplazarToggleButtonColors
, que ya se quitó. (Ie0bf1)
Correcciones de errores
- Actualizamos
Button
,FilledTonalButton
,OutlinedButton
,ChildButton
yCompactButton
para usar los nuevosCompositionLocals
LocalTextMaxLines
,LocalTextAlign
yLocalTextOverflow
para implementar la orientación de UX. Los desarrolladores pueden anular estos parámetros directamente en el texto si es necesario (Ie51f7). - Cambiamos el ancho de trazo predeterminado de
LevelIndicator
a6dp
para diferenciarlo delScrollIndicator
, que tiene un ancho de trazo de4dp
. (If6f63) - Corregimos un problema en
TimeText
para que se admitan ángulos de barrido más grandes. (Ie489f) - Se corrigió un problema durante la recomposición de
EdgeButton
. (I4cdca) - Se corrigieron los diseños de los botones de alternancia divididos cuando se proporciona un padding de contenido personalizado. (Ia33d3)
- Se redondearon los valores de progreso pequeños para que sean, al menos, del ancho de la línea del indicador de progreso. (I3bd84)
Versión 1.0.0-alpha23
14 de mayo de 2024
Lanzamiento de androidx.wear.compose:compose-material3:1.0.0-alpha23
. La versión 1.0.0-alpha23 contiene estas confirmaciones.
Cambios en la API
- Actualizamos las APIs de
ToggleButton
yRadioButton
para que se puedan configurar los colores inhabilitados. (If13a7) - Agregamos un nuevo
CircularProgressIndicator
para Material3. (Ib3bd7)
Correcciones de errores
- Corregimos un error por el que los botones seleccionables anunciaban que se debía presionar dos veces para activar o desactivar cuando ya estaban seleccionados. (I7ed88)
Versión 1.0.0-alpha22
1 de mayo de 2024
Lanzamiento de androidx.wear.compose:compose-material3:1.0.0-alpha22
. La versión 1.0.0-alpha22 contiene estas confirmaciones.
Cambios en la API
- Actualizamos
ColorScheme
de Material3. (I7b2b8) - Actualizamos el interruptor de Material 3. Además de algunos cambios de color, la marca de verificación ahora coincide con la que se usa para la casilla de verificación. (Icac7b)
Correcciones de errores
- Actualiza todas las demostraciones de integración para usar el nuevo modificador
rotaryScrollable
. (I25090)
Versión 1.0.0-alpha21
17 de abril de 2024
Lanzamiento de androidx.wear.compose:compose-material3:1.0.0-alpha21
. La versión 1.0.0-alpha21 contiene estas confirmaciones.
- Esta versión se lanzó debido a un problema técnico en la versión anterior que provocó que faltaran archivos JAR de código fuente. No hay confirmaciones nuevas en esta versión.
Versión 1.0.0-alpha20
3 de abril de 2024
Lanzamiento de androidx.wear.compose:compose-material3:1.0.0-alpha20
. La versión 1.0.0-alpha20 contiene estas confirmaciones.
Correcciones de errores
- Ajustamos los valores alfa de los estados de enfoque y presión de Ripple para mejorar el contraste. (I59f0a)
- Agregamos espaciado entre las etiquetas principales y secundarias en
Button
,ToggleButton
yRadioButton
, según los cambios más recientes en los estilos de tipografía y las alturas de línea. (I2c0ba)
Versión 1.0.0-alpha19
6 de marzo de 2024
Lanzamiento de androidx.wear.compose:compose-material3:1.0.0-alpha19
. La versión 1.0.0-alpha19 contiene estas confirmaciones.
Cambios en la API
- Se agregó
TimeText
a la biblioteca de Wear Compose Material3. Este componente muestra la hora actual (y el estado adicional) en la parte superior de la pantalla. La nueva y concisa API de Material 3 evita la duplicación entre el contenido lineal y el curvo. (I4d7c3) - Actualizamos los nombres de los parámetros de
onSelected
aonSelect
paraRadioButton
. (I1a971) - Se tokenizan
RadioButton
ySplitRadioButton
, y también se refactorizan los métodos existentes para reducir la cantidad de búsquedas deCompositionLocal
agregando instancias almacenadas en caché de colores y haciendo que los métodos deRadioButtonColors
ySplitRadioButtonColors
sean internos. (I02b33)
Versión 1.0.0-alpha18
21 de febrero de 2024
Lanzamiento de androidx.wear.compose:compose-material3:1.0.0-alpha18
. La versión 1.0.0-alpha18 contiene estas confirmaciones.
Cambios en la API
- Refactorizamos el patrón de valores predeterminados para
CardColors
,ToggleButtonColors
ySplitToggleButtonColors
creando instancias almacenadas en caché de forma interna y reduciendo el uso deCompositionLocal
. (If3fec)
Versión 1.0.0-alpha17
7 de febrero de 2024
Lanzamiento de androidx.wear.compose:compose-material3:1.0.0-alpha17
. La versión 1.0.0-alpha17 contiene estas confirmaciones.
Cambios en la API
- Actualizamos la API de Button para que use
buttonColors
de forma predeterminada y quitamos elfilledButtonColors
duplicado. (I4fe3b) - Refactorizamos los patrones predeterminados para
ButtonColors
,IconButtonColors
yTextButtonColors
creando una instancia almacenada en caché de forma interna y reduciendo el uso deCompositionLocal
. (I5f51c) - Quitamos la sobrecarga de
rememberUpdatedState
en las clases de color específicas del componente y marcamos los métodos de acceso dentro de las clases de color como internos. (If6571)
Correcciones de errores
- Actualizamos
Modifier.minimumInteractiveComponentSize
para que useModifier.node
. (Iba6b7)
Versión 1.0.0-alpha16
24 de enero de 2024
Lanzamiento de androidx.wear.compose:compose-material3:1.0.0-alpha16
. La versión 1.0.0-alpha16 contiene estas confirmaciones.
Nuevas funciones
- Agregamos
CompactButton
, que puede usar los mismos colores con relleno, con relleno tonal y con contorno que Button (I05df0).
Cambios en la API
- Agregamos
RadioButton
/SplitRadioButton
como contenedores para los controles de selección, como el control de radio. Esto difiere delToggleButton
existente en queRadioButton
se puede seleccionar (y funciona dentro de un grupo de selección), mientras queToggleButton
se puede activar o desactivar (y es independiente). (I61275) - Quitaremos
LocalContentAlpha
de la biblioteca de Wear Compose Material3 para que sea coherente con la biblioteca de Compose Material3. (I49a0a) - Los componentes de Wear Material y Wear Material 3 que exponen un
MutableInteractionSource
en su API se actualizaron para exponer unMutableInteractionSource
anulable que tiene el valor nulo de forma predeterminada. Aquí no hay cambios semánticos: pasar nulo significa que no deseas elevar elMutableInteractionSource
, y se creará dentro del componente si es necesario. Cambiar a nulo permite que algunos componentes nunca asignen unMutableInteractionSource
y que otros componentes solo creen una instancia de forma diferida cuando la necesiten, lo que mejora el rendimiento en todos estos componentes. Si no usas elMutableInteractionSource
que pasas a estos componentes, te recomendamos que pases null en su lugar. También se recomienda que realices cambios similares en tus propios componentes. (Ib90fc, b/298048146) - Se agregó una nueva API de ondulación en las bibliotecas
wear:compose-material
ywear:compose-material3
que reemplaza la API derememberRipple
obsoleta. También se agrega unCompositionLocal
temporal,LocalUseFallbackRippleImplementation
, para revertir los componentes de Material al uso de las APIs derememberRipple/RippleTheme
que dejaron de estar disponibles. Se quitará en la próxima versión estable y solo está pensado para ser una ayuda temporal para la migración en los casos en los que proporcionas unRippleTheme
personalizado. Consulta developer.android.com para obtener información sobre la migración y más información general sobre este cambio. (af92b21) - Realizamos pequeñas mejoras en la API de
HorizontalPageIndicator
y su documentación. (I60efc) - Actualizamos
ColorScheme
para que sea inmutable, lo que hace que las actualizaciones de color individuales sean menos eficientes, pero que el uso más común de los colores sea más eficiente. El motivo de este cambio es que la mayoría de las apps no tendrían la actualización de colores individuales como caso de uso principal. Esto sigue siendo posible, pero se volverá a componer más que antes. A su vez, disminuiremos significativamente la cantidad de suscripciones de estado en todo el código de Material, lo que afectará el costo de inicialización y de tiempo de ejecución de los casos de uso más estándares. (Ibc2d6) - Se actualizaron las APIs de
ToggleButton
ySplitToggleButton
para permitir la personalización de los colores inhabilitados. Además, ahora se usan tokens de Material Design para los valores de color y tipografía. (If087c) - Se actualizaron los colores de fondo de las imágenes de los botones para usar tokens de Material Design. (Iba215)
- Cambiamos los componentes
Checkbox
,Switch
yRadioButton
para que solo se muestren, ya que quitamos el control de clics. Se espera que estos componentes se usen en(Split)ToggleButton
, que controla el clic, por lo que ahora se indican con mayor claridad como solo para mostrar (y no están diseñados para usarse de forma independiente en Wear). (I2322e)
Correcciones de errores
- Agregamos tokens para los valores de movimiento de duraciones y aceleraciones en Wear Compose Material 3. (I437cd)
- Corregimos un error en
ToggleButton
,SplitToggleButton
,Checkbox
,Switch
yRadioButton
para que no se repitan los anuncios de accesibilidad (antes, se duplicaban los roles semánticos). (Ica281) - Quitamos la capa materialcore para
CompactButton
y mejorar el rendimiento. (7902858)
Versión 1.0.0-alpha15
15 de noviembre de 2023
Lanzamiento de androidx.wear.compose:compose-material3:1.0.0-alpha15
. La versión 1.0.0-alpha15 contiene estas confirmaciones.
Cambios en la API
- Cambiamos el nombre del nivel básico
SwipeToDismissBox
aBasicSwipeToDismissBox
. Esto hace que la distinción entre el componente de nivel Foundation y elSwipeToDismissBox
de nivel Material3 sea más clara. Este último extrae colores deMaterialTheme
para usarlos en las cortinas y delega la implementación restante enBasicSwipeToDismissBox
. (Ibecfc)
Correcciones de errores
- Quitamos la capa material-core del botón de Material3 para mejorar el rendimiento. (I55555)
Versión 1.0.0-alpha14
18 de octubre de 2023
Lanzamiento de androidx.wear.compose:compose-material3:1.0.0-alpha14
. La versión 1.0.0-alpha14 contiene estas confirmaciones.
Cambios en la API
- Quitamos el parámetro
indicatorStyle
deHorizontalPageIndicator
de Material3. En su lugar, seguirá la forma de la pantalla del dispositivo (lineal o redonda). (I83728) - Separamos los colores de
SplitToggleButton
de los deToggleButton
agregando una nueva claseSplitToggleButtonColors
. (I78bee)
Versión 1.0.0-alpha13
4 de octubre de 2023
Lanzamiento de androidx.wear.compose:compose-material3:1.0.0-alpha13
. La versión 1.0.0-alpha13 contiene estas confirmaciones.
Cambios en la API
- Agregamos un campo Subtítulo opcional a
TitleCard
. (Ifc45a) - Agregamos tokens de color de Material Design para
TextButton
. (I769dc)
Versión 1.0.0-alpha12
20 de septiembre de 2023
Lanzamiento de androidx.wear.compose:compose-material3:1.0.0-alpha12
. La versión 1.0.0-alpha12 contiene estas confirmaciones.
Cambios en la API
- Actualizamos
IconButton
para usar tokens de Material Design. (I3f137) - Actualizamos
IconToggleButton
para usar tokens de Material Design. (I7d263) - Hicimos públicos los constructores de
CheckboxColors
,RadioButtonColors
ySwitchColors
. (I82b73)
Versión 1.0.0-alpha11
6 de septiembre de 2023
Lanzamiento de androidx.wear.compose:compose-material3:1.0.0-alpha11
. La versión 1.0.0-alpha11 contiene estas confirmaciones.
Correcciones de errores
- Actualizamos la tipografía de las tarjetas de Material 3 a
TitleMedium
. (I597bd) - Actualizamos la tipografía y la alineación de nuestros elementos
ListHeader
yListSubheader
de Material 3. (Ib5ceb)
Versión 1.0.0-alpha10
23 de agosto de 2023
Lanzamiento de androidx.wear.compose:compose-material3:1.0.0-alpha10
. La versión 1.0.0-alpha10 contiene estas confirmaciones.
Nuevas funciones
- Se agregó
HorizontalPageIndicator
en la biblioteca de Wear Material3. (Ifee99)
Cambios en la API
- Se actualizó el código de los botones para usar tokens de diseño de Material 3. (I92fe4)
- Declaramos las APIs de Stepper y Slider de Wear Material 3 como experimentales, ya que aún se están definiendo los detalles de la interfaz de usuario. (I84d54)
- Quitamos los tamaños
ExtraSmall
de las formas redondasTextButton
yTextToggleButton
, ya que ese tamaño solo se aplica a la formaIconButton
. (Ibc7d5)
Correcciones de errores
- Actualizamos la guía sobre la tipografía de TextToggleButton para usar LabelLarge en LargeButtonSize (Ib10fa).
- Actualizamos la guía sobre la tipografía de TextButton para usar LabelLarge en LargeButtonSize (I8f3a7).
- Configuramos el objetivo táctil mínimo de la tarjeta en 48 dp para garantizar la accesibilidad. (Ieb9b1)
- Se agregó la demostración de AppCard con imagen y se quitó la demostración de AppCard con fondo (Id735f).
- Se corrigió un error en los botones redondos en el que los modificadores no se encadenaban correctamente. (I5e162)
Versión 1.0.0-alpha09
9 de agosto de 2023
Lanzamiento de androidx.wear.compose:compose-material3:1.0.0-alpha09
. La versión 1.0.0-alpha09 contiene estas confirmaciones.
Nuevas funciones
- Se agregó
ToggleButton
para Material 3 (I6bed6).
Cambios en la API
- Activamos la anotación
FloatRange
como restricciones de la API , que antes se indicaban en los comentarios. (Icb401) - Actualizamos la tipografía de Wear Material3 para que cumpla con los lineamientos más recientes de Material3. (I1bad6)
Correcciones de errores
- Actualizamos los colores de
Button
,IconButton
yTextButton
según el diseño de Material 3. (Ib2495) - Corregimos la visibilidad de la marca de verificación en los estados inhabilitados. (Ib25bf)
Versión 1.0.0-alpha08
26 de julio de 2023
Lanzamiento de androidx.wear.compose:compose-material3:1.0.0-alpha08
. La versión 1.0.0-alpha08 contiene estas confirmaciones.
Nuevas funciones
- Agregamos los siguientes controles de selección para Material3:
Switch
,Checkbox
yRadioButton
. (Ib918c) - Agregamos
IconToggleButton
yTextToggleButton
a Material 3, un botón de activación circular con una sola ranura para el ícono y el texto, respectivamente. Para los diferentes tamaños deToggleButton
, recomendamos usarModifier.touchTargetAwareSize
con los tamaños proporcionados en los respectivos botones de activación. (I9f015) - Agregamos
ListHeader
yListSubheader
a nuestros componentes de Material 3. (Ibaefe) - Agregamos Material3
SwipeToDismissBox
, que llama al nuevo FoundationSwipeToDismissBox
y proporciona valores de color predeterminados desde su tema. (I275fb) - Agregamos
InlineSlider
de Material3 a Wear Compose. Permite que los usuarios seleccionen un rango de valores. El rango de selecciones se muestra como una barra entre los valores mínimos y máximos del rango, desde el que los usuarios pueden seleccionar un solo valor.InlineSlider
es ideal para ajustar parámetros de configuración, como el volumen o el brillo. (I7085f)
Cambios en la API
- Actualizamos las formas del tema de Material 3 para Wear para que usen
RoundedCornerShape
en lugar de Shape. (Idb133) - Hicimos públicas las constantes de altura para Button (Idbfde).
- Se actualizaron los archivos de la API para anotar la supresión de compatibilidad (I8e87a, b/287516207).
- Actualizamos
InlineSliderColors
en Wear Compose Material 3 para que tenga un constructor público y propiedades públicas. (I6b632) - Actualizamos todas las clases de color en Wear Compose Material 3 para que tengan constructores y propiedades públicos. (I17702)
- Hicimos públicas las constantes de padding horizontal y vertical de Button. (Ieeaf7)
Correcciones de errores
- Ahora, el botón ajustará su altura para adaptarse al contenido que creció debido a las fuentes grandes para la accesibilidad, cuando sea necesario (Iaf302).
- Actualizamos varias demostraciones de botones para solucionar problemas de accesibilidad. (I61ce9)
Stepper
yInlineSlider
ahora admiten clics repetidos al mantener presionado el botón, de modo que puedes aumentar o disminuir rápidamente el valor deStepper
yInlineSlider
manteniendo presionados los botones + o - (I27359).
Versión 1.0.0-alpha07
21 de junio de 2023
Lanzamiento de androidx.wear.compose:compose-material3:1.0.0-alpha07
. La versión 1.0.0-alpha07 contiene estas confirmaciones.
Nuevas funciones
- Agregamos el componente
Stepper
a nuestra biblioteca de Compose para Wear OS Material 3. Es similar a la versión anterior de Material, pero omite la semántica de rango de forma predeterminada, según los comentarios de los desarrolladores. ProporcionamosModifier.rangeSemantics
los casos en los que se requiere la semántica de rango. (Ic39fd) - Agregamos
curvedText
a nuestra biblioteca de Compose para Wear OS Material 3. (Ia8ae3)
Correcciones de errores
- Actualizamos
wear.compose.foundation
para que sea una dependencia de la API dewear.compose.material3
(I72004, b/285404743).
Versión 1.0.0-alpha06
7 de junio de 2023
Lanzamiento de androidx.wear.compose:compose-material3:1.0.0-alpha06
. La versión 1.0.0-alpha06 contiene estas confirmaciones.
Correcciones de errores
- Actualizamos
TextButton
para que use la función de extensióntoDisabledColor
para obtener valores alfa inhabilitados correctos. (I814c8)
Versión 1.0.0-alpha05
24 de mayo de 2023
Lanzamiento de androidx.wear.compose:compose-material3:1.0.0-alpha05
. La versión 1.0.0-alpha05 contiene estas confirmaciones.
Nuevas funciones
- Agregamos
TextButton
a Material 3, un botón circular con una sola ranura para texto. Para los diferentes tamaños deTextButton
, recomendamos usarModifier.touchTargetAwareSize
yExtraSmallButtonSize
,SmallButtonSize
,DefaultButtonSize
yLargeButtonSizeIcon
proporcionados enTextButtonDefaults
. ElTextButton
predeterminado no tiene borde y tiene un fondo transparente para las acciones de baja importancia. Para las acciones que requieren un énfasis alto, usafilledTextButtonColors
; para un énfasis medio, usaTextButton
con un contorno y establece el borde enButtonDefaults.outlinedButtonBorder
; para un punto intermedio entre el contorno y el relleno, usafilledTonalTextButtonColors
. (I667e4) - Agregamos
Card
,OutlinedCard
,AppCard
yTitleCard
a la biblioteca de Wear Compose Material3.AppCard
yTitleCard
también pueden tener la apariencia de contorno conCardDefaults.outlinedCardColors
yCardDefaults.outlinedCardBorder
(I80e72)
Cambios en la API
- Movimos el parámetro de etiqueta del botón al final para admitir la sintaxis de expresión lambda final y quitamos el parámetro de rol (ya que se puede anular con
Modifier.semantics
). Los constructores deButtonColors
ahora son públicos. (Ie1b6d)
Versión 1.0.0-alpha04
10 de mayo de 2023
Lanzamiento de androidx.wear.compose:compose-material3:1.0.0-alpha04
. La versión 1.0.0-alpha04 contiene estas confirmaciones.
Nuevas funciones
- Agregamos
IconButton
a Material 3, un botón circular con una sola ranura para ícono o imagen. Hay cuatro variaciones:IconButton
,FilledIconButton
,FilledTonalIconButton
yOutlinedIconButton
. Para los diferentes tamaños deIconButton
, recomendamos usarModifier.touchTargetAwareSize
yExtraSmallButtonSize
,SmallButtonSize
,DefaultButtonSize
yLargeButtonSizeIcon
proporcionados enIconButtonDefaults
. También proporcionamosIconButtonDefaults.iconSizeFor
para determinar el tamaño de ícono recomendado para un tamaño de botón determinado. (I721d4)
Versión 1.0.0-alpha03
19 de abril de 2023
Lanzamiento de androidx.wear.compose:compose-material3:1.0.0-alpha03
. La versión 1.0.0-alpha03 contiene estas confirmaciones.
Cambios en la API
- Agregamos el componente Button de Material 3, que es nuestro botón con forma de estadio y que antes se llamaba Chip en la biblioteca de Wear Compose Material (se cambió su nombre a Button para que sea coherente con la biblioteca de Compose Material 3). El botón predeterminado tiene un fondo relleno, y hay variaciones de botones para
FilledTonal
(fondo atenuado), Esquematizado (transparente con un borde delgado) y Secundario (fondo transparente y sin borde, que se usa para acciones complementarias con la menor cantidad de prominencia). Los botones redondos para contenido simple de íconos y texto se incluirán en una versión futura.(Ia6942)
Versión 1.0.0-alpha02
5 de abril de 2023
Lanzamiento de androidx.wear.compose:compose-material3:1.0.0-alpha02
. La versión 1.0.0-alpha02 contiene estas confirmaciones.
Correcciones de errores
- Agregamos un
DefaultTextStyle
a Wear Compose Material 3 que establecePlatformTextStyle.includeFontPadding
como verdadero de forma predeterminada (el parámetro de configuración actual). Esto nos permitirá sincronizar la desactivación del padding de fuentes de forma predeterminada con las bibliotecas de Compose en el futuro (consulta Corrige el padding de fuentes en Compose para el fondo). (I7e461)
Versión 1.0.0-alpha01
22 de marzo de 2023
Lanzamiento de androidx.wear.compose:compose-material3:1.0.0-alpha01
. La versión 1.0.0-alpha01 contiene estas confirmaciones.
Nuevas funciones
Material 3 es la siguiente evolución de Material Design y, además, incluye temas actualizados y componentes rediseñados. Material 3 en Wear Compose se diseñó para que sea coherente con la biblioteca de Material 3 Compose en Android. Esta primera versión alfa contiene implementaciones iniciales y funcionales de lo siguiente:
Seguiremos desarrollando Wear Material (
androidx.wear.compose:compose-material
) y Wear Material 3 (androidx.wear.compose:compose-material3
) en paralelo. Las próximas versiones de Material 3 extenderán el conjunto de widgets para incluir otros componentes conocidos de Compose para Wear OS, como botones, selectores y controles deslizantes.Las bibliotecas de Wear Material y Wear Material 3 son mutuamente exclusivas y no deben mezclarse en la misma app, principalmente porque hacen referencia a diferentes temas que generarían incoherencias inesperadas.