Compose Material 3
androidx.compose.material3
(Consulta los documentos de referencia de la API para ver todos los paquetes de Compose).
Actualización más reciente | Versión estable | Versión potencial | Versión beta | Versión alfa |
---|---|---|---|---|
4 de septiembre de 2024 | 1.3.0 | - | - | - |
Estructura
Compose es una combinación de siete IDs de grupo de Maven en androidx
. Cada grupo contiene un subconjunto de funcionalidades objetivo, cada uno con su propio conjunto de notas de la versión.
En esta tabla, se explican los grupos y vínculos correspondientes a cada conjunto de notas de la versión.
Grupo | Descripción |
---|---|
compose.animation | Compila animaciones en las aplicaciones de Jetpack Compose para enriquecer la experiencia del usuario. |
compose.compiler | Transforma las funciones que admite @Composable y habilita las optimizaciones con un complemento de compilador de Kotlin. |
compose.foundation | Escribe aplicaciones de Jetpack Compose con componentes fundamentales listos para usar y extiende la base para compilar tus propias piezas de sistema de diseño. |
compose.material | Compila las IUs de Jetpack Compose con componentes de Material Design listos para usar. Este es el punto de entrada de nivel superior de Compose, diseñado para proporcionar componentes que coincidan con los descritos en www.material.io. |
compose.material3 | Compila las IUs de Jetpack Compose con componentes de Material Design 3, la siguiente evolución de Material Design. Material 3 incluye temas y componentes actualizados, y funciones de personalización de Material You, como el color dinámico. Además, se diseñó para ser coherente con el nuevo estilo visual y la IU del sistema de Android 12. |
compose.runtime | Se trata de los componentes fundamentales del modelo de programación de Compose y de su administración de estados, así como del entorno de ejecución principal al cual se orienta el complemento de compilación de Compose. |
compose.ui | Son los componentes fundamentales de la IU de Compose necesarios para interactuar con el dispositivo, incluidos el diseño, el dibujo y la entrada. |
Cómo declarar dependencias
Para agregar una dependencia en Compose, 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.compose.material3:material3:1.3.0" implementation "androidx.compose.material3:material3-window-size-class:1.3.0" implementation "androidx.compose.material3:material3-adaptive-navigation-suite:1.3.0" } android { buildFeatures { compose true } composeOptions { kotlinCompilerExtensionVersion = "1.1.1" } kotlinOptions { jvmTarget = "1.8" } }
Kotlin
dependencies { implementation("androidx.compose.material3:material3:1.3.0") implementation("androidx.compose.material3:material3-window-size-class:1.3.0") implementation("androidx.compose.material3:material3-adaptive-navigation-suite:1.3.0") } android { buildFeatures { compose = true } composeOptions { kotlinCompilerExtensionVersion = "1.1.1" } kotlinOptions { jvmTarget = "1.8" } }
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.
Compose Material 3 Common versión 1.0
Versión 1.0.0-alpha01
17 de abril de 2024
Lanzamiento de androidx.compose.material3:material3-common:1.0.0-alpha01
, androidx.compose.material3:material3-common-android:1.0.0-alpha01
y androidx.compose.material3:material3-common-desktop:1.0.0-alpha01
. La versión 1.0.0-alpha01 contiene estas confirmaciones.
Nuevas funciones
Componentes sin tema que se pueden usar para compilar componentes de Material Design:
- Paleta tonal
- Ícono
- Tamaño del objetivo táctil
Compose Material 3 Adaptive Navigation Suite versión 1.0
Versión 1.0.0-alpha07
1 de mayo de 2024
Lanzamiento de androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha07
, androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha07
y androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha07
. La versión 1.0.0-alpha07 contiene estas confirmaciones.
Cambios en la API
- Se hicieron no experimentales las APIs de Navigation Suite. (If62af)
Correcciones de errores
- Consume inserciones para el contenido de forma predeterminada (50266df).
Versión 1.0.0-alpha06
17 de abril de 2024
Lanzamiento de androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha06
, androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha06
y androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha06
. La versión 1.0.0-alpha06 contiene estas confirmaciones.
Cambios en la API
- Agrega
containerColor
ycontentColor
aNavigationSuiteScaffoldDefaults
. (I64e3a, b/331993720). - Se está agregando la función
itemColors
aNavigationSuiteDefaults
. (Idf719, b/328480012). - Se sella
NavigationSuiteScope
. (Iefa57).
Versión 1.0.0-alpha05
6 de marzo de 2024
Lanzamiento de androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha05
, androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha05
y androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha05
. La versión 1.0.0-alpha05 contiene estas confirmaciones.
Cambios en la API
- El constructor
NavigationSuiteItemColors
es público. (Ica83a, b/324886877).
Versión 1.0.0-alpha04
21 de febrero de 2024
Lanzamiento de androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha04
, androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha04
y androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha04
. La versión 1.0.0-alpha04 contiene estas confirmaciones.
Actualizaciones de dependencias
- Se actualizaron las dependencias adaptables de Material 3 a las nuevas rutas de los módulos. (Ibc421).
- Migra para usar la versión de Window Manager de las clases de tamaño de ventana. (I3794d).
Versión 1.0.0-alpha03
7 de febrero de 2024
Lanzamiento de androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha03
, androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha03
y androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha03
. La versión 1.0.0-alpha03 contiene estas confirmaciones.
Cambios en la API
- Se actualizó el nombre del paquete a navigationsuite desde navigation-suite. (I7eff7)
- Se actualizaron los componentes de Material3 que exponen un
MutableInteractionSource
en su API para exponer unMutableInteractionSource
anulable que tiene un valor predeterminado nulo. No hay cambios semánticos aquí: pasar un valor nulo significa que no deseas elevar elMutableInteractionSource
y, si es necesario, se creará dentro del componente. Cambiar a nulo permite que algunos componentes nunca asignen unMutableInteractionSource
, y permite que otros componentes solo creen de forma diferida una instancia cuando lo necesiten, lo que mejora el rendimiento de estos componentes. Si no usas elMutableInteractionSource
que pasas a estos componentes, te recomendamos que pases un valor nulo. También se recomienda que realices cambios similares en tus propios componentes. (I41abb, b/298048146).
Versión 1.0.0-alpha02
13 de diciembre de 2023
Lanzamiento de androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha02
, androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha02
y androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha02
. La versión 1.0.0-alpha02 contiene estas confirmaciones.
Nuevas funciones
- Agrega "Ninguno"
NavigationSuiteType
(If8cb1, b/313688598).
Correcciones de errores
- Se corrigió el componente de navegación que ocupa toda la pantalla cuando la superficie raíz tiene
modifier.fillMaxSize
. (c9cf250, b/312664933).
Versión 1.0.0-alpha01
15 de noviembre de 2023
Lanzamiento de androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha01
. La versión 1.0.0-alpha01 contiene estas confirmaciones.
Nuevas funciones
Compose Material 3 adaptable versión 1.0
Versión 1.0.0-alpha06
7 de febrero de 2024
Lanzamiento de androidx.compose.material3:material3-adaptive:1.0.0-alpha06
, androidx.compose.material3:material3-adaptive-android:1.0.0-alpha06
y androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha06
. La versión 1.0.0-alpha06 contiene estas confirmaciones.
Nuevas funciones
- Se agregaron opciones de comportamiento adicionales para la navegación hacia atrás de
ThreePaneScaffoldNavigator
. (I858aa). - Se agregó contenido de destino opcional al historial de navegación. (Ibd7e6).
Versión 1.0.0-alpha05
24 de enero de 2024
Lanzamiento de androidx.compose.material3:material3-adaptive:1.0.0-alpha05
, androidx.compose.material3:material3-adaptive-android:1.0.0-alpha05
y androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha05
. La versión 1.0.0-alpha05 contiene estas confirmaciones.
Nuevas funciones
- Se agregó compatibilidad con el reconocimiento del historial en la navegación de andamiaje y el cálculo de valor. (I71d46)
Versión 1.0.0-alpha04
10 de enero de 2024
Lanzamiento de androidx.compose.material3:material3-adaptive:1.0.0-alpha04
, androidx.compose.material3:material3-adaptive-android:1.0.0-alpha04
y androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha04
. La versión 1.0.0-alpha04 contiene estas confirmaciones.
Nuevas funciones
- Se agregó compatibilidad de borde a borde en los andamiajes de panel. (I1b462)
Cambios en la API
- Se movieron las propiedades de los límites de las bisagras de la postura a una lista de información de bisagra. (I24f90)
Correcciones de errores
- No se recompone
AnimatedPane
(c3f573d).
Versión 1.0.0-alpha03
13 de diciembre de 2023
Lanzamiento de androidx.compose.material3:material3-adaptive:1.0.0-alpha03
, androidx.compose.material3:material3-adaptive-android:1.0.0-alpha03
y androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha03
. La versión 1.0.0-alpha03 contiene estas confirmaciones.
Cambios en la API
- Cambia los roles de andamiaje a alias de
ThreePaneScaffoldRole
. (I65bd1). - Crea una clase base para los roles de Scaffold (I4784d).
- Se quitó el parámetro innecesario del contenido de
AnimatedPane
. (Ibc73b) - Cambia el nombre de
collectWindowSizeAsState
y, en su lugar, muestra valores sin procesar. (I480f4)
Versión 1.0.0-alpha02
29 de noviembre de 2023
Lanzamiento de androidx.compose.material3:material3-adaptive:1.0.0-alpha02
, androidx.compose.material3:material3-adaptive-android:1.0.0-alpha02
y androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha02
. La versión 1.0.0-alpha02 contiene estas confirmaciones.
Cambios en la API
- Divide las APIs de navegación de las APIs de Scaffold adaptable. (Ic4045).
- Quitar clase
GutterSize
(I785b3).
Correcciones de errores
- Se corrigieron los paneles que no se cambiaban cuando no se usa
AnimatedPane
(d88f181).
Versión 1.0.0-alpha01
15 de noviembre de 2023
Lanzamiento de androidx.compose.material3:material3-adaptive:1.0.0-alpha01
. La versión 1.0.0-alpha01 contiene estas confirmaciones.
Nuevas funciones
APIs de condición adaptable de Material 3:
APIs de directiva de andamiaje de panel adaptable de Material 3:
APIs de andamiaje de panel adaptable de Material 3:
- APIs básicas de andamiaje de panel
Compose Material 3 versión 1.3
Versión 1.3.0
4 de septiembre de 2024
Lanzamiento de androidx.compose.material3:material3-*:1.3.0
. La versión 1.3.0 contiene estas confirmaciones.
Cambios importantes desde 1.2.0
Funciones principales de la versión 1.3.0
Nuevos componentes de Material Design 3
- Carrusel
HorizontalMultiBrowseCarousel
yHorizontalUncontainedCarousel
Mejoras en componentes existentes de Material Design 3.
- [
ModalBottomSheet
] ahora es compatible con el gesto atrás predictivo en U+. (Iccf32, b/281967264, b/304850357) - [
SearchBar
] ahora es compatible con el gesto atrás predictivo en U+. (I657f8) - El panel lateral de navegación (
ModalDrawerSheet
yDismissibleDrawerSheet
) ahora es compatible con el gesto atrás predictivo en U+. (Ie5b0b) DropdownMenu
ahora admite colores, formas, elevación y bordes personalizados. (I8e981,b/289554448, b/301887035, b/283654243).- Se actualizó el control deslizante para mejorar la accesibilidad agregando un indicador de intervalo y detención. (I3058e).
- Se actualizó
ProgressIndicator
para mejorar la accesibilidad agregando un indicador de intervalo y detención. (I21451). - Se agregó un signo de intercalación predeterminado para la información sobre la herramienta enriquecida. Se agregó compatibilidad con el signo de intercalación personalizado para dibujar a partir del
LayoutCoordinates
de anclaje. (Ifd42c). Cambios rotundos - Nuevas APIs de "deslizar hacia abajo para actualizar":
- Se simplificó
PullToRefreshState
para usar valores fraccionarios en lugar de unidades Dp. - En lugar de
PullToRefreshState
, el usuario controla el estadoisRefreshing
. - Se separó la conexión de desplazamiento anidada de
PullToRefreshState
. Lo controla el nuevoPullToRefreshBox
oModifier.pullToRefresh
. - Esta actualización es un cambio rotundo en las APIs experimentales anteriores. (I0adeb, b/314496282, b/317177684, b/323787138, b/324573502, b/317177683). Cambios rotundos visuales
- Se simplificó
- Actualiza la superposición de estado de enfoque a 0.1f para garantizar un contraste de color suficiente. (I7ea77).
- Se realizan pequeños ajustes en los valores predeterminados de los colores de la superficie y el fondo en
lightColorScheme
ydarkColorScheme
. (I9db52). - Se actualizaron los colores del control deslizante y
ProgressIndicator
para seguir las nuevas especificaciones de contraste que no es de texto. (I26807). - Los componentes ahora usan variantes de
SurfaceContainer
. Los componentes que calcularon formalmente el color conSurface
yTonalElevation
ahora usan rolesSurfaceContainer
de forma predeterminada, que no se ven afectados por la elevación tonal. (b/304584161). - Los roles del modelo de referencia del contenedor Surface y Surface se ajustaron levemente, lo que proporciona más tono en los temas claros y oscuros. (I677a5).
- Se ascendieron las APIs experimentales a estables.
- Mejoras en el rendimiento
Versión 1.3.0-rc01
21 de agosto de 2024
Lanzamiento de androidx.compose.material3:material3-*:1.3.0-rc01
. La versión 1.3.0-rc01 contiene estas confirmaciones.
Correcciones de errores
ModalBottomSheet
ahora está primero en el orden de recorrido semántico, seguido de la lámina. (I436f9, b/358594665).
Versión 1.3.0-beta05
24 de julio de 2024
Lanzamiento de androidx.compose.material3:material3-*:1.3.0-beta05
. La versión 1.3.0-beta05 contiene estas confirmaciones.
- Se solucionó un problema por el que faltaba contenido de
BottomSheet
o se cortaba en Android N y O (a10a2d). - Se aumentaron los límites semánticos del control deslizante para que
TalkBack
muestre correctamente los indicadores de enfoque alrededor de los pulgares. (0b5a1d).
Versión 1.3.0-beta04
26 de junio de 2024
Lanzamiento de androidx.compose.material3:material3-*:1.3.0-beta04
. La versión 1.3.0-beta04 contiene estas confirmaciones.
Versión 1.3.0-beta03
12 de junio de 2024
Lanzamiento de androidx.compose.material3:material3-*:1.3.0-beta03
. La versión 1.3.0-beta03 contiene estas confirmaciones.
Contribución externa
- Permite que
androidx.compose.material3.DropdownMenu
esté disponible desde el conjunto de orígenes común. (If62c0).
Versión 1.3.0-beta02
29 de mayo de 2024
Lanzamiento de androidx.compose.material3:material3-*:1.3.0-beta02
. La versión 1.3.0-beta02 contiene estas confirmaciones.
Cambios en la API
Modifier.pullToRefreshIndicator
admite la elevación. Actualiza las APIs de Pull to Refresh para que estén habilitadas como un valor booleano en lugar de una lambda. Se agregó compatibilidad con la alineación del contenido enPullToRefreshBox
. (I75679)- Convertir
TooltipScope
en una interfaz sellada y crear una implementación interna para usar enTooltipBox
y Label (I3833e). - Se agregaron dos modificadores nuevos a
CarouselItemScope
,maskClip
ymaskBorder
, para agregar fácilmente una forma y un borde a cualquier elemento del carrusel. (Id67a1) - Ahora,
TimePickerState
es una interfaz y permite configurar la hora. (I88546) - Se actualizó la API para definir el estilo de los vínculos: se movió
TextLinkStyles
aTextStyle
y se quitóTextDefaults
del material. (I5477b).
Correcciones de errores
- Los íconos de estado y barra de navegación de
ModalBottomSheet
ahora responden al estado del tema oscuro. (Ie1fe7, b/338342149). - Se agregó la semántica de hoja de cierre a la lámina
ModalBottomSheet
. (0e61cb,b/328801864).
Contribución externa
- Se hizo que
androidx.compose.material3.AlertDialog
esté disponible desde el conjunto de orígenes común (Ia33f5). - Se hizo que
ModalBottomSheet
esté disponible desde un conjunto de orígenes común (Id7cc7).
Versión 1.3.0-beta01
14 de mayo de 2024
Lanzamiento de androidx.compose.material3:material3-*:1.3.0-beta01
. La versión 1.3.0-beta01 contiene estas confirmaciones.
Cambios en la API
- Se está usando
DpSize
en lugar deCaretProperties
. QuitandoCaretProperties
. Cambia el nombre deCaretScope
aTooltipScope
. (Id9a76). - Se actualizó la API para obtener vínculos con temas de Material en el texto. Específicamente, se quitaron los métodos de
TextDefaults
para construirLinkAnnotations
con temas y analizar HTML con vínculos temáticos. En su lugar, se agregó una claseTextLinkStyles
que permite diseñar los vínculos como un parámetro en el elemento Text componible. (I31b93).
Versión 1.3.0-alpha06
1 de mayo de 2024
Lanzamiento de androidx.compose.material3:material3-*:1.3.0-alpha06
. La versión 1.3.0-alpha06 contiene estas confirmaciones.
Cambios rotundos
Nuevas APIs de "deslizar hacia abajo para actualizar":
- Se simplificó
PullToRefreshState
para usar valores fraccionarios en lugar de unidades Dp. - En lugar de
PullToRefreshState
, el usuario controla el estadoisRefreshing
. - Se separó la conexión de desplazamiento anidada de
PullToRefreshState
. Lo controla el nuevoPullToRefreshBox
oModifier.pullToRefresh
. - Esta actualización es un cambio rotundo en las APIs experimentales anteriores. (I0adeb, b/314496282, b/317177684, b/323787138, b/324573502, b/317177683).
- Se simplificó
Cambios en la API
- Se quitó
RippleConfiguration#isEnabled
y se hizo anulable paraLocalRippleConfiguration
. Para inhabilitar un ripple, en lugar de proporcionar unRippleConfiguration
conisEnabled = false
, proporcionanull
aLocalRippleConfiguration
. (I22725). ModalBottomSheet
dibuja con más precisión la lámina sobre la barra de estado cuando está habilitada la opción de borde a borde. El contenido modal de la hoja inferior ahora puede consumir inserciones de ventana, lo que permite ver contenido sobre la barra de navegación. Se cambió el nombre del parámetrowindowInsets
deModalBottomSheet
porcontentWindowInsets
para especificar dónde se aplicarán las inserciones; estas ya no están vinculadas a la lógica de la ventana Se cambió el tipocontentWindowInsets
por una función que muestraWindowInsets
para permitir que se resuelva en una ventana nueva. (I39630, b/274872542, b/300280229, b/290893168).PrimaryScrollableTabRow
ySecondaryScrollableTabRow
ahora usan un diseño personalizado en lugar de la subcomposición, lo que debería mejorar el rendimiento. (I991e0).- Se aplicó la opción de estilo de estado presionado a los vínculos de texto, además del estilo normal, se colocaron sobre el elemento y se enfocaron. Cada método
TextDefaults
obtuvo un argumentopressedStyle
para admitirlo. (Ic473f, b/139312671).
Correcciones de errores
- Los anclajes de arrastre del panel lateral de navegación ahora coinciden con el ancho de
drawerContent
. (Ibc72f, b/245355396). - El padding superior de
OutlinedTextField
para la etiqueta ahora considera el tamaño de la fuente del sistema. (Idc781). - Se corrigió la ubicación del paquete de
CalendarLocale
. (Ifa235). - [Atrás predictivo] Se actualizaron las animaciones del gesto atrás predictivo para usar la curva de interpolación de (0.1, 0.1, 0, 1) (I2591a).
Versión 1.3.0-alpha05
17 de abril de 2024
Lanzamiento de androidx.compose.material3:material3-*:1.3.0-alpha05
. La versión 1.3.0-alpha05 contiene estas confirmaciones.
Nuevas funciones
SearchBar
yDockedSearchBar
tienen sobrecargas nuevas que toman un parámetro de campo de texto. Esto permite definir el estilo del campo de texto de forma independiente del resto de la barra de búsqueda, así como pasar campos de texto personalizados. El campo de texto de la implementación actual está disponible comoSearchBarDefaults.InputField
. (I50c73, b/275074248, b/278773336, b/326627700).- Se agregó la lambda
drawTick
a la API pública para personalizar las marcas si es necesario. (I0c048)
Cambios en la API
- Los vínculos de texto tienen la opción de estilo de estado presionado, además del estilo normal, se colocan sobre ellos y se enfocan. (I5f864, b/139312671)
- Se actualizó
CarouselItemInfo
para exponer una máscara Rect por la que se recorta el elemento. (I785d8) - Se quitó
BasicTooltipState
de la API pública de Material 3. Su funcionalidad se combina conTooltipState
hasta que se estabiliza laBasicTooltip
de Foundation. (Icda29). - Se agregó un objeto
TextDefaults
que contiene métodos para construir unaLinkAnnotation
y analizar la cadena etiquetada con HTML que aplicaMaterialTheme
a los vínculos (I98532, b/139312671). ExposedDropdownMenuBoxScope
ya no permite subclases. Los menús desplegables expuestos ahora tienen unMenuAnchorType
que se debe pasar amenuAnchor
para admitir una mejor a11y. Se debe usar en lugar de pasarfocusable
aExposedDropdownMenu
, que dejó de estar disponible.menuAnchor
tiene un parámetro nuevo para controlar el estadoenabled
. (I55ee6, b/257209915, b/308840226).- Se corrigió el color del borde de
OutlinedButton
cuando estaba inhabilitado. Se agregó una sobrecarga deButtonDefaults.outlinedButtonBorder("enabled")
que toma el estado habilitado. (Ie650b, b/318461363). - Se agregó una nueva clase
CarouselItemInfo
para ayudar a los clientes a obtener información sobre los tamaños de los elementos. (I9070c). - El constructor
ColorScheme
sin contenedores de superficie dejó de estar disponible. Migra al constructor que incluye los contenedores de superficie. (I35c11). - [Outlined]
TextFieldDefaults
Se cambió el nombre deContainerBox
porContainer
. (Ie8d3b).
Correcciones de errores
BottomSheetScaffold
ya no se desplazará del desplazamiento anidado sisheetSwipeEnabled
se establece como falso. (I5e1c1, b/306464779).- Se quitaron algunas anotaciones de habilitación
ExperimentalMaterial3Api
enIconButtonSamples.kt
. (I111d1).
Versión 1.3.0-alpha04
3 de abril de 2024
Lanzamiento de androidx.compose.material3:material3-*:1.3.0-alpha04
. La versión 1.3.0-alpha04 contiene estas confirmaciones.
Nuevas funciones
- Se agregaron dos versiones experimentales del carrusel de Material3:
HorizontalMultiBrowseCarousel
yHorizontalUncontainedCarousel
(I88d64). - Se actualizó el panel lateral de navegación de M3 de Compose (
ModalDrawerSheet
yDismissibleDrawerSheet
) para admitir el gesto atrás predictivo en U+ como opción. (Ie5b0b) - Se agregó una nueva API en Icon para permitir que se pase el tono de color como lambda para evitar la recomposición. (I5b5a2).
- Las APIs de la barra superior de la app ahora admiten alturas personalizadas para secciones fijas y contraíbles. (Ib8b0c, b/323403446).
Cambios en la API
- Las APIs de la barra superior de la app ahora admiten alturas personalizadas para secciones fijas y contraíbles. Se solucionó un problema que causaba que las barras superiores de la app de una sola línea se recomponieran demasiadas veces cuando se desplazaba por el contenido. Se resolvió un problema por el que
MediumTopAppBar
truncaba los títulos en dispositivos con una configuración grande de fuente y visualización. (Ib8b0c, b/323403446, b/300953236, b/286296147, b/330410290, b/308540676). SegmentedButton
y las APIs asociadas ahora son estables. (I8a158)SwipeToDismissBox
,SwipeToDismissBoxDefaults
,SwipeToDismissBoxState
ySwipeToDismissBoxValue
ahora se marcan estables. (I5f000).- Se quitaron las enumeraciones y APIs obsoletas
DismissDirection
yDismissValue
. (I89ccd). - Se agregó una etiqueta experimental al objeto complementario
CarouselState
de carrusel. (I94154). LocalMinimumInteractiveComponentEnforcement
dejó de estar disponible, y se introdujoLocalMinimumInteractiveComponentSize
para reemplazarlo. (I7a7ac).- El constructor
SearchBarColors
ahora es público. (I769ca). - Se agregó un parámetro
gesturesEnabled
aSwipeToDismissBox
. (Idc59f, b/324170119). - Se quitaron las APIs de campo de texto que se marcaron como obsoletas y experimentales. (I1305f).
Versión 1.3.0-alpha03
20 de marzo de 2024
Lanzamiento de androidx.compose.material3:material3-*:1.3.0-alpha03
. La versión 1.3.0-alpha03 contiene estas confirmaciones.
Cambios rotundos visuales
- Actualiza la superposición de estado de enfoque a 0.1f para garantizar un contraste de color suficiente. (I7ea77).
- Se realizan pequeños ajustes en los valores predeterminados de los colores de la superficie y el fondo en
lightColorScheme
ydarkColorScheme
. (I9db52).
Nuevas funciones
- Se agregaron parámetros para personalizar
ExposedDropdownMenu
. En particular, los menús ahora tienen un parámetrofocusable
(valor predeterminadotrue
) que debe establecerse enfalse
cuando se trabaja con campos de texto editables. (I4184c, b/323694447, b/278609042).
Cambios en la API
- Se quitó la marca
ScaffoldSubcomposeInMeasureFix
. (Ie2a4b). NavigationRailItemColors
ahora está marcado como@Immutable
(If6112, b/327660613).NavigationBarItemColors
ahora está marcado como@Immutable
(I42a30, b/298064514).- Reordena los parámetros en el elemento componible de la pista del control deslizante. (I9f315).
ExposedDropdownMenu
ahora se implementa conPopup
. El comportamiento debe ser el mismo, excepto que los menús enfocables con campos de texto editables pueden descartarse cuando se escribe con el teclado.
Correcciones de errores
- Los roles del modelo de referencia del contenedor Surface y Surface se ajustaron levemente, lo que proporciona más tono en los temas claros y oscuros. (I677a5).
- Se actualizaron los colores del control deslizante y
ProgressIndicator
para seguir las nuevas especificaciones de contraste que no es de texto. (I26807). - Actualiza la superposición de estado de enfoque a 0.1f para garantizar un contraste de color suficiente. (I7ea77).
- Se realizan pequeños ajustes en los valores predeterminados de los colores de la superficie y el fondo en
lightColorScheme
ydarkColorScheme
. (I9db52).
Versión 1.3.0-alpha02
6 de marzo de 2024
Lanzamiento de androidx.compose.material3:material3-*:1.3.0-alpha02
. La versión 1.3.0-alpha02 contiene estas confirmaciones.
Cambios en la API
- Se vuelven a establecer los estados del control deslizante. Se volverá a convertir
State.onValueChangeFinished
en un val. UniendoonValueChangeFinished
en unarememberUpdatedState
(I82ab2, b/322269951). - Los componentes de Navigation ahora usan los nuevos roles de
SurfaceContainer
.DrawerDefaults
ahora proporciona atributosstandardContainerColor
ymodalContainerColor
distintos.DrawerDefaults.ModalDrawerElevation
ahora es0.dp
. (I7fbac). - Se quitó
@Stable
de los estados deSlider
, ya que cambiaremosstate.onValueChangeFinished
avar
. (Ied34a, b/322269951). - La especificación de animación
ModalBottomSheet
yStandardBottomSheet
ahora es unaTweenSpec
, actualizada a partir de una animación de resorte. Esto soluciona un problema con un rebasado visible. Se quitaron los constructoresSheetState
sin densidad obsoletos. (I7babc, b/285847707).
Correcciones de errores
- Los componentes ahora usan variantes de
SurfaceContainer
. Los componentes que calculaban formalmente el color con Surface yTonalElevation
ahora usan rolesSurfaceContainer
de forma predeterminada, que no se ven afectados por la elevación tonal. (b/304584161). - Se corrigió el error que causaba que el color del contenedor inhabilitado y no seleccionado de
ElevatedFilterChip
fuera negro. (I400e6, b/322407043). - Se corrigió el indicador de progreso indeterminado cuando el progreso es 0. (Id6582)
- Se corrigió un problema con
Slider
yRangeSlider
en el diseño de derecha a izquierda. (Iab0e1) - Agregar
SliderRangeTolerance
para el cálculo del rango del control deslizante, ya que el redondeo flotante puede ser inexacto. (Ic918a, b/324934900). - Asegúrate de que
DatePickerDialog
muestre sus botones cuando se anida unDateRangePicker
o cuando se muestre cualquier tipo de selector de fecha en pantallas pequeñas con fuentes más grandes. (Ie4758, b/325107799, b/277768544). Menu
ahora aprovecha la funciónSurfaceContainer
para el color del contenedor.MenuDefaults.TonalElevation
ahora es0.dp
. (I135b7).TextField
ahora aprovecha la funciónSurfaceContainerHighest
para el color del contenedor. (I4dced).- Los chips mejorados ahora aprovechan el rol
SurfaceContainerLow
. (I7cd2f) - El color del contenedor
DatePicker
ahora esSurfaceContainerHigh
.DatePickerDefaults.TonalElevation
ahora es0.dp
. (Ida753). - Actualiza el color del contenedor de Hojas inferiores y el color del controlador de arrastre. (I72a0a).
- El color del contenedor
RichTooltip
ahora esSurfaceContainer
. (Ia8b45). - El color del contenedor
SearchBar
ahora esSurfaceContainerHighest
.SearchBarDefaults.TonalElevation
ahora es0.dp
. (I88604). - Se inhabilitaron las actualizaciones y se inhabilitaron las pistas o los íconos para aprovechar el rol de color
SurfaceContainerHighest
. (I7687a). - El color del contenedor
AlertDialog
ahora esSurfaceContainerHigh
. (Ie0433). - El color del contenedor
BottomAppBar
ahora esSurfaceContainer
. El colorTopAppBar
onScroll
ahora esSurfaceContainer
. (I41630). - El color del contenedor
ElevatedCard
ahora esSurfaceContainerLow
. Color del contenedor deFilledCard
deSurfaceContainerHighest
. (I35141). - El color del contenedor
ElevatedButton
ahora esSurfaceContainerLow
. Cuando se anula la selección deFilledIconButton
, ahora tiene un color de contenedor deSurfaceContainerHighest
. (I792c9). - Se actualizó el rol de color del contenedor de
TimePicker
y de color del reloj de marca aSurfaceContainerHighest
. (I43b93).
Versión 1.3.0-alpha01
21 de febrero de 2024
Lanzamiento de androidx.compose.material3:material3-*:1.3.0-alpha01
. La versión 1.3.0-alpha01 contiene estas confirmaciones.
Nuevas funciones
- Se actualizó
ModalBottomSheet
de Compose M3 para que admita el gesto atrás predictivo en U+ (Iccf32, b/281967264, b/304850357). - Se actualizó
SearchBar
de Compose M3 para admitir el gesto atrás predictivo en U+ (I657f8). - Se actualizó el control deslizante para mejorar la accesibilidad agregando un indicador de intervalo y detención. (I3058e).
- Se actualizó
ProgressIndicator
para mejorar la accesibilidad agregando un indicador de intervalo y detención. (I21451). - Cuando se agrega un signo de intercalación predeterminado para la información sobre la herramienta enriquecida, la nueva API de información enriquecida sobre la herramienta ahora permite que se dibuje un signo de intercalación personalizado con el ancla
LayoutCoordinates
. (Ifd42c).
Cambios en el comportamiento
- Se migraron los componentes de Material para usar las nuevas APIs de ripple y ya no se consultarán
RippleTheme
Cambios en la API
- La diversión
drawStopIndicator
ahora es pública. (I3f59f). - Marca la función
formatWithSkeleton
deDatePicker
como interna (Ic65dc). DropdownMenu
ahora admite colores, formas, elevación y bordes personalizados. (I8e981, b/289554448, b/301887035, b/283654243).- Se actualizaron los componentes de Material3 que exponen un
MutableInteractionSource
en su API para exponer unMutableInteractionSource
anulable cuyo valor predeterminado esnull
. No hay cambios semánticos aquí: pasar un valor nulo significa que no deseas elevar elMutableInteractionSource
y, si es necesario, se creará dentro del componente. Cambiar a nulo permite que algunos componentes nunca asignen unMutableInteractionSource
, y permite que otros componentes solo creen de forma diferida una instancia cuando lo necesiten, lo que mejora el rendimiento de estos componentes. Si no usas elMutableInteractionSource
que pasas a estos componentes, te recomendamos que pases un valor nulo. También se recomienda que realices cambios similares en tus propios componentes. (I41abb, b/298048146). - Agrega
RippleConfiguration
yLocalRippleConfiguration
para permitir la personalización de ondas por componente o subárbol mediante valores fijos. Por ejemplo, para cambiar el color de un componente que no controlas o para inhabilitar una onda de un componente. En la mayoría de los casos, se deben usar los valores predeterminados: estas APIs son una vía de escape para la personalización de componentes individuales o subárboles limitados. Para cambios más amplios y sistemas de diseño personalizados, debes crear tu propia onda concreateRippleModifierNode
. (I7b5d6, b/298048146). - Se agregó una nueva API de ripple en material3, que reemplaza el elemento
rememberRipple
obsoleto. También se agregó unCompositionLocal
temporal,LocalUseFallbackRippleImplementation
, para revertir los componentes de Material3 al uso de las APIsrememberRipple
/RippleTheme
obsoletas. Esta se quitará en la próxima versión estable y solo está diseñada como una ayuda de migración temporal para los casos en los que proporciones unRippleTheme
personalizado. (I34cbc, b/298048146).
Correcciones de errores
- Se quitó la subcomposición dentro de
ModalBottomSheet
para mejorar el rendimiento. Se corrigió un problema por el queModalBottomSheet
podía fallar en situaciones específicas junto conLookaheadScope
. (I2a198). - Se quitó la subcomposición dentro de
BottomSheetScaffold
para mejorar el rendimiento. Se corrigió un problema por el queBottomSheetScaffold
fallaba en situaciones específicas junto conLookaheadScope
. (Ie6401). - La alineación de la insignia se ajusta para que esté más cerca del centro del contenido fijo con respecto a la esquina superior derecha. (I18a28).
- Se solucionó un problema de a11y con
DateRangePicker
en el que el título del texto del mes y año se mostraba como procesable para los usuarios del lector de pantalla, la Accesibilidad con interruptores y el Acceso por voz (I2ac55). - Se corrigió el error de orden de parámetros
mediumTopAppBarColors
. (Ibe64a).
Versión 1.2
Versión 1.2.1
6 de marzo de 2024
Lanzamiento de androidx.compose.material3:material3-*:1.2.1
. La versión 1.2.1 contiene estas confirmaciones.
Correcciones de errores
- Vuelve a hacer que los estados del control deslizante sean estables. Se volverá a convertir
State.onValueChangeFinished
en un val. UniendoonValueChangeFinished
en unarememberUpdatedState
(Ie8fd0, b/322269951). - Se quitó
@Stable
de los estados deSlider
, ya que cambiaremosstate.onValueChangeFinished
avar
. (I82ba1, b/322269951). - Corrige los colores personalizados de
NavigationBar
para copiarlos de los valores predeterminados. (80a779, b/326894020). - Se corrigió la regresión en
ExposedDropdownMenu
para que se pueda volver a enfocar. (3fcec1, b/323694447) - Se corrigió el problema de almacenamiento en caché del color de los botones. (3e5bbcb/327371655)
Versión 1.2.0
7 de febrero de 2024
Lanzamiento de androidx.compose.material3:material3-*:1.2.0
. La versión 1.2.0 contiene estas confirmaciones.
Problema conocido
- En
PrimaryTabRow
, se introdujo un error de renderización de interoperabilidad con View-Compose como parte de un cambio de mejora del rendimiento. La solución alternativa es usarTabRow
conTabRowDefaults.PrimaryIndicator
.
Cambios importantes desde la versión 1.1.0
Nuevos componentes de Material Design 3
- Desliza hacia abajo para actualizar
- Botón segmentado
Mejoras en componentes existentes de Material Design 3.
- Barra inferior de la app (alineación RTL, oculta automáticamente al desplazarse)
- Actualización visual de las pestañas
- Insignia (actualización de alineación)
Se ascendieron las APIs experimentales a estables.
Mejoras en el rendimiento
- Consulta esta entrada de blog para obtener más detalles.
Versión 1.2.0-rc01
24 de enero de 2024
Lanzamiento de androidx.compose.material3:material3-*:1.2.0-rc01
. La versión 1.2.0-rc01 contiene estas confirmaciones.
Correcciones de errores
- Se corrigió el error de orden de parámetros
mediumTopAppBarColors
. (Ibe64a). - Se corrigió un error introducido en
1.2.0-beta02
enCardDefaults.cardColors
que no actualizabacontentColor
según el valor del parámetrocontainerColor
. (Iee041, b/319671246). - Se corrigió un error en
disabledContentColor
que se introdujo en1.2.0-beta02
y se agregó una pequeña optimización. (I6dda1, b/318428829).
Versión 1.2.0-beta02
10 de enero de 2024
Lanzamiento de androidx.compose.material3:material3-*:1.2.0-beta02
. La versión 1.2.0-beta02 contiene estas confirmaciones.
Error conocido
- De forma predeterminada, un error en
IconButtonColors
asignarádisabledContentColor
a un valor alfa (0.38f) deLocalContentColor
, en lugar del valorcontentColor
especificado por el usuario. La solución alternativa es establecerdisabledContentColor
de forma explícita. Se solucionará este problema en la próxima versión.
Cambios en la API
- Se agregó la capacidad de habilitar signos de intercalación de información para las APIs de
Tooltip
sin formato (Ibf767). - Se cambió el nombre de
SwipeToDismissState
,rememberSwipeToDismiss
ySwipeToDismissValue
para que tengan_SwipeToDismissBox_
. (I68d6d).
Correcciones de errores
- Se corrigió el valor de padding final de
ListItem
para alinearlo con las especificaciones. (Ibd68b, b/305342674). - El color del contorno de la tarjeta con contorno ahora se asignó correctamente a
OutlineVariant
. (I75480, b/310979715). - El color dinámico ahora se extrae de los roles de color definidos por el sistema. Esto mejora el contraste del contenido accesible y alinea más estrechamente el color dinámico con las especificaciones de Material. (I1de96).
- Se corrigió el control de retroceso de
ModalBottomSheet
en Android T/13 y versiones posteriores cuando se ejecutaandroid:enableOnBackInvokedCallback="true"
. (I728dc, b/306196110).
Versión 1.2.0-beta01
13 de diciembre de 2023
Lanzamiento de androidx.compose.material3:material3-*:1.2.0-beta01
. La versión 1.2.0-beta01 contiene estas confirmaciones.
Cambios en la API
- Marca
TabIndicatorScope
como experimental. (I45c88). - Se quitaron las APIs experimentales obsoletas para la información sobre la herramienta. (I438cb).
- Cambia las nuevas sobrecargas de
TabRow
para que no usen subcomposiciones. Esto da como resultado una manera diferente de compilar los indicadoresTabRow
con los modificadores personalizados proporcionados. (Ife741). - Las APIs de
DismissDirection
yDismissValue
dejaron de estar disponibles. Estos se combinaron conSwipeToDismissValue
, cuyos valores indican la posición y la dirección deSwipeToDismissBox
.DismissState.progress
ahora está marcado comoFloatRange
entre0.0
y1.0
. Se quitó el objeto Saver y Constructor deDismissState
. El componente, el estado y el objeto predeterminados deSwipeToDismiss
se destacaron como experimentales. (Ib54f2).
Correcciones de errores
- El indicador predeterminado de
PullToRefresh
ahora es una punta de flecha abierta en lugar de un triángulo sólido. (I67be3).
Versión 1.2.0-alpha12
29 de noviembre de 2023
Lanzamiento de androidx.compose.material3:material3-*:1.2.0-alpha12
. La versión 1.2.0-alpha12 contiene estas confirmaciones.
Cambios en la API
RangeSlider
ahora toma un rango Kotlin (p.ej.,0f..1f
) en lugar de una clase de valorFloatRange
personalizada.SnapFlingBehavior.kt
ahora también usa un rango de Kotlin. (I025cb).- Marca las funciones de fábrica del modificador como
@Stable
. (Ib109f).
Versión 1.2.0-alpha11
15 de noviembre de 2023
Lanzamiento de androidx.compose.material3:material3-*:1.2.0-alpha11
. La versión 1.2.0-alpha11 contiene estas confirmaciones.
Nuevas funciones
- Implementa
PullToRefreshContainer
yPullToRefreshState
, que juntos proporcionan una implementación de extracción para actualizar en Material3. (I16456, b/261760718).
Cambios en la API
- Marca
SwipeToDismissBox
DismissDirection
yDismissValue
como experimentales. (I517b0). - Se cambió el nombre de
SwipeToDismiss
porSwipeToDismissBox
. Se cambió el nombre debackground
porbackgroundContent
y el dedismissContent
por la lambdacontent
final. (I7f4d3). - Haz público el constructor de
ChipElevation
ySelectableChipElevation
. (Ie0c48, b/308432421). - Se está agregando
ModalBottomSheetProperties
. Se está moviendosecurePolicy
aModalBottomSheetProperties
. Se están agregandoisFocusable
yshouldDismissOnBackPress
aModalBottomSheetProperties
. Estos nuevos valores booleanos ayudan a determinar cómo la hoja inferior modal debe controlar los eventos del IME. (Iea56f, b/278216859). - Se actualizaron los estados
RangeSlider
ySlider
para quitarinitialOnValueChange
, los prefijos iniciales y los kdocs correspondientes. (I57d30). - La clase
ChipBorder
y sus llamadas a funciones asociadas dieron de baja. Se recomienda usar directamenteBorderStroke
en su lugar. (I89cc2). - Las APIs de información básica ahora son
@ExperimentalFoundationApi
. (I30b0b). TabRow
yScrollableTabRow
dejaron de estar disponibles. Las nuevas variantes primaria y secundaria se marcan como experimentales. (I0def6).- Los chips de filtro y entrada ahora usan
BorderStroke
directamente. (I07a8d). SegmentedButton
ahora usaBorderStroke
directamente. (I89b9b).- Se cambió el nombre de la función genérica
AlertDialog
aBasicAlertDialog
y dio de baja la función anterior. (Idbe52). - Se cambió el nombre de las APIs de
SwipeToDismiss
porSwipeDismiss
y se asciende a la versión estable las nuevas APIs deSwipeDismiss
. (I14cbe). - Se agregaron
tonalElevation
yshadowElevation
a las APIs de información sobre la herramienta. Además, se revirtieron las APIs deTooltipBox
,PlainTooltip
yRichTooltip
a experimentales, ya que se lanzaron accidentalmente como estables (If0f66, b/293939035). - Se ascienden las APIs experimentales de chips a estables. (Iea2c3).
- Se quitó la anotación
@ExperimentalMaterial3Api
de las tarjetas en las que se puede hacer clic de Material3. (I88dbf).
Correcciones de errores
- Se corrigió un problema por el que
SwipeToDismiss
fallaba en ciertas situaciones con diseños anticipados anidados y diferidos. (Ica8d1, b/297226562).
Versión 1.2.0-alpha10
18 de octubre de 2023
Lanzamiento de androidx.compose.material3:material3-*:1.2.0-alpha10
. La versión 1.2.0-alpha10 contiene estas confirmaciones.
Cambios en la API
- Se ascendieron
Badge
yBadgedBox
a estables. (I67f16, b/261565132). - Se agrega
securePolicy
como parámetro aModalBottomSheet
, de modo que los usuarios puedan definir el comportamiento deWindowManager.LayoutParams.FLAG_SECURE
. (Icdac8, b/296250262). - Se agregaron nuevas sobrecargas de
LinearProgressIndicator
yCircularProgressIndicator
que tomanprogress
como una lambda. Estas deberían tener un mejor rendimiento que las versiones anteriores. (I824e6, b/295616656). - Cambia el nombre de
StandardSizeClasses
aAllSizeClasses
. (I8cb07). - Combina funciones de cálculo de clases de tamaño de ventana. (Iad935).
Correcciones de errores
- Se corrigió una falla de
DatePicker
que se producía cuando se hacía clic rápidamente en los botones de flecha de navegación cuando el mes que se muestra está en el límite del rango de años permitido (I46f36, b/290954897, b/297002119). - [Barra o riel de navegación] Compatibilidad con color transparente para el indicador. (Ie0a9b, b/267289987).
Versión 1.2.0-alpha09
4 de octubre de 2023
Lanzamiento de androidx.compose.material3:material3-*:1.2.0-alpha09
. La versión 1.2.0-alpha09 contiene estas confirmaciones.
Cambios en la API
- Se migraron
ModalNavigationDrawer
yDismissibleNavigationDrawer
para usar las nuevas APIs deAnchoredDraggable
. Se reemplazó el elementoanimateTo
deDrawerState
por los métodos de apertura y cierre, y el desplazamiento ahora se expone como un número de punto flotante en lugar de un objeto de estado. Puedes acceder al desplazamiento directamente a través decurrentOffset
. (I0a72c). - Se agregaron funciones de componibilidad para crear directamente
DatePickerState
yDateRangePickerState
. Estas funciones se pueden usar como alternativa a las funciones de componibilidadrememberDatePickerState
yrememberDateRangePickerState
cuando sea necesario. (I70326, b/291524052). - Los objetos
TabRows
fijos y desplazables ahora tienen variantes primaria y secundaria. Estos se asignan correctamente al comportamiento del color y del indicador, como se define en Material3. PrimaryScrollableTabRow
ySecondaryScrollableTabRow
ahora exponen el estado de desplazamiento. (Iec8f5, b/260572337).- Se agrega un nuevo parámetro
sheetMaxWidth
que los desarrolladores pueden configurar para especificar el ancho máximo que abarcará la hoja. Se puede pasar Dp.Unspecs para el parámetro si se desea una hoja que abarque todo el ancho de la pantalla. (Ifb7c9, b/266697696). - Se volvieron a agregar las APIs de
PlainTooltipBox
yRichTooltipBox
como métodos obsoletos (I246fa).
Correcciones de errores
- Se corrigió una falla que se producía cuando se inicializaba
DatePicker
con unaDatePickerFormatter
que tenía ciertos esquemas de fecha que se mantuvieron iguales cuando se convierten en patrones de fecha (como YY). (I01f29).
Versión 1.2.0-alpha08
20 de septiembre de 2023
Lanzamiento de androidx.compose.material3:material3-*:1.2.0-alpha08
. La versión 1.2.0-alpha08 contiene estas confirmaciones.
Cambio rotundo de comportamiento
ColorScheme
ahora es inmutable, lo que hace que las actualizaciones de color individuales sean menos eficientes, pero hace 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 es posible, pero se recompondrá más que antes. A su vez, reducimos significativamente la cantidad de suscripciones de estado a través de todo el código de Material y afectará el costo de inicialización y tiempo de ejecución de más casos de uso estándar. (Ic447d, b/297212873).- La elevación tonal ya no se anima en diferentes estados de interacción para coincidir con las especificaciones. (Icdd12).
Cambios en la API
- Se agregó un nuevo elemento
BottomAppBar
que toma como parámetro un elementoBottomAppBarScrollBehavior
para ocultarlo automáticamente cuando se desplaza el contenido. También se agregóFabPosition.EndOverlay
, lo que permite que el BAF se superponga a la barra inferior de la app en el andamiaje en lugar de anclarse encima de él. (Iecb47). - Se agregó un componente de etiqueta simple que se basa en
BasicTooltipBox
que no se descartará cuando se presione fuera de los límites de la etiqueta. (I821f9).
Correcciones de errores
- Se quitó el uso de
rememberSaveable
para la información sobre la herramienta. (Icc131, b/299500338). - Se agregó una marca temporal para controlar si Scaffold debe medir sus elementos secundarios durante la medición o durante la colocación. De forma predeterminada, se medirá en mediciones. Si tienes problemas con el comportamiento nuevo, infórmalos. (I0b354).
- Se corrigió el borde horizontal a Edge en
BottomSheet
con la medida correcta para el ancho de la pantalla del dispositivo. (I1df0c, b/299058752). - Se corrigió un error por el que
ModalBottomSheet
no llamaba aonDismissedRequest
cuando lo descartaba deslizando el dedo hacia abajo en la hoja. (Idfdd8).
Versión 1.2.0-alpha07
6 de septiembre de 2023
Lanzamiento de androidx.compose.material3:material3-*:1.2.0-alpha07
. La versión 1.2.0-alpha07 contiene estas confirmaciones.
Nuevas funciones
- Se agregó compatibilidad con los íconos de duplicación automática en
compose material 1.6.0-alpha05
. Consulta las notas de la versión para obtener más información sobre estos íconos.
Cambios en la API
SliderState
implementaDraggableState
. (I9b116)- Cambia la forma para que sea un parámetro obligatorio. Cambia el nombre de
position
aindex
en la función auxiliar de forma. (I34941). - Actualiza la
formatWithSkeleton
deDatePicker
para incluir un mapa que se usa como caché para mejorar el rendimiento. (I3195f). - Se agregó
BasicTooltipBox
acompose.foundation
y se actualizaronPlainTooltipBox
yRichTooltipBox
para usarTooltipBox
con los nuevos elementos componiblesPlainTooltip
yRichTooltip
. (I79e1d).
Correcciones de errores
dynamicLightColorScheme
ydynamicDarkColorScheme
ahora muestran colores de croma más altos para los roles de superficie ysurfaceContainer
. (I5e901).- Se corrigió un problema por el que algunos componentes que usaban subcomposición (p.ej.,
BottomSheetScaffold
) dentro de un Scaffold dentro de unLookaheadScope
intentaban leer su tamaño demasiado pronto. (I297b4, I871f1, b/295536718).
Versión 1.2.0-alpha06
23 de agosto de 2023
Lanzamiento de androidx.compose.material3:material3-*:1.2.0-alpha06
. La versión 1.2.0-alpha06 contiene estas confirmaciones.
Correcciones de errores
- Se corrigió el cálculo
offset
deDropdownMenu
para que los desplazamientos de x dependan únicamente de la dirección del diseño local, y ya no se revertirán cuando el menú esté cerca de la parte inferior de la pantalla. (Iccc74, b/294103942). - Se corrigió el cálculo
offset
deDropdownMenu
para que los desplazamientos de x dependan únicamente de la dirección del diseño local, y ya no se revertirán cuando el menú esté cerca de la parte inferior de la pantalla. (Ib87a2, b/294103942).
Versión 1.2.0-alpha05
9 de agosto de 2023
Lanzamiento de androidx.compose.material3:material3-*:1.2.0-alpha05
. La versión 1.2.0-alpha05 contiene estas confirmaciones.
Cambios en la API
- Se actualizaron la casilla de verificación y los colores de
TriStateCheckbox
. Ahora, elCheckboxDefaults.colors()
disabledUncheckedColor
solo afecta el borde de la casilla de verificación. Los casos especiales que requieren que establezcas el color del cuadro interno cuando está inhabilitado y desmarcado requieren una instancia personalizada deCheckboxColors
con los valores de color deseados. (I77d17, b/291943198).
Versión 1.2.0-alpha04
26 de julio de 2023
Lanzamiento de androidx.compose.material3:material3-*:1.2.0-alpha04
. La versión 1.2.0-alpha04 contiene estas confirmaciones.
Nuevas funciones
- API experimental de Segmented Button (Ifc8fb)
- Los divisores ahora tienen un parámetro para controlar la orientación de modo que admita divisores verticales. (I4c899, b/288438593).
Cambios en la API
- Estamos moviendo la dependencia de densidad al nivel de componente. Esto se aplica a los siguientes componentes:
SwipeToDismiss
y los componentes basados en Hojas de cálculo. Usa la nueva sobrecarga proporcionada donde la densidad es un parámetro. (I1846e). - Anotaciones adicionales para especificar las entradas permitidas a elementos componibles (Ief234)
- Agrega un parámetro de ícono al botón segmentado, divide la semántica para que los botones segmentados se puedan seleccionar para implementar la selección única y el botón de activación para implementar la selección múltiple, con
SelectableSegmentedButtonRow
yToggelableSegmentedButtonRow
respectivamente. (I38740). - Se cambió el nombre del divisor a
HorizontalDivider
. Se agregó la funcionalidadVerticalDivider
. (I5975c). - Se cambió el uso de
ClosedFloatingPointRange
para elFloatRange
más liviano en las APIs experimentales de Material 3 para minimizar el formato automático. (I4aab5). - Se agregó una nueva alineación de inicio para
FabPosition
. (Ib7aea, b/170592777)
Correcciones de errores
ModalBottomSheet
respeta la dirección del diseño local. (Ib4f44, b/285628622).
Versión 1.2.0-alpha03
21 de junio de 2023
Lanzamiento de androidx.compose.material3:material3-*:1.2.0-alpha03
. La versión 1.2.0-alpha03 contiene estas confirmaciones.
Cambios en el comportamiento
includeFontPadding
ahora esfalse
de forma predeterminada en la tipografía de Material 3. También se cambió el estilo predeterminado de altura de línea aTrim.None
yAlignment.Center
, y se agrególineHeight
explícito (en sp) a losTextStyle
deTypography
. Consulta los documentos de la API si quieres personalizar estos valores y lee la entrada de blog para obtener una explicación detallada de estos cambios. (I6266f, Icabc3).
Nuevas funciones
- Se agregó una sobrecarga para
RangeSlider
, que es una versión con estado del componente. Se creó un elementoRangeSliderState
que contiene toda la información del segmento activo actual, las medidas de los componentes deRangeSlider
y la lógica de arrastre y gestos. (I8c270). - La barra de búsqueda ahora admite sombras a través del parámetro
shadowElevation
recién agregado. (Ia5369, b/271040353). ColorScheme
ahora admite rolesSurfaceContainer
nuevos.- Ahora se puede inhabilitar la superposición de elevación tonal de la superficie con el elemento local de composición de
LocalTonalElevationEnabled
. (Ic203c, b/277774590).
Cambios en la API
- Abre los constructores de colores de componentes. (I8c4a6).
- Agregar parámetros enfocables a ambas APIs de información sobre la herramienta para que los desarrolladores puedan hacer que la información consuma eventos táctiles o no Ten cuidado porque podría dañar el recorrido automático del enfoque de accesibilidad. (Ie32d8).
- Accesibilidad optimizada para asignaciones de rendimiento y memoria. (Iede48).
- Se expuso
DefaultSizeClasses
y creaStandardSizeClasses
paraWindowSizeClasses
(I91838). - Se cambió
WindowWidth/HeightSizeClass
a clases de valores flotantes. (Ie686e)
Correcciones de errores
- El parámetro
contentWindowInsets
de Scaffold ahora respeta las inserciones de ventana consumidas. Ten en cuenta que el comportamiento del padding del contenido basado entopBar
ybottomBar
no se modifica cuando se proporcionan estos parámetros. (I08b73, b/264601542). - Corrige la alineación de la barra superior central de la app para garantizar que no se renderice un título largo sobre los íconos de acción o el ícono de navegación. (I4369f, b/236994621).
- Las posiciones de las pestañas ahora aplican un ancho de contenido mínimo de 24 dp. Esto proporciona un objetivo táctil accesible para los indicadores de pestañas. (Id8861).
- Las paletas de colores dinámicas de
dynamicLightColorScheme
ydynamicDarkColorScheme
ahora admiten nuevos roles de superficie. (I1252e). - Se actualizó la alineación de notificaciones de la insignia para que no se recorte cuando se colisione con el bisabuelo. (Idf75a).
Versión 1.2.0-alpha02
24 de mayo de 2023
Lanzamiento de androidx.compose.material3:material3-*:1.2.0-alpha02
. La Versión 1.2.0-alpha02 contiene estas confirmaciones.
Cambios en la API
- Se agregó el parámetro de inserciones de ventana a
ModalBottomSheet
.- La pantalla de
ModalBottomSheet
ahora se puede dibujar detrás de la barra de estado conwindowInsets
establecido en cero - Se actualizó la funcionalidad predeterminada de
ModalBottomSheet
para mantenerse fuera de las barras del sistema, incluida la navegación. - El control de inserción de la barra de estado se proporciona mediante el controlador de arrastre en el modo de borde a borde.
BottomSheetDefaults
incluye las inserciones de ventana paraBottomSheetWindow
. (I31200, b/274872542, b/272973615, b/272334475, b/268432129, b/275849044, {168b1, 27543){/161360{/161836/27543}
- La pantalla de
Indicator
dejó de estar disponible y se agregaronPrimary
/SecondaryIndicator
para que coincidan con las especificaciones de M3.PrimaryIndicator
coincide con el ancho del contenido de la pestaña, mientras queSecondaryIndicator
abarca el ancho completo disponible.SecondaryIndicator
es equivalente al elementoIndicator
que ya no está disponible y puede ser un reemplazo directo. (I27604).- Se agregó una opción para pasar un
ScrollState
cuando se construye unDropdownMenu
o unExposedDropdownMenu
para controlar el estado de desplazamiento vertical de los elementos del menú que se muestran. (Ia0734, b/185304441). - Se agregó una sobrecarga para
Slider
, que es una versión con estado del componente. Se creó un elementoSliderState
que contiene toda la información del segmento activo actual, las medidas de los componentes deSlider
y la lógica de arrastre y gestos. (I124a5). - Se cambió el nombre de la propiedad semántica
isContainer
aisTraversalGroup
. (I121f6) - Se agregó
TextStyle.merge(...)
optimizado con la lista completa de parámetros. (Iad234, b/246961787). - Se crearon interfaces públicas
TooltipState
,RichTooltipState
yPlainTooltipState
. Se agregaronRichTooltipStateImpl
yPlainTooltipStateImpl
para los estados predeterminados. Se agregaron funcionesremember*State
para obtener estos estados implementados. Se quitóTooltipSync
y se reemplazó por unTooltipDefault.GlobalMutatorMutex
. (I7813d). - Se actualizó
DatePickerColors
para incluir opciones de personalización adicionales para los colores del divisor del selector de fecha, la navegación y los campos de entrada de texto. (I1a685, b/274626815). DatePickerState
yDateRangePickerState
ahora son interfaces públicas con implementaciones predeterminadas querememberDatePickerState
yrememberDateRangePickerState
pueden recuperar. (I71c52).- Se quitó
dateValidator
deDatePicker
yDateRangePicker
, y se agregó una interfazSelectableDates
que se puede configurar en el estado para controlar qué fechas o años se pueden seleccionar en la IU. (Ic2fc6). - Se quitó
TimePicker
de la API estable, y se esperan más cambios en la API de estado (I3f39a). - Se movió
ModalBottomSheet
solo a Android. No se recomienda usarModalBottomSheet
en computadoras, y la funcionalidad no se mantiene de forma activa. (Ib3778).
Correcciones de errores
- Se corrigió la acción de descarte
AlertDialog
para que aparezca debajo de la acción de confirmación cuando las acciones se apilan unas sobre otras para adaptarse al ancho del diálogo. Esta corrección alinea la implementación con las especificaciones de Material Design. (I029de, b/235454277). - Se corrigió un error en
ListItem
que usaba padding incorrecto para elementos de tres líneas. (I6e235). ModalBottomSheet
ahora puede mostrar el teclado IME. (Idc508, b/262140644, b/268380384, b/272483584)
Versión 1.2.0-alpha01
10 de mayo de 2023
Lanzamiento de androidx.compose.material3:material3:1.2.0-alpha01
y androidx.compose.material3:material3-window-size-class:1.2.0-alpha01
. La versión 1.2.0-alpha01 contiene estas confirmaciones.
Versión 1.1
Versión 1.1.2
20 de septiembre de 2023
Lanzamiento de androidx.compose.material3:material3:1.1.2
y androidx.compose.material3:material3-window-size-class:1.1.2
. La versión 1.1.2 contiene estas confirmaciones.
Correcciones de errores
- Se corrigió el modificador que se pasaba incorrectamente a dos elementos componibles. (b/282761472).
- Se corrigió
TimePickerState
que muestra horas incorrectas cuando se inicializa con 23 horas. (b/278242122). - Se corrigió el estado inicial del botón de activación para la validación del mediodía y los minutos. (b/269768197, b/282790635).
- Se corrigió
state.hour
que mostraba un valor incorrecto para las 11 p.m. (b/282761472, b/278242122).
Versión 1.1.1
21 de junio de 2023
Lanzamiento de androidx.compose.material3:material3:1.1.1
y androidx.compose.material3:material3-window-size-class:1.1.1
. La versión 1.1.1 contiene estas confirmaciones.
Correcciones de errores
- Agrega una llamada a
ModalBottomSheet
sin el parámetrowindowInset
para brindar compatibilidad con objetos binarios. (Ib7959). - Se agregó el parámetro de inserciones de ventana a
ModalBottomSheet
.- La pantalla de
ModalBottomSheet
ahora se puede dibujar detrás de la barra de estado conwindowInsets
establecido en cero - Se actualizó la funcionalidad predeterminada de
ModalBottomSheet
para mantenerse fuera de las barras del sistema, incluida la navegación. - El control de inserción de la barra de estado se proporciona mediante el controlador de arrastre en el modo de borde a borde.
BottomSheetDefaults
incluye las inserciones de ventana paraBottomSheetWindow
. (I31200, b/274872542, b/272973615, b/272334475, b/268432129, b/275849044, {168b1, 27543){/161360{/161836/27543}
- La pantalla de
Versión 1.1.0
10 de mayo de 2023
Lanzamiento de androidx.compose.material3:material3:1.1.0
y androidx.compose.material3:material3-window-size-class:1.1.0
. La versión 1.1.0 contiene estas confirmaciones.
Funciones principales de la versión 1.1.0
Nuevos componentes de Material Design 3
- Hojas inferiores
- Selectores de fecha
- Búsqueda
- Deslizar para descartar
- Selectores de tiempo
- Información sobre las herramientas
Mejoras en componentes existentes de Material Design 3.
Se ascendieron las APIs experimentales a estables.
Consulta esta entrada de blog para obtener más detalles.
Versión 1.1.0-rc01
19 de abril de 2023
Lanzamiento de androidx.compose.material3:material3:1.1.0-rc01
y androidx.compose.material3:material3-window-size-class:1.1.0-rc01
. La versión 1.1.0-rc01 contiene estas confirmaciones.
Cambios en la API
- Se quitó
TimePicker
de la API estable, y se esperan más cambios en la API de estado (I3f39a). - Se movió
ModalBottomSheet
solo a Android. No se recomienda usarModalBottomSheet
en computadoras, y la funcionalidad no se mantiene de forma activa. (Ib3778).
Versión 1.1.0-beta02
5 de abril de 2023
Lanzamiento de androidx.compose.material3:material3:1.1.0-beta02
y androidx.compose.material3:material3-window-size-class:1.1.0-beta02
. La versión 1.1.0-beta02 contiene estas confirmaciones.
Cambios en la API
SheetState
ahora tiene un parámetroskipHiddenState
opcional.rememberStandardBottomSheetState
ahora tiene un parámetroskipHiddenState
opcional.BottomSheetScaffold
ahora tiene un anclaje oculto definido, aunque está inhabilitado de forma predeterminada- Se actualizó la documentación de
SheetState.requireOffset
- Se cambió el nombre de
BottomSheetDefaults.MinimizedShape
porBottomSheetDefaults.HiddenShape
. (I839f4, b/273870234)
Correcciones de errores
- No cambies la cara de reloj de hora a minuto cuando la exploración táctil esté habilitada. (I717d0).
- Las semánticas del controlador de arrastre
ModalBottomSheet
yBottomSheetScaffold
ahora están combinadas. (I05afb). - El modificador
BottomSheetScaffold
, y los parámetroscontainerColor
ycontentColor
ahora solo afectan al contenido. (I992cb). BottomSheetScaffold nestedScroll
para el contenido de la hoja ahora implementa lanzamientos. (I992cb).
Versión 1.1.0-beta01
22 de marzo de 2023
Lanzamiento de androidx.compose.material3:material3:1.1.0-beta01
y androidx.compose.material3:material3-window-size-class:1.1.0-beta01
. La versión 1.1.0-beta01 contiene estas confirmaciones.
Cambios en la API
- Se agregó el parámetro de tipo de diseño al elemento componible
TimePicker
. Permite usar diferentes diseños según la configuración de la pantalla (Ia0e16). SearchBarDefaults
se marcó como experimental. (I65561).- Se agregó la elevación de sombras a
BottomSheetScaffold
(I94e0f). - Se agregó compatibilidad para mostrar los selectores de fecha sin la parte del encabezado. Se realizaron cambios en la API para permitir que se pase un título nulo cuando se crea un selector de fecha. Ahora puedes pasar títulos nulos y
showToggleMode = false
para mostrar un selector sin interfaz gráfica. (Id3f3a, b/266132421, b/267194809).
Correcciones de errores
- Las barras de búsqueda ahora borran el enfoque automáticamente cuando están inactivas. (I22a7c, b/261444487).
- Se actualizó
DateRangePicker
para permitir seleccionar un período con la misma fecha de inicio y finalización. (I16529, b/272882497). - Los campos de texto ahora posicionan correctamente sus elementos de texto cuando el tamaño de la fuente es más pequeño de lo esperado Esto puede provocar cambios en los píxeles de tus apps según la configuración de la fuente y la secuencia de comandos. (I8b8d0).
- Las acciones semánticas de la hoja inferior ahora tienen etiquetas. (I277b0).
Versión 1.1.0-alpha08
8 de marzo de 2023
Lanzamiento de androidx.compose.material3:material3:1.1.0-alpha08
y androidx.compose.material3:material3-window-size-class:1.1.0-alpha08
. La versión 1.1.0-alpha08 contiene estas confirmaciones.
Nuevas funciones
- Se agregó compatibilidad con
BottomSheetScaffold
yBottomSheetScaffoldState
. (I063d4).
Cambios en la API
- Se agregó funcionalidad a
DatePickerState
yDateRangePickerState
para permitir fechas de configuración después de la creación inicial del estado y restablecer selecciones estableciendo marcas de tiempo nulas. La configuración manual de fechas se debe realizar con precaución, y la nueva funciónsetSelection
arrojará una excepción en caso de que una fecha proporcionada no cumpla una condición previa (consulta la documentación). (Ifa645, b/268609314, b/270427389). - Se cambió el nombre de
SheetValue
contraído porPartiallyExpanded
para representar el comportamiento en este estado de manera más precisa y flexible (Ia1491). - Se actualizaron los nombres del parámetro
ListItem
a _content en lugar de _text. Los métodos get predeterminados ahora sonReadOnlyComposables
cuando es relevante. (I69a25). - Se graduaron las APIs interactivas de Surface de experimental. (I90d59, b/261561812).
Correcciones de errores
- Se solucionó un problema por el que el estado
HalfExpanded
deModalBottomSheet
se calculaba de forma incorrecta y la hoja parecía flotar. (I45e84, b/268411386). - Agrega una marca de verificación de
confirmValueChange
al corte de lámina deModalBottomSheet
. (I2311a, b/270425759). - Mueve acciones semánticas de
BottomSheet
para arrastrar el controlador. (I158ba). ModalBottomSheet
ahora controla el botón Atrás y se enfoca en el inicio. (I4d2ab).- Ahora también se controla
ModalBottomSheet onDismissRequest
durante el deslizamiento de desplazamiento anidado (I655c5, b/268433166).
Versión 1.1.0-alpha07
22 de febrero de 2023
Lanzamiento de androidx.compose.material3:material3:1.1.0-alpha07
y androidx.compose.material3:material3-window-size-class:1.1.0-alpha07
. La versión 1.1.0-alpha07 contiene estas confirmaciones.
Nuevas funciones
- Se agregó un elemento componible de entrada de tiempo que funciona con
rememberTimePickerState()
y sigue la especificación de M3 para la entrada de tiempo (Ia4fab). - Se agregó una API de
DateRangePicker
de Material 3 para seleccionar un rango de fechas. (I7a6c3, b/267194809). - Se agregó compatibilidad con el modo de entrada de Material 3 para seleccionar períodos a través de la API de
DateRangePicker
. (Ifdbc4). - Los colores del campo de texto ahora permiten personalizar lo siguiente:
- Los colores del campo de entrada y del texto del marcador de posición según el enfoque y el estado de error. Se cambió el nombre del parámetro
textColor
aunfocusedTextColor
, y el nombre deplaceholderColor
aunfocusedPlaceholderColor
. - El color del contenedor de los campos de texto completados según el estado de error con el nuevo parámetro
errorContainerColor
.
- Los colores del campo de entrada y del texto del marcador de posición según el enfoque y el estado de error. Se cambió el nombre del parámetro
- Los colores del campo de texto del menú desplegable expuestos se actualizaron con parámetros para admitir la nueva API de prefijo y sufijo. (I9c8b4, b/254284181, b/264766350).
Cambios en la API
- Se revirtieron algunas versiones de la API de Slider y se quitaron las sobrecargas redundantes de Slider que incluye el nuevo control deslizante experimental con miniaturas y pistas personalizadas. Se asciende
RangeSlider
para que sea estable. (Ie8fbd). - Se cambió el nombre de
defaultElevation
aelevation
en las funciones de elevación del chip. (I0f872). - Las siguientes APIs de campo de texto de Material 3 ya no son experimentales:
TextField
,OutlinedTextField
,textFieldWithLabelPadding
,textFieldWithoutLabelPadding
youtlinedTextFieldPadding
. (Ieb5c0, b/261561819). TimePickers
is24Hour
usa la configuración del sistema. (I18856)- Se quitó la anotación experimental de las APIs de Scaffold. (Ibb51e, b/261565765, b/261436953).
Correcciones de errores
- La forma predeterminada de
ModalBottomSheet
ahora es siempreSheetDefaults.ExpandedShape
. (I0dfca). - Mejoras de accesibilidad para
DatePicker
yDateRangePicker
de Material 3 (I5087e). - Se corrigió el error por el que se propagaba la restricción de altura máxima y podía fallar (I30d8c).
- Se quitaron los roles semánticos de las plataformas seleccionables y en las que se puede hacer clic. Se actualizaron los componentes que los usaban para establecer roles con modificador.semantics. (I793d9)
Versión 1.1.0-alpha06
8 de febrero de 2023
Lanzamiento de androidx.compose.material3:material3:1.1.0-alpha06
y androidx.compose.material3:material3-window-size-class:1.1.0-alpha06
. La versión 1.1.0-alpha06 contiene estas confirmaciones.
Nuevas funciones
- Los campos de texto ahora admiten texto de prefijo y sufijo. (Ia8578, b/179884561)
- Se agregó una función
TimePicker
para mostrar un selector de hora que sigue la especificación de Material 3, que se usa junto conTimePickerState
y el método de convenienciarememberTimePickerState
(I71910). - Una entrada de fecha ahora es un modo de visualización en el
DatePicker
. Se agregó compatibilidad para alternar entre los modos de selector de fecha y entrada de fecha (Ieeff7). - Se agregó una API para
RichTextTooltips
(I58ef3). - Implementación modal de hojas inferiores para Material 3, incluidos
ModalBottomSheet
yModalBottomSheetDefaults
. También se introdujeronSheetState
yrememberSheetState
, que se pueden usar en componentes de hojas en el futuro (I0853a, b/244189383).
Cambios en la API
- Se estabilizó el objeto
showSnackbar
de la API (I195c2, b/261424370). - Se estabilizaron las APIs para el chip de asistencia y el chip de sugerencias (Ibb67b, b/261424370).
- Se ascendieron las APIs de
ListItem
,ListItemDefaults
yListItemColors
a no experimentales (I7e7fa, b/261438882). - Se ascendieron
SliderPositions
,SliderDefaults.Thumb
ySliderDefaults.Track
a estables y se agregaron APIs no experimentales deSlider
yRangeSlider
que contienen miniaturas y pistas personalizadas. También dejarán de estar disponibles las APIs deSlider
yRangeSlider
anteriores (Ie5ea6, b/261566890). Modifier.tooltipAnchor()
se hizo público, por lo que los desarrolladores pueden pasarlo al ancla para indicar que se debe mostrar una información sobre la herramienta cuando se mantenga presionado. Se actualizó la API dePlainTooltipBox
para que ya no haga queTooltipState
sea anulable y ahora tiene un valor predeterminado (Ie2fb7).ProgressIndicatorDefaults.circularTrackColor
se marcó como@Composable
para mantener la coherencia (Id29cc).- Se restableció el método get de propiedad
LocalMinimuTouchTargetEnforcement
, y se marcó como obsoleto, y redirecciona aLocalMinimumInteractiveComponentEnforcement
(I60dd5).
Versión 1.1.0-alpha05
26 de enero de 2023
Se lanzaron androidx.compose.material3:material3:1.1.0-alpha05
y androidx.compose.material3:material3-window-size-class:1.1.0-alpha05
. La versión 1.1.0-alpha05 contiene estas confirmaciones.
Nuevas funciones
DatePickerDialog
y compatibilidad con accesibilidad- Se agregó la miniatura y la pista personalizadas a
RangeSlider
.
Actualizaciones de dependencias
Compose UI
yCompose Material
ahora dependen de Lifecycle versión 2.6.0.
Versión 1.1.0-alpha04
11 de enero de 2023
Lanzamiento de androidx.compose.material3:material3:1.1.0-alpha04
y androidx.compose.material3:material3-window-size-class:1.1.0-alpha04
. La versión 1.1.0-alpha04 contiene estas confirmaciones.
Nuevas funciones
- API inicial de
DatePicker
para elegir una sola fecha mediante una IU de calendario. Esta API aún se está modificando (I722b9). - Se agregó compatibilidad con información sobre herramientas sin formato mediante
PlainTooltipBox
(I0cdfb). - Se agregó una barra de búsqueda (Iad128).
- Se agregó
SwipeToDismiss
(I458a8, b/242889540).
Cambios en la API
- Se agregó la propiedad semántica
IsContainer
a Surfaces. Esta propiedad se usará en un cambio posterior que determina el orden de recorrido en función del significado semántico de los elementos, como las plataformas (I63379). - Se marcaron como estables las APIs relacionadas con el panel lateral de navegación (Iab01e, b/261439597).
- Se agregó un parámetro de color de seguimiento para los indicadores de progreso circular y un parámetro de limitación de trazo tanto para los indicadores de progreso circular como los de progreso lineal (Ie668c, b/216325962, b/222964817).
- Se aumentó la nulabilidad de tipo de datos que se muestra de las funciones ocultas obsoletas (Ibf7b0).
- Se agregó
Modifier.minimumInteractiveComponentSize
, que puede usarse para reservar al menos 48 dp de tamaño para desambiguar las interacciones táctiles si el elemento fuera más pequeño (I33f58, b/258495559). - Se agregó la API experimental para el elemento componible
AlertDialog
que tiene un espacio de contenido (Iec4a2).
Correcciones de errores
- El progreso que muestran los indicadores ahora está delimitado correctamente en el rango esperado (I8a7eb, b/262262727).
Problema conocido
- Cuando actualices de
androidx.compose.foundation:1.4.0-alpha03
aandroidx.compose.foundation:1.4.0-alpha04
, es posible que experimentes un errorjava.lang.NoSuchFieldError
. Aquí es donde originalmente se informó el problema. Se envió una solución, que estará disponible en la próxima actualización de Compose. Como solución, actualiza las bibliotecasandroidx.compose.material
yandroidx.compose.material3
a la versión más reciente (1.1.0-alpha04) o cambia tuandroidx.compose.foundation
a la versión 1.4.0-alpha03 inferior.
Versión 1.1.0-alpha03
7 de diciembre de 2022
Se lanzaron androidx.compose.material3:material3:1.1.0-alpha03
y androidx.compose.material3:material3-window-size-class:1.1.0-alpha03
. La versión 1.1.0-alpha03 contiene estas confirmaciones.
Cambios en la API
- Se cambió el nombre de
consumedWindowInsets()
aconsumeWindowInsets()
, y el dewithConsumedWindowInsets()
aonConsumedWindowInsetsChanged()
, y se cambiaron los modificadores para que sean públicos (Ie44e1). - Se agregó un nuevo padding predeterminado de contenido al botón de texto con un ícono para usar (I8f662).
- Se agregaron colores inhabilitados a la barra de navegación y al riel (Ia7892, b/258867034).
- Se agregó una API de modificador para consultar información de desplazamiento de principales (I2ba9d, b/203141462).
- Se usa en
Clickable
para retrasar correctamente las interacciones de presionar, cuando los gestos pueden convertirse en eventos de desplazamiento. - Se corrigió un error donde
Clickables
no retrasaba correctamente las ondas, cuando se usa dentro de unScrollable ViewGroup
. - Se actualizaron los paneles laterales y las hojas de cálculo para retrasar las presiones correctamente en caso de que los gestos se conviertan en eventos de desplazamiento.
Actualizaciones de dependencias
Compose UI
yCompose Material
ahora dependen de Lifecycle 2.5.1 (I05ab0, b/258038814).
Versión 1.1.0-alpha02
9 de noviembre de 2022
Se lanzaron androidx.compose.material3:material3:1.1.0-alpha02
y androidx.compose.material3:material3-window-size-class:1.1.0-alpha02
. La versión 1.1.0-alpha02 contiene estas confirmaciones.
Cambios en la API
awaitFirstDown
ywaitForUpOrCancellation
ahora aceptan unPointerEventPass
para lograr una mayor flexibilidad (también se corrigióExposedDropdownMenuBox
, que muestra un menú mientras te desplazas) (I7579a, b/212091796).- Se agregó el parámetro
minLines
al texto de Material y Material 3,TextField
yOutlinedTextField
, que permiten establecer la altura mínima del componente en términos de cantidad de líneas (I4af1d). - La función
TopAppBarDefaults smallTopAppBarColors
dejó de estar disponible y se reemplazó por una nueva funcióntopAppBarColors
que se debería usar cuando se crea unTopAppBar
(Ie6cb9). - Se agregó el parámetro
minLines
aBasicText
yBasicTextField
. Permite establecer la altura mínima de estos elementos componibles en términos de cantidad de líneas (I24294, b/122476634).
Correcciones de errores
- Se recortó el contenido de
IconButton
yIconToggleBotton
de Material 3 en la forma de la capa de estado del componente (p. ej., una forma circular) (I9da8f). - Se actualizaron las barras superiores mediana y grande de la aplicación de Material 3 para aplicar el mismo color de fondo en toda la superficie y permitir que se anulen los colores predeterminados con valores de colores transparentes (I67659, b/249688556, b/250838918).
Versión 1.1.0-alpha01
24 de octubre de 2022
Se lanzaron androidx.compose.material3:material3:1.1.0-alpha01
y androidx.compose.material3:material3-window-size-class:1.1.0-alpha01
. La versión 1.1.0-alpha01 contiene estas confirmaciones.
Correcciones de errores
- Se corrigió la barra superior de la app cuando se aplicaba un título con TextStyle y un Pincel (If667e).
Versión 1.0
Versión 1.0.1
9 de noviembre de 2022
Se lanzaron androidx.compose.material3:material3:1.0.1
y androidx.compose.material3:material3-window-size-class:1.0.1
. La versión 1.0.1 contiene estas confirmaciones.
Correcciones de errores
- Se actualizaron las barras superiores mediana y grande de la aplicación de Material 3 para aplicar el mismo color de fondo en toda la superficie y permitir que se anulen los colores predeterminados con valores de colores transparentes (I67659, b/249688556, b/250838918).
Versión 1.0.0
24 de octubre de 2022
Se lanzaron androidx.compose.material3:material3:1.0.0
y androidx.compose.material3:material3-window-size-class:1.0.0
. La versión 1.0.0 contiene estas confirmaciones.
Funciones principales de la versión 1.0.0
Esta es la primera versión estable de Compose Material 3.
Temas de Material Design 3 y color dinámico de Material You
Componentes de Material Design 3
- Distintivo
- Barra inferior de la app
- Botones
- BAF y BAF extendido
- Tarjetas
- Casilla de verificación
- Chips
- Diálogos
- Divisor
- Menú desplegable
- Lista
- Barra de navegación
- Panel lateral de navegación
- Riel de navegación
- Indicador de progreso
- Botón de selección
- Control deslizante
- Interruptor
- Pestañas
- Campos de texto
- Barra superior de la app
- Ícono
- Texto
- Plataforma
- Diseño
- Color del contenido
Clase de tamaño de la ventana
material3-window-size-class
es una nueva biblioteca que proporciona compatibilidad con las clases de tamaño de ventana: un conjunto de puntos de interrupción de viewports bien definidos para que puedas diseñar, desarrollar y poner a prueba diseños de aplicaciones de tamaño variable. Puedes usarcalculateWindowSizeClass
para recuperar una instancia de la clase de tamaño de ventana, que puedes usar a fin de determinar la apariencia de tu IU, por ejemplo, si quieres mostrar un riel de navegación en lugar de una barra de navegación inferior para tamaños de ventana más grandes. Para obtener más información y un ejemplo de uso, consulta la documentación de referencia de la API paraWindowSizeClass
.Consulta esta entrada de blog para obtener más detalles.
Versión 1.0.0-rc01
5 de octubre de 2022
Se lanzaron androidx.compose.material3:material3:1.0.0-rc01
y androidx.compose.material3:material3-window-size-class:1.0.0-rc01
. La versión 1.0.0-rc01 contiene estas confirmaciones.
Cambios en la API
- Se agregó el parámetro de ranura para admitir la API de text field (Iaac0d, b/227146125).
Versión 1.0.0-beta03
21 de septiembre de 2022
Se lanzaron androidx.compose.material3:material3:1.0.0-beta03
y androidx.compose.material3:material3-window-size-class:1.0.0-beta03
. La versión 1.0.0-beta03 contiene estas confirmaciones.
Cambios en la API
ExposedDropdownMenuDefaults
ahora expone un valor de padding para los elementos de menú (I34ee1).ExposedDropdownMenuBoxScope
ahora tiene un modificadorModifier.menuAnchor()
que se debe pasar al campo de texto para un comportamiento de a11y adecuado (I27fa3).- Se agregaron dos métodos sobrecargados para la API de Slider actual que permite a los usuarios pasar un pulgar o hacer un recorrido para propagar el control deslizante (I21c00).
Correcciones de errores
- Se actualizó la asignación de colores del tema oscuro para el contenedor de error en tono 90 (Ic5612).
- Se hizo una corrección a fin de permitir la configuración de un fondo transparente para las pequeñas barras de la app superiores de Material 3 (I645e2, b/245575782).
Versión 1.0.0-beta02
7 de septiembre de 2022
Se lanzaron androidx.compose.material3:material3:1.0.0-beta02
y androidx.compose.material3:material3-window-size-class:1.0.0-beta02
. La versión 1.0.0-beta02 contiene estas confirmaciones.
Cambios en la API
- Las inserciones de componentes predeterminados que se introdujeron en m3 en la versión beta01 ya no incluyen las inserciones del IME.
- El componente Scaffold de Material3 ahora tiene un parámetro
contentWindowInsets
, lo que permite especificar la cantidad de inserciones que se deben controlar para el espacio de contenido (Icf11a, b/243713323). - La función experimental
SmallTopAppBar
de Material 3 deja de estar disponible y se introduce una funciónTopAppBar
equivalente. Migra tu uso al nuevo (I74404, b/226918634). - Agrega control sobre los comportamientos de deslizamiento y ajuste de la barra de la aplicación superior (I15c81).
- Quita startIndent del divisor y mueve el color al último parámetro (If7be2).
Correcciones de errores
- Hace que los diálogos se identifiquen solos con los usuarios de TalkBack mediante el anuncio de la palabra Dialog cuando se muestran (I857ef).
Versión 1.0.0-beta01
24 de agosto de 2022
Se lanzaron androidx.compose.material3:material3:1.0.0-beta01
y androidx.compose.material3:material3-window-size-class:1.0.0-beta01
. La versión 1.0.0-beta01 contiene estas confirmaciones.
Referencia de la API
Para ver los temas, los componentes y otros elementos que admiten composición más recientes disponibles, consulta la descripción general de la referencia de la API de Compose Material 3.
Cambios en la API
- Se actualizó la barra superior de la aplicación de Material 3 para ajustarla de un estado completamente contraído a uno completamente extendido. Además, se actualizó la función de comportamiento
TopAppBarDefaults
para que admita composición y proporcione valores predeterminados para el estado de la barra superior de la aplicación y las especificaciones de la animación (I642b3). - Se actualizaron las firmas del componente BAF para que coincidan con la API de plataforma (I3afaa).
- Se agregó compatibilidad integrada de inserciones con las barras superiores de la aplicación, los paneles laterales, la barra de navegación y el riel. Cuando se usen estos componentes por separado o con Scaffold, se controlarán automáticamente las inserciones para los desarrolladores. Nota: Este cambio no agrega la administración automática de los íconos de la barra de estado ni la transparencia de las barras de estado y navegación. Continúa haciéndolo manualmente para garantizar la mejor experiencia de borde a borde (I7e4e6, b/183161866).
- Se actualizaron los componentes predeterminados a fin de reducir la plataforma de la API y mejorar la flexibilidad y el rendimiento en el futuro (I31820).
- Se reorganizaron los parámetros de la hoja del panel lateral de navegación y chip para mantener la coherencia dentro de la API (I45d0b).
- Se quitó
startIndent
del divisor y se movió el color para que sea el último parámetro (If7be2).
Versión 1.0.0-alpha16
10 de agosto de 2022
Lanzamiento de androidx.compose.material3:material3:1.0.0-alpha16
y androidx.compose.material3:material3-window-size-class:1.0.0-alpha16
. La versión 1.0.0-alpha16 contiene estas confirmaciones.
Nuevas funciones
- Se admite la especificación de un ancho personalizado en un panel lateral de navegación (Ia7f10).
Cambios en la API
- Se reordenaron los parámetros de las pestañas y los íconos de Tab y Leading para mantener la coherencia dentro de la API (Ie2637).
- Se marcó
BadgeDefaults
como experimental (I98ef3). - Se quitó la función de panel lateral de navegación obsoleta (I4f2db).
- Se reorganizaron los parámetros del control deslizante en Material 3 para mantener la coherencia dentro de la API (I0aee7).
- Se reordenaron los parámetros
NavigationBar
yNavigationRail
para mantener la coherencia dentro de la API (I51cda). - Se reordenaron los parámetros en Material 3 para mantener la coherencia en la API (If4ae1).
- Se reorganizaron los parámetros del control deslizante en Material 3 para mantener la coherencia dentro de la API (I62673).
- Se cambió el nombre de los parámetros de íconos por acciones para que sean coherentes con la barra superior de la app (Id75be).
- Marca
Badge
yBadgedBox
como experimentales porque la alineación del ancla aún está en proceso de entrada (I1712e, b/236524516). - Se cambiaron las anotaciones de
@ExperimentalMaterial3Api
de las variantes del botón de ícono a@OptIn
(I070b5). - Se separó el contenido de un panel lateral de navegación a su propio elemento de componibilidad para admitir la especificación de un ancho personalizado en él (Ia7f10).
- Se quitó
Divider
deMenuDefaults
yTabDefaults
(I4e33c).
Versión 1.0.0-alpha15
27 de julio de 2022
Lanzamiento de androidx.compose.material3:material3:1.0.0-alpha15
y androidx.compose.material3:material3-window-size-class:1.0.0-alpha15
. La versión 1.0.0-alpha15 contiene estas confirmaciones.
Nuevas funciones
- Se permite arrastrar la barra superior de la app desde el objeto mismo (I65c00, b/205873416).
Cambios en la API
- Se actualizaron las APIs de
FilterChip
yElevatedFilterChip
a fin de quitar el espacioselectedIcon
y volver a usarleadingIcon
para mostrar un estado seleccionado (Ie5dc2). - Agregamos funciones de color de variantes de borde y contorno (Id6d54).
- Se corrigieron las convenciones de nombres para los valores predeterminados de componibilidad (I62b27).
- Marca
ListItemDefaults
yListItemColors
como experimentales (I1f3ec). - Cambios en la API de la barra de la app superior para reflejar mejor el significado de sus propiedades de estado. Además, marca la API de la barra superior de la app como experimental (Ic0ad8).
- Se agregaron colores de selección de texto a
TextFieldColors
para mejorar la visibilidad (Iba1b8). - Agregamos
ButtonDefault.ButtonWithIconContentPadding
para usarlo con los botones que contienen un ícono (I2bf9c) - Los campos de texto se marcaron como experimentales para permitir una mayor flexibilidad en futuros cambios de API (I127b5).
- Se quitó la anotación
@ExperimentalMaterial3Api
de la funciónCheckbox
(I5eefc). - Se quitó la anotación
@ExperimentalMaterial3Api
de la funciónRadioButton
(I17e2a). - Se quitó la anotación
@ExperimentalMaterial3Api
de las tarjetas no interactivas (I9bd49). - Se actualizaron varios objetos predeterminados de componentes para incluir colores, formas, etc. (I96e11).
Correcciones de errores
- Se quitaron de las muestras de chips de entrada los íconos finales que no funcionan para evitar que los usuarios se confundan en la app de catálogo (I9846a).
Versión 1.0.0-alpha14
29 de junio de 2022
Lanzamiento de androidx.compose.material3:material3:1.0.0-alpha14
y androidx.compose.material3:material3-window-size-class:1.0.0-alpha14
. La versión 1.0.0-alpha14 contiene estas confirmaciones.
Nuevas funciones
- Se agregó la implementación de listas de M3. Consulta la documentación para usar la muestra (Id7a20).
Cambios en la API
- Se cambió el nombre de parámetro de los valores al valor en
RangeSlider
(I3b79a). - La API cambia a la implementación de
InputChip
para admitir un estado seleccionable según la especificación de Material Design. Se agregó compatibilidad en los coloresFilterChip
para el estado inhabilitado seleccionado (I55244, b/235792432). - Se agregó el BAF predeterminado
BottomAppBar
(Ida4c8). - Se agregó
ColorScheme.surfaceColorAtElevation
(Id41af). - Las interfaces en las bibliotecas de Compose ahora se compilan con métodos de interfaz predeterminados de jdk8 (I5bcf1).
WindowWidthSizeClass
yWindowHeightSizeClass
ahora implementan objetos Comparable, de modo que se puedan comparar con los operadores (<, <=, >=, >) y otras APIs (I747d0).
Correcciones de errores
- Actualiza la muestra de la insignia para brindar una descripción más significativa del contenido (I10b9d).
- Se agregó la opción de usar el tamaño de la fuente del sistema al selector de temas del catálogo de Material 3 (I10605).
- Se agregó código de muestra para la insignia y los indicadores de progreso indeterminados (I8fbe0).
Versión 1.0.0-alpha13
1 de junio de 2022
Lanzamiento de androidx.compose.material3:material3:1.0.0-alpha13
y androidx.compose.material3:material3-window-size-class:1.0.0-alpha13
. La versión 1.0.0-alpha13 contiene estas confirmaciones.
Cambios en la API
- Se agregó compatibilidad para mantener la posición de la barra superior de la app durante el cambio de configuración (I10459, b/216160958).
Versión 1.0.0-alpha12
18 de mayo de 2022
Lanzamiento de androidx.compose.material3:material3:1.0.0-alpha12
y androidx.compose.material3:material3-window-size-class:1.0.0-alpha12
. La versión 1.0.0-alpha12 contiene estas confirmaciones.
Correcciones de errores
- El control deslizante superior ahora puede tener 0 anchos (b/231707291).
Versión 1.0.0-alpha11
11 de mayo de 2022
Lanzamiento de androidx.compose.material3:material3:1.0.0-alpha11
y androidx.compose.material3:material3-window-size-class:1.0.0-alpha11
. La versión 1.0.0-alpha11 contiene estas confirmaciones.
Nuevas funciones
- Se agregó
RangeSlider
a Material 3 (I18e38). - Se agregó compatibilidad con
AssistChip
yInputChip
de Material3 (I0d25a). - Se agregó compatibilidad con
FilterChip
ySuggestionChip
de Material3 (I9fdf3).
Cambios en la API
- Se cambió el nombre del elemento
TextFieldDefaults.BorderStroke
que admite composición y que dibuja un trazo de borde deOutlinedTextField
aTextFieldDefaults.BorderBox
(I5f295). - Se realizaron cambios visuales en m3 (Iab30e).
- Permite pasar colores a los botones de íconos estándar (Ia2445).
Correcciones de errores
- Se agregó una comprobación de lint a material3/Scaffold para garantizar que se use relleno (I72293, b/226951418).
Versión 1.0.0-alpha10
20 de abril de 2022
Lanzamiento de androidx.compose.material3:material3:1.0.0-alpha10
y androidx.compose.material3:material3-window-size-class:1.0.0-alpha10
. La versión 1.0.0-alpha10 contiene estas confirmaciones.
Nuevas funciones
material3-window-size-class
es una nueva biblioteca que proporciona compatibilidad con las clases de tamaño de ventana: un conjunto de puntos de interrupción de viewports bien definidos para que puedas diseñar, desarrollar y poner a prueba diseños de aplicaciones de tamaño variable. Puedes usarcalculateWindowSizeClass
para recuperar una instancia de la clase de tamaño de ventana, que puedes usar a fin de determinar la apariencia de tu IU, por ejemplo, si quieres mostrar un riel de navegación en lugar de una barra de navegación inferior para tamaños de ventana más grandes. Para obtener más información y un ejemplo de uso, consulta la documentación de referencia de la API paraWindowSizeClass
. Si quieres obtener más información sobre las definiciones de la clase de tamaño de ventana, consulta la guía pública sobre la compatibilidad con diferentes tamaños de pantalla.
Cambios en la API
- Se agregó la elevación predeterminada del BAF para
BottomAppBar
y se quitó la lambda al final deBottomAppBar
con el BAF (I92c47). - Se agregaron los elementos
FilledIconButton
,FilledTonalIconButton
yOutlinedIconButton
de Material3 (Ib2bda). - Se actualizó la API de la barra de notificaciones de Material 3 a fin de aceptar valores de color para la acción opcional y la acción de descarte (Ibe4b4).
- El consumo parcial (de posición abajo O) ya no está disponible en
PointerInputChange
. Puedes usarconsume()
para consumir el cambio por completo. También puedes usarisConsumed
para determinar si otra persona ya consumió el cambio. PointerInputChange::copy()
ahora siempre hace una copia superficial. Significa que se consumirán copias dePointerInputChange
una vez que se consuma una de las copias. Si quieres crear unaPointerInputChange
no vinculada, usa un constructor (Ie6be4, b/225669674).- Cambios en la API de Cards para recibir los colores del contenedor y el contenido a través de una interfaz
CardColors
. Además, se busca admitir un estado inhabilitado para tarjetas en las que se puede hacer clic (I927df). - Se cambió el nombre del parámetro
backgroundColor
acontainerColor
en los campos de texto de Material 3 para mejorar la coherencia con otros componentes (I6fbd9).
Correcciones de errores
- Se actualizó el elemento
IconButton
estándar para alinearlo con la especificación de Material 3 (I09eab). - Se movió la altura de la barra superior del andamiaje de Material 3 al relleno que se pasa al contenido, lo que permite que este último se procese debajo de la barra superior de la app. Si se ignora
PaddingValues
, es posible que la barra superior oculte el contenido (I83cbc, b/217776202).
Versión 1.0.0-alpha09
6 de abril de 2022
Lanzamiento de androidx.compose.material3:material3:1.0.0-alpha09
. La versión 1.0.0-alpha09 contiene estas confirmaciones.
Nuevas funciones
- Se agregó la API de Material 3 Switch. (I2c3ad)
Cambios en la API
- Se agregó compatibilidad con menús desplegables con campos de texto (también conocidos como "menús desplegables expuestos" o "cuadros combinados"). (I1b832)
- Se agregó el parámetro de forma al subsistema MaterialTheme y Shape. (I37426)
- Se agregó un parámetro expandido a
ExtendedFloatingActionButton
para controlar si el BAF está expandido o contraído, con animaciones entre cada estado. Se agregó la sobrecarga extendida del BAF para los BAF extendidos con texto final para ExtendedFAB sin ícono. (Iba7f1)
Versión 1.0.0-alpha08
23 de marzo de 2022
Lanzamiento de androidx.compose.material3:material3:1.0.0-alpha08
. La versión 1.0.0-alpha08 contiene estas confirmaciones.
Nuevas funciones
- Se agregó compatibilidad con los campos de texto de Material 3. (I795cc, b/199377790)
Cambios en la API
- Se agregó un divisor predeterminado para el menú. (I01374)
- Se agregó el parámetro de color
surfaceTint
a la claseColorScheme
. (I2f558)
Correcciones de errores
- Se corrigió en el botón de Material3 para leer su valor de estilo de texto predeterminado desde MaterialTheme. (Ie62fc)
Versión 1.0.0-alpha07
9 de marzo de 2022
Lanzamiento de androidx.compose.material3:material3:1.0.0-alpha07
. La versión 1.0.0-alpha07 contiene estas confirmaciones.
Cambios en la API
- Actualizaciones en la API de Material 3 que muestran las funciones sobrecargadas para las superficies en las que se puede hacer clic. Además, se agregó una función para admitir superficies seleccionables y que se pueden activar o desactivar (I4bf18).
LazyVerticalGrid
yLazyHorizontalGrid
ahora son estables (I307c0).LazyVerticalGrid/LazyHorizontalGrid
y todas las APIs relacionadas se movieron al subpaquete .grid. Actualiza tus importaciones de androidx.compose.foundation.lazy a androidx.compose.foundation.lazy.grid (I2d446).- Se revirtió el cambio anterior de depender solo de una View para
WindowInsetsControllerCompat
y, de nuevo, se requiere una Window, necesaria para administrar algunas marcas de ventana. Se dio de bajaViewCompat.getWindowInsetsController
y se reemplazó porWindowCompat.getInsetsController
para garantizar que se use la Window correcta (por ejemplo, si la View está en un diálogo) (I660ae, b/219572936). - Se agregó una nueva API de
LazyVerticalGrid
para definir tamaños de ejes cruzados (I17723).
Correcciones de errores
- Se realizaron actualizaciones en la API de Card para seguir los cambios en la API de Surface (I3c8b9).
Versión 1.0.0-alpha06
23 de febrero de 2022
Lanzamiento de androidx.compose.material3:material3:1.0.0-alpha06
. La versión 1.0.0-alpha06 contiene estas confirmaciones.
Cambios en la API
- Se agregó
NavigationDrawerItem
, que representa un solo destino dentro de los paneles laterales (Ic396f, b/218286829). - Se agregaron
PermanentNavigationDrawer
yDismissibleNavigationDrawer
como API experimentales. Son los paneles laterales adecuados para dispositivos con pantallas grandes (I5f8ab, b/218286829). - Se agregó compatibilidad con la barra de la app inferior de Material 3 (Ic432a).
- Se modificó el nombre de
NavigationDrawer
porModalNavigationDrawer
(I1807d, b/218286829). - Se agregaron tokens y clase del control deslizante de Material 3 (I1ccee).
- Se agregó la implementación de pestaña. Consulta la documentación para ver un ejemplo de cómo se usa (Ie0146).
Correcciones de errores
- Se solucionó un problema por el que la navegación lineal del lector de pantalla
TalkBack
seleccionaba un título vacío de la barra de la app superior (Id4690). - Se agregó
IconSize
aFloatingActionButtonDefaults
(Ia71cf). - Se corrigió un error de botones
AlertDialog
ocultos cuando se agregaba un texto largo conLazyColumn
(Ib2cc9, b/216663029).
Versión 1.0.0-alpha05
9 de febrero de 2022
Lanzamiento de androidx.compose.material3:material3:1.0.0-alpha05
. La versión 1.0.0-alpha05 contiene estas confirmaciones.
Nuevas funciones
Se agregaron componentes de Material Design 3.
- Menú desplegable
- Tarjetas
Cambios en la API
- Se dio de baja la función
Surface
que toma una devolución de llamada onClick. Las superficies en las que se puede hacer clic deben crearse con unaInteractionSource
y unModifier.clickable()
(I211c6). - Se agregó compatibilidad la con elevación enfocada y presionada de BAF (Ibb584).
- Se modificó la API de
Surface
para recibir una InteractionSource que permita controlar su apariencia en diferentes estados (Iafbc8).
Correcciones de errores
- Se agregaron los colores terciarios faltantes en los esquemas de colores dinámicos (I456c4, b/214588434).
Versión 1.0.0-alpha04
26 de enero de 2022
Lanzamiento de androidx.compose.material3:material3:1.0.0-alpha04
. La versión 1.0.0-alpha04 contiene estas confirmaciones.
Cambios en la API
- Se agregó
NonRestartableComposable
a los métodos que son sobrecargas de métodos existentes sin lógica compleja. De esta manera, se reducen las comprobaciones de memorización generadas por el compilador (es igual a) para todos los parámetros que se repiten en la función interna a la que se llama. (I90490) - Se agregó el divisor de Material 3. (Ica5fc)
- Marca Checkbox y RadioButton con una anotación de API experimental. (Ie44bb)
- Se agregó compatibilidad con los indicadores de progreso de Material 3. (Iff232, b/205023841)
Correcciones de errores
- Se actualizó un color inhabilitado del contenedor
TextButton's
para que sea transparente. (I6b248, b/213339737)
Versión 1.0.0-alpha03
12 de enero de 2022
Lanzamiento de androidx.compose.material3:material3:1.0.0-alpha03
. La versión 1.0.0-alpha03 contiene estas confirmaciones.
Correcciones de errores
- Se agregó
LocalIndication
aMaterialTheme
de Material 3. (I7ce4e) - Se corrigió el radio de esquina que se aplica a las casilla de verificación. (I38b03, b/175198975, b/202309440)
Actualizaciones de dependencias
- Ahora depende de Kotlin versión
1.6.10
.
Versión 1.0.0-alpha02
1 de diciembre de 2021
Lanzamiento de androidx.compose.material3:material3:1.0.0-alpha02
. La versión 1.0.0-alpha02 contiene estas confirmaciones.
Nuevas funciones
- Se agregó compatibilidad con la casilla de verificación y el botón de opción.
- Se actualizó para que sea compatible con Kotlin
1.6.0
.
Cambios en la API
- Se quitó el panel lateral del andamiaje de Material 3 (I04f51).
- Se agregó compatibilidad con
Checkbox
de Material 3 (Id5542). - Se agregó compatibilidad con
RadioButton
de Material 3 (I20334).
Correcciones de errores
- Se redujo el radio de las ondulaciones de
IconButton
de 40 dp a 20 dp (I68bbe, b/206674345). - La ruta de acceso rápida de la string de puerto para
Text
cambió desdecompose.material
(I30b03). - Se corrigió el elemento, pero ese botón codificado siempre aparecerá como habilitado (Iea832, b/205335456).
Versión 1.0.0-alpha01
27 de octubre de 2021
Lanzamiento de androidx.compose.material3:material3:1.0.0-alpha01
. La versión 1.0.0-alpha01 contiene estas confirmaciones.
Nuevas funciones
Temas de Material Design 3 y color dinámico de Material You
Componentes de Material Design 3
- Botones
- BAF y BAF extendido
- Diálogos
- Barra de navegación
- Panel lateral de navegación
- Riel de navegación
- Barra superior de la app
- Distintivo
- Ícono
- Texto
- Plataforma
- Diseño
- Color del contenido
Para más información, consulta la sección de Material Design 3 y Material You en la guía sobre temas de Material en Compose.