Wear Compose Material 3
| Actualización más reciente | Versión estable | Versión potencial | Versión beta | Versión alfa |
|---|---|---|---|---|
| 27 de agosto de 2025 | 1.5.0 | - | - | - |
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" // For Wear Material Design UX guidelines and specifications implementation "androidx.wear.compose:compose-material3:1.5.0" // For integration between Wear Compose and Androidx Navigation libraries implementation "androidx.wear.compose:compose-navigation:1.5.0" // For Wear preview annotations implementation("androidx.wear.compose:compose-ui-tooling:1.5.0") // NOTE: DO NOT INCLUDE dependencies on androidx.wear.compose:compose-material // or androidx.compose.material:material. // androidx.wear.compose:compose-material3 is designed as a replacement, // not an addition, to both of these other libraries. // If there are features from that you feel are missing from // androidx.wear.compose:compose-material3, please raise a bug to let us know. }
Kotlin
dependencies { implementation("androidx.wear.compose:compose-foundation:1.5.0") // For Wear Material Design UX guidelines and specifications implementation("androidx.wear.compose:compose-material3:1.5.0") // For integration between Wear Compose and Androidx Navigation libraries implementation("androidx.wear.compose:compose-navigation:1.5.0") // For Wear preview annotations implementation("androidx.wear.compose:compose-ui-tooling:1.5.0") // NOTE: DO NOT INCLUDE dependencies on androidx.wear.compose:compose-material // or androidx.compose.material:material. // androidx.wear.compose:compose-material3 is designed as a replacement, // not an addition, to both of these other libraries. // If there are features from that you feel are missing from // androidx.wear.compose:compose-material3, please raise a bug to let us know. }
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
27 de agosto de 2025
Lanzamiento de androidx.wear.compose:compose-*:1.5.0. La versión 1.5.0 contiene estas confirmaciones.
Cambios importantes desde la versión 1.4.0
Primera versión de la biblioteca de Wear Compose Material 3, que admite el nuevo sistema de diseño expresivo de Material 3. Esta versión incluye lo siguiente:
- Se actualizaron
MaterialThemey los temas de color dinámico. - Nuevos componentes
AppScaffold, ScreenScaffold,HorizontalPagerScaffoldyVerticalPagerScaffoldpara diseñar la estructura de la pantalla y coordinar las animaciones deScrollIndicator,TimeText,HorizontalPageIndicatoryVerticalPageIndicator - Cambio de forma
IconButton,TextButton,IconToggleButtonyTextToggleButton, con variaciones que se animan cuando se presionan o se marcan. EdgeButton, que tiene una forma especial diseñada para la parte inferior de la pantalla.ButtonGroupimplementa un grupo expresivo de botones en una fila que cambia de forma cuando se toca.AlertDialogyConfirmationDialogcon variaciones para contenido de diálogo adicional.- Componentes
TimePickeryDatePicker - Los indicadores de progreso incluyen
CircularProgressIndicator(con variación segmentada),ArcProgressIndicatoryLinearProgressIndicator.
Además, Wear Compose Foundation 1.5.0 incluye lo siguiente:
TransformingLazyColumn, una lista de desplazamiento vertical diferido que admite animaciones de escalamiento y transformación.- Se agregó compatibilidad con la paginación en Wear Compose Foundation con
HorizontalPageryVerticalPager. - Grupos de enfoque jerárquicos: Se usan para anotar elementos componibles en una aplicación y hacer un seguimiento de la parte activa de la composición y coordinar el enfoque.
Obtén más información sobre (Material 3 Expressive para Wear OS)
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
TimePickeren 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
TimePickerse basa completamente en la configuración regional del usuario y usaDateFormat.getBestDateTimePatternpara 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). DatePickerahora 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
HorizontalPageIndicatoryVerticalPageIndicatoren pantalla completa. Los indicadores de página ya no son de pantalla completa y se posicionarán automáticamente cuando se usen conHorizontalPagerScaffoldoVerticalPagerScaffold. 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
SwipeToRevealahora es coherente paraLayoutDirectionsLTR y RTL. (I6d427) - Se restableció el centrado vertical de
SwipeToRevealpara las acciones. Si eshasPartiallyRevealedState = true, el llamador debe restablecerRevealStateaRevealValue.Coveredcuando se produzca el desplazamiento. (I6473d) SwipeDismissableNavHostahora 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
EdgeButtoncuandoLazyColumnoScalingLazyColumntienenreverseLayout = true. (I46a1a) - Se corrigió un error en
ScreenScaffoldpor el que la función de tocar para explorar no funcionaba en TalkBack si se proporcionaba unScrollIndicator/PageIndicator. (I6dcee) TransformingLazyColumnahora permite la transformación personalizada desdeTransformationSpecleyendo el valor deitemHeightproporcionado porTransformationSpecen 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
CircularProgressIndicatorpara evitar un salto notable al tamaño mínimo del punto durante la animación. Como parte de este cambio, el parámetrotargetProgressendrawCircularProgressIndicatorahora 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
SwipeToRevealen listas diferidas (I1d4f6). - Las formas de los contenedores en
TransformingLazyColumnahora se ajustan para evitar que se recorte el contenido. (I9221a) - Las etiquetas
TimePickeryDatePickerpara 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
CircularProgressIndicatorindeterminado (Iaf0bb). - Se corrigió un error de animación en
TransformingLazyColumncuando se quitan elementos. (I73034) - Se corrigió el control de los elementos de anclaje en
TransformingLazyColumncuando se quitan elementos. (I841a8) PickerGroupahora 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
TransformingLazyColumnen 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) TransformingLazyColumnahora lee la altura del elemento dentro del pintor de fondo, lo que permite queTransformationSpecspersonalizado implemente la transformación. (I022f0)SwipeToRevealahora centra verticalmente las acciones reveladas de forma correcta. (I4419b)- Se corrigió un error en
SwipeToRevealque 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
SwipeToRevealse dibujaban con una compensación vertical durante el desplazamiento. (I29444) AlertDialog,ConfirmationDialog,OpenOnPhoneDialogySwipeToRevealahora redondean los paddings y los tamaños que se calculan como un porcentaje del tamaño de la pantalla. (I76367)- Ahora,
ButtonDefaults.outlinedButtonBorderse actualiza según los cambios de estado habilitado/inhabilitado(If2ddd). - Se corrigió un error en la altura de
EdgeButtonque 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
HorizontalPageIndicatoryVerticalPageIndicatordibujando 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
LevelIndicatorque 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,
OpenOnPhoneDialogsolo anuncia el texto del mensaje en TalkBack y omite la semántica del ícono. Se actualizaron losOpenOnPhoneDialogDefaultspara quitar el parámetroiconContentDescriptiony el parámetrocontentDescriptiondeicon(). Además,ConfirmationDialogDefaultsahora tiene parámetros de modificador en los elementosSuccessIconyFailureIconcomponibles. (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.Saverpara restablecer el estado deSwipeToRevealcuando se vuelve a crear la actividad o el proceso. La funciónrememberRevealStateahora usa este Saver de forma predeterminada. (Ie0ecb) - Los botones de acciones principales y secundarias
SwipeToRevealdeben tenerButtonDefault.Heightcomo 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ó
SwipeToRevealpara restablecer el último componente con el que se interactuó cuando se realiza el gesto de deslizar el dedo hacia la derecha. (Ia8450) SwipeToRevealse cambió para establecerse en el estadoRevealingcuando 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
ButtonGroupse invierte correctamente en un diseño de RTL (Ib378d). AnimatedTextahora admite la dirección de texto de derecha a izquierda (I4533c)TransformingLazyColumnahora cambia el tamaño de los elementos correctamente cuando se quita el elemento inferior (Idacab).TransformingLazyColumnahora 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) OpenOnPhoneDialogen TalkBack debería anunciar el texto curvo, en lugar de la descripción del contenido del ícono. (I4efe8)- Se corrigió un error en
SwipeToRevealque informaba la ancla incorrecta enRevealState.currentValuecuandohasPartiallyRevealedStatese establecía en falso. (I9c7cf) - Los botones de deshacer
SwipeToRevealahora sonButtonDefaults.Heightde forma predeterminada. (I1f6c8) - Se mejoró el rendimiento de
BasicSwipeToDismissBoxeliminando 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
TransformingLazyColumnoptimizando el cálculo deScrollProgressen 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:
MaterialThemepara 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,IconToggleButtonyTextToggleButton, 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
AppScaffoldyScreenScaffoldpara diseñar la estructura de la pantalla y coordinar las animaciones deScrollIndicatoryTimeText. - 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.
CheckboxButtonySwitchButtonse proporcionan cuando se necesitan botones de activación, mientras queRadioButtones 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
AlertDialogadmiten botones de aceptar/cancelar o unEdgeButton. ConfirmationDialogestá 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
TimePickeryDatePicker, así como los componentes Picker yPickerGrouppara compilar tus propias pantallas de selector. ProgressIndicators: Se admiten indicadores de progreso circulares y lineales (elCircularProgressIndicatortiene 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.TitleCardtambién puede tener una imagen de fondo para reforzar el significado de la información en una tarjeta. - Pagers: Los componentes
HorizontalPagerScaffold,VerticalPagerScaffoldyAnimatedPagecoordinan las animacionesHorizontalPageIndicatoryVerticalPagerIndicator. Se lanzanHorizontalPageryVerticalPageren 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
HorizontalPageryVerticalPager, 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.hierarchicalFocusaModifier.hierarchicalFocusGroupy se quitó el parámetro de devolución de llamada; se quitó la sobrecarga deModifier.hierarchicalFocusRequestercon un parámetro deFocusRequester; se creó un nuevoCompositionLocal,LocalScreenIsActivepara que los componentes puedan informar y verificar qué pantalla está activa. (I5ff7c). - Se dio de baja
SwipeToRevealde Wear Compose Foundation en favor de las APIs deSwipeToRevealen Wear Compose Material y Wear Compose Material3. Reemplaza las importaciones deSwipeToRevealde Wear Foundation por las importaciones de Wear Compose Material o Wear Compose Material3 para seguir usando las APIs. (Ia147d). - Las dependencias de
SwipeToRevealde Wear Compose Material3 en Foundation se movieron al paquete material3, p.ej.,RevealValue,RevealDirection,RevealActionType,RevealStateyrememberRevealState. Los desarrolladores deben cambiar las importaciones de estas clases y funciones deandroidx.wear.compose.foundationaandroidx.wear.compose.material3. (I640e6). - Se actualizó la API de
SwipeToRevealde Wear Compose Material3 de la siguiente manera: Se agregaron los parámetrosprimaryAction,onFullSwipe,secondaryAction,undoPrimaryAction,undoSecondaryActionyhasPartiallyRevealedStateal elementoSwipeToRevealcomponible; se quitó la capacidad de personalizarpositionalThresholdyanimationSpecdeRevealState; se quitaronlastActionType,revealThresholdy el ancho deRevealState; se cambió el constructor deRevealStatepara que acepte unRevealDirectionen lugar de anclajes; se quitaron las funcionescreateRevealAnchors, los anclajes ybidirectionalAnchors; se cambiaron los nombres de las funcionesSwipeToRevealScopeprimaryAction,secondaryAction,undoPrimaryActionyundoSecondaryActionaPrimaryActionButton,SecondaryActionButton,UndoActionButtony se convirtieron en funciones componibles; se marcóRevealActionTypecomo interno. (I885d0). - Se actualizó aún más la API de
SwipeToRevealde la siguiente manera: Se cambió el nombre deonFullSwipeaonSwipePrimaryAction, se cambió el nombre deSwipeToRevealNonAnchoredSamplepara 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óSmallActionButtonHeightdeSwipeToRevealDefaultsy se hizo privado el parámetro de valor en los constructoresRevealValueyRevealDirection. (I465ce).
Correcciones de errores
- Se corrigió el control de
EdgeButtondeScreenScaffoldpara que, después de quitar un elementoTransformingLazyColumn, elEdgeButtonse 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
CircularProgressIndicatorindeterminado 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
containerPainterydisabledContainerPainteranulancontainerColorydisabledContainerColor(I4a453). - Se revirtió un cambio en
TimeTextde la versión anterior que trasladóBroadcastReceivera 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
rememberUpdatedStateen el selector para recordar la función lambdacontentDescriptionmás reciente. (Icb5b1). - Se actualizaron los estilos de texto en
TimePickeryDatePickerpara que los cambios de fuente ya no provoquen truncamientos. (I26194). ListHeaderyListSubHeaderahora 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
SwipeToRevealcomponible en sí). (Ie92a3). - Se actualizó el conjunto
MaxLinespredeterminado en el contenidoEdgeButtonsegún su tamaño: ahora es 1 para extra pequeño, 2 para pequeño y mediano, y 3 para grande. (Ie35f6). - Se simplificó
LocalReduceMotionpara que el observador solo se registre una vez y, así, mejorar el rendimiento. (Ib1979). - Se minimizó la cantidad de redibujos en
ScrollIndicatorpara 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ó
scrollTransformde la superficie de la API pública. Usa la combinación de los modificadorestransformedHeightygraphicsLayersi necesitas obtener la misma funcionalidad. (Ie181d) - Se reemplazaron los elementos
ImageButtonyImageCardcomponibles por las sobrecargasButtonyCard/TitleCard, respectivamente. Se cambió el nombre deimageButtonColorsporbuttonWithContainerPainterColorsy el deimageCardColorsporcardWithContainerPainterColors. Se agregaronButtonDefaults.scrimBrushyCardDefaults.scrimBrushpúblicos. Se cambió el nombre de los botonesimageBackgroundGradientStartColoryimageBackgroundGradientEndColorascrimGradientStartColoryscrimGradientEndColor. Se cambió el nombre deCardDefaults.ImageContentPaddingaCardDefaults.CardWithContainerPainterContentPadding(I7b8b6). PickeryPickerGroupahora tomancontentDescriptioncomo una expresión lambda para evitar recomposiciones innecesarias. (I002dd)
Correcciones de errores
- Se solucionó un problema por el que el
CircularProgressIndicatorindeterminado 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
OpenOnPhoneDialogpara 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.imageBackgroundButtonColorsporImageButton,ButtonDefaults.imageButtonColors,ButtonDefaults.containerPainteryButtonDefaults.disabledContainerPainter. Y cambios similares para Card. Se quitan los pintores deButtonColorsyCardColors. (I8c6a1) - Se actualizaron los marcadores de posición para simplificar la API. Ahora proporcionamos dos modificadores,
Modifier.placeholderShimmerpara aplicar un efecto de brillo a nivel del componente yModifier.placeholderpara 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
FadingExpandingLabelcuando el texto abarca varias líneas. (I04eb7) - Se actualizó el padding entre las etiquetas principal y secundaria en los botones. (I99b7b)
ArcLargese redujo de20spa18sp, y se actualizaron los espaciados entre letras enArcLargeyArcSmall.ConfirmationDialog/OpenOnPhoneDialogahora usan el valor predeterminadoArcLargeen 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
AlertDialogahora 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.FadeOutAnimationcambió porPagerScaffoldDefaults.FadeOutAnimationSpec. Se cambió el nombre del parámetro page enAnimatedPageapageIndex. (I701f2) - Se actualizó la nomenclatura de la división
SurfaceTransformation-applyTransformationdeTransformingLazyColumnenapplyContainerTransformationyapplyContentTransformation, y se cambió el nombre decreateBackgroundPainteracreateContainerPainter. Se realizaron más actualizaciones de nombres enTransformationSpecyResponsiveTransformationSpec. (I1c534) - Se cambió el nombre de
AppScaffold backgroundColorporcontainerColor. (I4e63f)
Correcciones de errores
- Se corrigió un problema en
FadingExpandingLabelpor el que el texto no siempre se expandía correctamente. (I0e773) ArcLargese redujo de 20 sp a 18 sp, y se actualizaron los espacios entre letras enArcLargeyArcSmall.ConfirmationDialog/OpenOnPhoneDialogahora usa el valor predeterminadoArcLargeen lugar de anularlo a 18 sp. (Id39a8)- Se actualizó la animación del encabezado para
DatePickeryTimePicker, 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ó
PagerScaffoldevitando la lectura decurrentPageOffsetFractionen el elementoAnimatedPagecomponible. (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.
TimePickeryDatePickersiguen aplicandoFontFeatureSetting=tnumpara los números tabulares. (I88929) - Se corrigió el enfoque inicial de entrada del RSB para
TimePickeryDatePicker. (I1c773) - Se actualizó el texto predeterminado en
OpenOnPhoneDialoga "Revisa tu teléfono". (I00a3f) - Se actualizaron los pesos de
ArcLargeyArcMediumde 600 a 599 para solucionar un problema en el que el peso 600 se trata como negrita (I2a51d). - Se actualizaron los paddings de
SwipeToRevealentre 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
PagerScaffoldya no emite un componentePager, sino que este debe proporcionarse a través del elementocontentcomponible. Las APIs deAnimatedPageysnapWithSpringFlingBehaviourahora son públicas y se pueden usar junto conPagerde Wear Foundation para lograr el comportamiento anterior dePagerScaffoldde M3. (Consulta las muestras actualizadas). (Ia4724)- Se actualizó
PagerState. Se quitóPagerStatede Compose Foundation como clase base y se agregaron las propiedadescurrentPage,currentPageOffsetFractionypageCount. Se actualizó la interfazGestureInclusiony se cambió el nombre del método aignoreGestureStart. (I4ae07) - Los parámetros de ángulo de barrido
LevelIndicatorahora están anotados conFloatRange(0, 360)(I7e636). - Agregamos
CurvedModifier.clearAndSetSemanticspara proporcionar un medio por el cual se puede desactivar la semántica curva.CurvedTextsigue estableciendo de forma predeterminada la descripción del contenido en el texto, perotimeTextCurvedTextytimeTextSeparatorya 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
HorizontalPageraPagerDefaults.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
SurfaceTransformationa 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 FoundationSwipeToRevealahora 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 elSwipeDirectionse establece en una sola dirección. (I32ef0) - Se agregó el elemento
FadingExpandingLabelcomponible, que permite que el texto aparezca gradualmente con una animación línea por línea. (Ic60fa) TransformingLazyColumnahora usacontentPaddingvacío de forma predeterminada en lugar de colocar el primer y el último elemento en el centro. (I77ab7)- Se quitó
SwipeToRevealderememberRevealStatede 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
ScrollIndicatoryPageIndicatorno 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
CurvedTextStyleque se usa enConfirmationDialogDefaultsyOpenOnPhoneDialogDefaultspara usar la tipografíaArcLargecon el tamaño18spy el espacio entre letras1.8sp. (Ic9ced) Card,ListHeader,RadioButton,CheckboxButtonySwitchButtonya 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
TimeTextyScrollIndicatorpara 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
TimeTextyScrollIndicatoren 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
SwipeToRevealde M3 con el modificadoredgeSwipeToDismiss. (I02b07) - Agregamos un encabezado a
DatePickeryTimePickeren TalkBack para que el usuario sepa que debe desplazarse para configurar la fecha y la hora. (Id738d) AnimatedTextahora sigue el parámetro de configuración de reducción de movimiento. (Ib6578)- Se mejoró la optimización para usar
AppScaffoldpara 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
primaryActionysecondaryActiondeSwipeToRevealScope. 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
IconToggleButtonDefaultsyTextToggleButtonDefaults(I5471d). - Se quitó el elemento experimental
LocalMinimumInteractiveComponentEnforcement(I4ad8a). - Reemplazamos el DSL de
PickerGroupScopepor un elemento componible. Por lo tanto, quitamos el métodopickerGroupItemdePickerGroupScopey, 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
LevelIndicatorpara 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
TransformationSpecdeTransformingLazyColumna 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,TextButtonShapesyTextToggleButtonShapespara que sean coherentes con las clases de compose/material3 (I5a081). - Se agregó un parámetro
overscrollEffectaScalingLazyColumn,TransformingLazyColumnyScreenScaffold. (I0cee8) - Cambiamos el nombre del parámetro
swipeDirectionarevealDirectionenrememberRevealState. (I7472f) - Wear Pager ahora tiene su propio
PagerScopeen lugar de usarPagerScopede Compose. (I9195b) - Quitamos el elemento componible
LinearProgressIndicatorContent. UsaLinearProgressIndicatordirectamente para que los cambios en los valores se animen de forma predeterminada. (I2c4ad) - Quitamos el elemento
CircularProgressIndicatorStaticcomponible y agregamos una función públicaDrawScopedrawCircularProgressIndicatorcon la misma funcionalidad. UsaCircularProgressIndicatordirectamente para que los cambios se animen de forma predeterminada, pero crea tu propio elemento componible a partir dedrawCircularProgressIndicatorsi necesitas animaciones personalizadas. (Ie762f) - Se reorganizaron los parámetros en
DrawScope.drawCircularProgressIndicatorpara subir el parámetrotargetProgress. (I8ab92) - Se actualizó la API de
OpenOnPhoneDialogpara mejorar la claridad y la coherencia con otros diálogos. Se cambió el nombre del parámetroshowavisible, y el llamador ahora proporcionacurvedTexten lugar de tener un valor predeterminado. (Idec2d) - Cambiamos el nombre de
openOnPhoneCurvedTextaopenOnPhoneDialogCurvedText(I65bdd). - Agregamos
ScrollIndicatorColorspara 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,ArcMediumyArcSmallpara que seanCurvedTextStyle(Iffc41). - Quitamos
ScreenScaffoldDefaults.contentPaddingWithEdgeButton. (Ia923e) - Agregamos
errorDimaColorSchemepara 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.material3a la versión 1.15.0 deandroidx.core.core(I132e9). - Mejoramos el rendimiento de Dialog usando
AppScaffoldpara 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,TextButtonShapesyTextToggleButtonShapespara 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
pressedShapeCornerSizeFractiondel métodovariantAnimatedShapeenIconToggleButtonyTextToggleButton(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
ButtonGroupScopedeButtonGroupy reemplazamosButtonGroupItembasado en DSL porModifier.weight,Modifier.minWidthyModifier.enlargeOnPress. (I16c3c) - En la API de
ButtonGroup, actualizamos el nuevoButtonGroupScopebasado en modificadores:enlargeOnPressahora se llamaanimateWidthy 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.contentColorpara 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.DecreaseIconySliderDefaults.IncreaseIcon, con valores predeterminados adecuados (I2e1a7). - Cambiamos el nombre del parámetro
spacingenPickeryPickerGroupaverticalSpacing(Ib75cc). - Quitamos
ConfirmationDialogDefaults.successTextyfailureTextporque se espera que quienes llamen aConfirmationDialogproporcionen cadenas con más contexto. También se cambió el nombre deconfirmationCurvedTextporconfirmationDialogCurvedText. Por último, se cambió el nombre del parámetroshowde Dialog a visible para mantener la coherencia con otras actualizaciones recientes de los diálogos. (I10074) IconButtoncambió el nombre dedisabledImageOpacityaDisabledImageOpacity. (I5f94a)
Correcciones de errores
- Corregimos un error en la animación de
EdgeButtonpara que se use el tamaño correcto en cada fotograma (Id3b58). - Se corrigió un problema por el que
animateContentSizeno 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
ScreenScaffoldyEdgeButtonpara que sea más fácil especificar el padding de contenido en las pantallas que incluyen unEdgeButton. En la nueva API, elsizedeEdgeButtonsolo se pasa aEdgeButton, yScreenScaffoldtoma un parámetroedgeButtonSpacingpara el espaciado entreEdgeButtony el contenido de la lista. (I424fd) - En
DatePicker, cambiamos el nombre de los parámetrosminDateamaxDatey deminValidDateamaxValidDate. EnDatePickerColors, cambiamos el nombre del parámetroselectedPickerContentColoraactivePickerContentColory el deunselectedPickerContentColorainactivePickerContentColor(Iba17b). - Actualizamos los valores predeterminados de
ArcProgressIndicatorastrokeWidth=6dpy 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ámetroshowavisiblepara que sea compatible con otras APIs de animación de Compose. Además, pusimos a disposiciónConfirmationDialogContent,SuccessConfirmationDialogContentyFailureConfirmationDialogContentpara situaciones en las que los desarrolladores necesiten personalizar las animaciones de los diálogos de intro y outro. (Iaeb33) - Actualizamos
CircularProgressIndicatorContentaCircularProgressIndicatorStatic(la variación no animada deCircularProgressIndicator) para que ahora se pueda usar para compilarCircularProgressIndicatorcon animaciones personalizadas. (I1346f) - Corregimos el orden de los parámetros en
ArcProgressIndicatory colocamos el parámetro del modificador en primer lugar (I4656a). - Se mejoró la API de
SwipeToRevealpara 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
LongPressse activaba más de una vez enButton,Card,IconButtonyTextButton(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ó
SwipeToRevealpara expandir el contenedor al mismo tiempo que se muestra el texto. (I44cf8) - Se mejoró
SwipeToRevealpara realizar comentarios hápticos cuando el deslizamiento supera el umbral en el que se confirma la acción principal. (I23efe) - Actualizamos
SwipeToRevealpara 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
scrollTransformparaTransformingLazyColumn, lo que activó un cambio en la API. (I0c6dc) - Actualizamos
IconToggleButtonShapesyTextToggleButtonShapespara que tengan dos parámetros de forma diferentes,uncheckedPressedycheckedPressed(I85dbd). - Las opciones de mes y día no válidas ahora son visibles en
DatePicker, con un nuevoinvalidPickerContentColor, cuando se usaminDateomaxDate. (If4541) - Actualizamos la API de
Stepperpara proporcionar ranuras deincreaseIconydecreaseIcon. El contenido de estas se puede compilar como de costumbre desde el elemento componible Icon. (Id35da) - Actualizamos
dynamicColorSchemequitando el parámetro opcionaldefaultColorSchemey ahora devolvemosColorSchemeanulable. 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
ButtonDefaultspara que se usen conCompactButton. UnCompactButtonque solo contiene un ícono debe usarButtonDefaults.SmallIconSize = 24.dp, mientras que unCompactButtonque contiene tanto un ícono como texto debe usarButtonDefaults.ExtraSmallIconSize = 20.dp. Se recomienda queCompactButtonajuste su contenido (en lugar de ocupar el ancho máximo), y se actualizaron los ejemplos para mostrarlo. (I0582c) - Agregamos
EdgeButtonDefaultscon tamaños de íconos recomendados para los 4 diferentesEdgeButtonSizes. También se actualizó el diseño deEdgeButtonpara 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
LinearProgressIndicatory expusimosLinearProgressIndicatorContent, que proporciona el contenido visual sin animaciones. (Idee99) - Agregamos un nuevo elemento
CircularProgressIndicatorContentcomponible para mostrar el contenido visual deCircularProgressIndicatorsin animaciones. (Ie33d4) TransformingLazyColumnahora proporciona el local de composiciónLocalTransformingLazyColumnItemScopequeCards,Buttons yListHeaders 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.shapeaRoundedCornerShape(Iccdf2).
Correcciones de errores
- Corregimos un error para respetar el alfa existente en el fondo de
TimeText(I1eb60). - Establecimos
TextMotionenAnimatedde 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
ScrollIndicatoraumentando el ancho y el tamaño del espacio para mejorar la visibilidad. (Ied7cb) - Corregimos un error en
Modifier.scrollTransformque 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
LevelIndicatoral 20% (es decir, 72 grados). (Idde5c) - Se corrigió el posicionamiento de
ScrollIndicatorcuando se usabaScalingLazyColumnconAutoCenteringParams. (I387dd) - Actualizamos los colores y la tipografía de
ListHeaderyListSubHeader. También los colores de los controles de activación enCheckboxButtonySwitchButton. (I39817) - Se corrigió el posicionamiento de
ScrollIndicatorenLazyColumnyScalingLazyColumnconContentPadding. (I2bc51) - Corregimos un error que se veía en la animación de progreso de
OpenOnPhoneDialogcon el nuevoCircularProgressIndicatorContent. (I3e443) - Actualizamos
HorizontalPagerScaffoldyVerticalPagerScaffoldpara 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
EdgeButtonse 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
TimeTextpara proporcionar contenido predeterminado que muestre la hora. (Id23b3) - Simplificamos el
ScrollInfoProviderparaPagerStatequitando el parámetroorientation, que ya no es necesario. El nuevo comportamiento es queTimeTextpermanezca en su lugar para la paginación horizontal y vertical. (I71767) LocalHapticFeedbackahora proporciona una implementación predeterminada deHapticFeedbackcuando 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,TextButtonyCard, ahora realizan la respuesta hápticaLONG_PRESScuando 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
LevelIndicatorpara que ahora se muestre correctamente cuando el nivel es cero. (Ie95a4) - Actualizamos las animaciones de
HorizontalPageIndicatoryVerticalPageIndicator. (I5c8f3) - Agregamos una animación de reducción a punto al
ArcProgressIndicatorindeterminado. (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
AlertDialogContentyDialogcomponibles que conforman la API deAlertDialog, de modo que se pueda agregar personalización si es necesario (por ejemplo, personalizar la animación deAlertDialogy mantener el diseño de contenido recomendado). Además, agregamos los parámetrosModifieryColora los miembrosEdgeButton,ConfirmButtonyDismissButtondeAlertDialogDefaults. (I4eb71) - Actualizamos la API de
Placeholderde la siguiente manera: cambiamos el nombre dePlaceholderState.startPlaceholderAnimationaPlaceholderState.animatePlaceholder, dePlaceholderState.isShowContentaPlaceholderState.isHiddeny dePlaceholderDefaults.shapeaPlaceholderDefaults.Shape; cambiamos el nombre del parámetropainterenpainterWithPlaceholderOverlayBackgroundBrushaoriginalPainter; cambiamos la visibilidad dePlaceholderState.placeholderProgressionde 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
EdgeButtonde la siguiente manera: cambiamos el nombre del parámetro enScreenScaffolddebottomButtonaedgeButtony convertimosEdgeButtonSizeen 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
IconToggleButtonyTextToggleButtoncuando se hace clic (Ieb333). - Se agregó una duración mínima a la animación de formas
IconButtonyTextButton(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
ScreenScaffoldyScrollIndicatordespués de cambiar el nombre deLazyColumnde Wear Compose Foundation aTransformingLazyColumn. (I0608b) - Se cambió el nombre del parámetro
preferredHeightdeEdgeButtonabuttonSize, y su valor solo se puede elegir entre 4 constantes en la clase de valorEdgeButtonSizerecientemente introducida. (Icdd70) - Cambiamos el nombre de
ListSubheaderaListSubHeadery agregamos valores predeterminados accesibles de forma pública paraListHeaderyListSubHeader. (I96730) - Agregamos nuevos componentes
HorizontalPagerScaffoldyVerticalPagerScaffoldpara 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
HorizontalPagerScaffoldyVerticalPagerScaffold, lo que permite a los usuarios navegar por los paginadores con dispositivos de entrada rotativa. (I9770d) - Realizamos cambios en la API de
MotionSchemepara 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 destandardMotionSchemeyexpressiveMotionSchemea 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
AlertDialogentre 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óVerticalPageIndicatorpara usar conVerticalPager(Ic9309). AlertDialogahora 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
SwipeToRevealpara Wear Material 3 (Ic38b2). - Agregamos compatibilidad con el deslizamiento bidireccional en
SwipeToRevealpara 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
buttonHeightdeEdgeButtonapreferredHeight. (I4fab3) - Se actualizó la versión de Kotlin a 1.9 (I1a14c).
- Cambiamos el nombre de
OpenOnPhoneDialogDefaults.IconaOpenOnPhoneDialogDefaults.OpenOnPhoneIconpara evitar conflictos conIcon(I0f391). - Agregamos compatibilidad con
ScrollIndicatorenLazyColumn. (Ia546a) - Actualizamos los valores predeterminados para
TextToggleButtonyIconToggleButton. (I7aaa9) - Simplificamos las APIs de
PickeryPickerGroup. (Id0653) - Agregamos
CardDefaults.ShapeyCardDefaults.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,TimePickeryDatePicker. (I46c7c) - Actualizamos los paddings en
ConfirmationyOpenOnPhoneDialog. (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
CircularProgressIndicatorySegmentedCircularProgressIndicator. Cuando el progreso supere el 1.0, se indicará con el nuevo coloroverflowTrack. (Iaaa3d) - Los elementos
IconToggleButtonyTextToggleButtonredondos 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
EdgeButtonconColumndebido a la necesidad de especificar la altura deEdgeButtonde forma explícita enScreenScaffold. (Ie353d) - Agregamos compatibilidad con
LazyColumnde Wear Compose con nuestroScreenScaffold(y agregamos una implementación deScrollInfoProviderparaLazyColumnState). (Ib8d29) - Combinamos
LocalTextMaxLines,LocalTextAlignyLocalTextOverflowen un soloLocalTextConfigurationlocal 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
IconButtonyTextButton. (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.aligndeRowScope. (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
AppScaffoldyScreenScaffolda la biblioteca de Material3, que incluyen la funcionalidad para coordinar las capas y las transiciones deTimeTextyScrollIndicator.AppScaffoldproporciona un nivel superior de componentes de andamiaje que se encuentran en la parte superior de todas las pantallas. Por lo tanto, agregarTimeTextalAppScaffoldpermite que permanezca en su lugar mientras se desliza entre pantallas. Las pantallas pueden anular u ocultar el texto de la hora.ScreenScaffoldproporciona una ranura paraScrollIndicatory 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
ScrollIndicatorcon 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
ScrollAwaypara queScreenStagesea 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
ScreenScaffoldpara un botón inferior (comoEdgeButton), que se mostrará y cambiará de tamaño según el contenido de desplazamiento (I032eb). - Agregamos
Modifier.scrollTransformyModifier.targetMorphingHeightpara agregar efectos de movimiento de Material 3 a los elementos deLazyColumn. (Ie229a) - Agregamos
SegmentedCircularProgressIndicatorcomo 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
LinearProgressIndicatorcomo alternativa alCircularProgressIndicatorexistente. (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.OpenOnPhoneDialogse 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
TimeTextpara mitigar los problemas en los que el contenido subyacente y elTimeTextse 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 componenteStepperexistente para crear una pantalla de volumen.LevelIndicatores 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
textdeTimeText. 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
RadioButtonySplitRadioButton. Estos componentes simplifican la API anterior combinando el control de radio secundario (If7ae8) y el (Split)SelectableButton. - Agregamos
CheckboxButtonySplitCheckboxButton. Estos componentes simplifican la API anterior combinando el control (dividido)ToggleButtony el control de casilla de verificación secundario (Ia8f70). - Agregamos
SwitchButtonySplitSwitchButton. Estos componentes simplifican la API anterior combinando el(Split)ToggleButtony el control secundario de interruptor (I0d349). - Actualizamos la documentación de
AnimatedTextpara explicar el comportamiento de sobrepaso. (Iff30a) - Agregamos
ButtonGrouppara 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
IconButtonyTextButtoncuando se presionan. (Iffca5) - Agregamos una variación de color adicional,
FilledVariant, aButton,IconButton,TextButton,CompactButtonyEdgeButton(I65fc3). - Agregamos el parámetro
forcedSizeaImageWithScrimPainter, 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.instrinsicSizeen su lugar. (Ic57af) - Agregamos la acción de mantener presionado a los botones (Ib613d).
- También se agregó compatibilidad con clics largos a
IconButtonyTextButton. (I38891) - Se agregó compatibilidad con el clic prolongado en las tarjetas. (I305d5)
- Agregamos
LocalTextMaxLines,LocalTextAlignyLocalTextOverflowcomoCompositionLocalsy los usamos como valores predeterminados de parámetros enText. Los elementos locales de composición ahora pueden ser utilizados por componentes comoCheckboxButton,SwitchButtonyRadioButtonpara implementar orientación sobre la UX, pero los desarrolladores pueden anular los parámetros si es necesario. (Iab841) - Agregamos
Placeholderpara ayudar a enmascarar el contenido de componentes como botones y tarjetas hasta que se carguen los datos. (I1a532) - Agregamos
IconToggleButtonColorsyTextToggleButtonColorspara reemplazarToggleButtonColors, que ya se quitó. (Ie0bf1)
Correcciones de errores
- Actualizamos
Button,FilledTonalButton,OutlinedButton,ChildButtonyCompactButtonpara usar los nuevosCompositionLocalsLocalTextMaxLines,LocalTextAlignyLocalTextOverflowpara 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
LevelIndicatora6dppara diferenciarlo delScrollIndicator, que tiene un ancho de trazo de4dp. (If6f63) - Corregimos un problema en
TimeTextpara 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
ToggleButtonyRadioButtonpara que se puedan configurar los colores inhabilitados. (If13a7) - Agregamos un nuevo
CircularProgressIndicatorpara 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
ColorSchemede 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,ToggleButtonyRadioButton, 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ó
TimeTexta 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
onSelectedaonSelectparaRadioButton. (I1a971) - Se tokenizan
RadioButtonySplitRadioButton, y también se refactorizan los métodos existentes para reducir la cantidad de búsquedas deCompositionLocalagregando instancias almacenadas en caché de colores y haciendo que los métodos deRadioButtonColorsySplitRadioButtonColorssean 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,ToggleButtonColorsySplitToggleButtonColorscreando 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
buttonColorsde forma predeterminada y quitamos elfilledButtonColorsduplicado. (I4fe3b) - Refactorizamos los patrones predeterminados para
ButtonColors,IconButtonColorsyTextButtonColorscreando una instancia almacenada en caché de forma interna y reduciendo el uso deCompositionLocal. (I5f51c) - Quitamos la sobrecarga de
rememberUpdatedStateen 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.minimumInteractiveComponentSizepara 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/SplitRadioButtoncomo contenedores para los controles de selección, como el control de radio. Esto difiere delToggleButtonexistente en queRadioButtonse puede seleccionar (y funciona dentro de un grupo de selección), mientras queToggleButtonse puede activar o desactivar (y es independiente). (I61275) - Quitaremos
LocalContentAlphade 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
MutableInteractionSourceen su API se actualizaron para exponer unMutableInteractionSourceanulable 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 unMutableInteractionSourcey 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 elMutableInteractionSourceque 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-materialywear:compose-material3que reemplaza la API derememberRippleobsoleta. También se agrega unCompositionLocaltemporal,LocalUseFallbackRippleImplementation, para revertir los componentes de Material al uso de las APIs derememberRipple/RippleThemeque 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 unRippleThemepersonalizado. 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
HorizontalPageIndicatory su documentación. (I60efc) - Actualizamos
ColorSchemepara 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
ToggleButtonySplitToggleButtonpara 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,SwitchyRadioButtonpara 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,SwitchyRadioButtonpara que no se repitan los anuncios de accesibilidad (antes, se duplicaban los roles semánticos). (Ica281) - Quitamos la capa materialcore para
CompactButtony 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
SwipeToDismissBoxaBasicSwipeToDismissBox. Esto hace que la distinción entre el componente de nivel Foundation y elSwipeToDismissBoxde nivel Material3 sea más clara. Este último extrae colores deMaterialThemepara 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
indicatorStyledeHorizontalPageIndicatorde Material3. En su lugar, seguirá la forma de la pantalla del dispositivo (lineal o redonda). (I83728) - Separamos los colores de
SplitToggleButtonde los deToggleButtonagregando 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
IconButtonpara usar tokens de Material Design. (I3f137) - Actualizamos
IconToggleButtonpara usar tokens de Material Design. (I7d263) - Hicimos públicos los constructores de
CheckboxColors,RadioButtonColorsySwitchColors. (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
ListHeaderyListSubheaderde 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ó
HorizontalPageIndicatoren 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
ExtraSmallde las formas redondasTextButtonyTextToggleButton, 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ó
ToggleButtonpara Material 3 (I6bed6).
Cambios en la API
- Activamos la anotación
FloatRangecomo 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,IconButtonyTextButtonsegú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,CheckboxyRadioButton. (Ib918c) - Agregamos
IconToggleButtonyTextToggleButtona 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.touchTargetAwareSizecon los tamaños proporcionados en los respectivos botones de activación. (I9f015) - Agregamos
ListHeaderyListSubheadera nuestros componentes de Material 3. (Ibaefe) - Agregamos Material3
SwipeToDismissBox, que llama al nuevo FoundationSwipeToDismissBoxy proporciona valores de color predeterminados desde su tema. (I275fb) - Agregamos
InlineSliderde 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.InlineSlideres 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
RoundedCornerShapeen 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
InlineSliderColorsen 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)
StepperyInlineSliderahora admiten clics repetidos al mantener presionado el botón, de modo que puedes aumentar o disminuir rápidamente el valor deStepperyInlineSlidermanteniendo 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
Steppera 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.rangeSemanticslos casos en los que se requiere la semántica de rango. (Ic39fd) - Agregamos
curvedTexta nuestra biblioteca de Compose para Wear OS Material 3. (Ia8ae3)
Correcciones de errores
- Actualizamos
wear.compose.foundationpara 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
TextButtonpara que use la función de extensióntoDisabledColorpara 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
TextButtona Material 3, un botón circular con una sola ranura para texto. Para los diferentes tamaños deTextButton, recomendamos usarModifier.touchTargetAwareSizeyExtraSmallButtonSize,SmallButtonSize,DefaultButtonSizeyLargeButtonSizeIconproporcionados enTextButtonDefaults. ElTextButtonpredeterminado 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, usaTextButtoncon un contorno y establece el borde enButtonDefaults.outlinedButtonBorder; para un punto intermedio entre el contorno y el relleno, usafilledTonalTextButtonColors. (I667e4) - Agregamos
Card,OutlinedCard,AppCardyTitleCarda la biblioteca de Wear Compose Material3.AppCardyTitleCardtambién pueden tener la apariencia de contorno conCardDefaults.outlinedCardColorsyCardDefaults.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 deButtonColorsahora 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
IconButtona Material 3, un botón circular con una sola ranura para ícono o imagen. Hay cuatro variaciones:IconButton,FilledIconButton,FilledTonalIconButtonyOutlinedIconButton. Para los diferentes tamaños deIconButton, recomendamos usarModifier.touchTargetAwareSizeyExtraSmallButtonSize,SmallButtonSize,DefaultButtonSizeyLargeButtonSizeIconproporcionados enIconButtonDefaults. También proporcionamosIconButtonDefaults.iconSizeForpara 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
DefaultTextStylea Wear Compose Material 3 que establecePlatformTextStyle.includeFontPaddingcomo 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.