Compose Material 3 Adaptive
Actualización más reciente | Versión estable | Versión potencial | Versión beta | Versión alfa |
---|---|---|---|---|
2 de julio de 2025 | 1.1.0 | - | - | 1.2.0-alpha08 |
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.adaptive:adaptive:1.2.0-alpha08" implementation "androidx.compose.material3.adaptive:adaptive-layout:1.2.0-alpha08" implementation "androidx.compose.material3.adaptive:adaptive-navigation:1.2.0-alpha08" }
Kotlin
dependencies { implementation("androidx.compose.material3.adaptive:adaptive:1.2.0-alpha08") implementation "androidx.compose.material3.adaptive:adaptive-layout:1.2.0-alpha08" implementation "androidx.compose.material3.adaptive:adaptive-navigation:1.2.0-alpha08" }
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 Material3 Adaptive, versión 1.2
Versión 1.2.0-alpha08
2 de julio de 2025
Lanzamiento de androidx.compose.material3.adaptive:adaptive-*:1.2.0-alpha08
. La versión 1.2.0-alpha08 contiene estas confirmaciones.
Versión 1.2.0-alpha07
18 de junio de 2025
Lanzamiento de androidx.compose.material3.adaptive:adaptive-*:1.2.0-alpha07
. La versión 1.2.0-alpha07 contiene estas confirmaciones.
Cambios en la API
- Haz que la función
currentWindowAdaptiveInfo()
admita clases de tamaño de ancho de ventana grandes y extragrandes, y promueve las funcionescalculatePosture()
ycurrentWindowDpSize()
a estables. (I92e97)
Versión 1.2.0-alpha06
20 de mayo de 2025
Lanzamiento de androidx.compose.material3.adaptive:adaptive-*:1.2.0-alpha06
. La versión 1.2.0-alpha06 contiene estas confirmaciones.
Nuevas funciones
- Las funciones de cálculo de la directiva de andamiaje del panel predeterminado ahora admiten las clases de tamaño de ancho de ventana L y XL.
Cambios en la API
- Haz que
Modifier.paneExpansionDraggable
proporcione semántica de accesibilidad predeterminada y promueve las APIs pertinentes a estables. (Idb818) - Se agregó compatibilidad con la función de arrastrar para cambiar el tamaño de los paneles flotantes (Idadd3).
- Se agregaron scrims de soporte para paneles elevados (I9b091).
Versión 1.2.0-alpha05
7 de mayo de 2025
Lanzamiento de androidx.compose.material3.adaptive:adaptive-*:1.2.0-alpha05
. La versión 1.2.0-alpha05 contiene estas confirmaciones.
Nuevas funciones
- Los diseños adaptativos de Material 3 ahora admiten estrategias de adaptación elevadas que pueden convertir un panel en una ventana emergente flotante.
Cambios en la API
- Hacer que las funciones de tamaño de ventana actual admitan varias plataformas (Ie4172)
- Se introdujeron movimientos de paneles para los paneles levitados (Ic9dc3).
- Se introduce la estrategia de levitación para la adaptación (I1ba7c).
Correcciones de errores
- Corrige el uso del alcance de corrutina en muestras adaptativas (7631016)
Versión 1.2.0-alpha04
23 de abril de 2025
Lanzamiento de androidx.compose.material3.adaptive:adaptive-*:1.2.0-alpha04
. La versión 1.2.0-alpha04 contiene estas confirmaciones.
Nuevas funciones
- Las estrategias de reajuste ahora están disponibles con
ListDetailPaneScaffold
ySupportingPaneScaffold
, que reajustan el panel asociado en un parámetro de configuración de diseño de panel único.
Cambios en la API
- Se agregó un objeto de retención de estado guardable a
PaneScaffoldScope
(Id9299). - Se introdujo una estrategia de reajuste para la adaptación (I75c6a).
Correcciones de errores
- Se corrigió el error por el que los paneles no se animaban en la primera transición. (Ib0415)
- Se corrigió un problema por el que no funcionaban las alturas preferidas. (I1913b)
- Se corrigió el error por el que la directiva de andamiaje no se actualizaba correctamente. (0403ab)
Versión 1.2.0-alpha03
9 de abril de 2025
Lanzamiento de androidx.compose.material3.adaptive:adaptive-*:1.2.0-alpha03
. La versión 1.2.0-alpha03 contiene estas confirmaciones.
Correcciones de errores
- Se corrigió el problema por el que el controlador de arrastre se mostraba de forma incorrecta en el diseño de un solo panel. (806e443 )
Actualizaciones de dependencias
- Esta biblioteca ahora tiene como objetivo el nivel de lenguaje Kotlin 2.0 y requiere KGP 2.0.0 o una versión posterior. (Idb6b5)
Versión 1.2.0-alpha02
26 de marzo de 2025
Lanzamiento de androidx.compose.material3.adaptive:adaptive-*:1.2.0-alpha02
. La versión 1.2.0-alpha02 contiene estas confirmaciones.
Versión 1.2.0-alpha01
12 de marzo de 2025
Lanzamiento de androidx.compose.material3.adaptive:adaptive-*:1.2.0-alpha01
. La versión 1.2.0-alpha01 contiene estas confirmaciones.
Cambios en la API
- Se introduce el modificador
PaneScaffoldScope.preferredHeight
para que los desarrolladores proporcionen las alturas preferidas del panel que se aplicarán con las nuevas estrategias de adaptación que presentaremos. (I957dd, b/220960090) - Se cambió el nombre de los tipos
ComponentOverride
aOverride
y de los tiposComponentOverrideContext
aOverrideScope
. (Id973c) - Se cambiaron los nombres de algunos métodos de anulación de componentes. (I222b3)
Compose Material3 Adaptive versión 1.1
Versión 1.1.0
12 de marzo de 2025
Lanzamiento de androidx.compose.material3.adaptive:adaptive-*:1.1.0
. La versión 1.1.0 contiene estas confirmaciones.
Cambios importantes desde 1.0.0
ListDetailPaneScaffold
ySupportingPaneScaffold
ahora admiten la función de expansión de paneles. Los usuarios pueden arrastrar para cambiar la división predeterminada de un diseño de doble panel, y los desarrolladores también pueden cambiar la división de paneles en el tiempo de ejecución modificando el nuevoPaneExpansionState
.- La compatibilidad predeterminada con el gesto atrás predictivo ahora está disponible con
NavigableListDetailPaneScaffold
yNavigableSupportingPaneScaffold
. También puedes usarThreePaneScaffoldPredictiveBackHandler
para proporcionar compatibilidad con el gesto de atrás predictivo con tus propias implementaciones de andamios de tres paneles. - Ahora puedes personalizar los movimientos del panel durante el cambio de panel proporcionando diferentes
EnterTransition
yExitTransition
aAnimatedPane
.
Versión 1.1.0-rc01
26 de febrero de 2025
Lanzamiento de androidx.compose.material3.adaptive:adaptive-*:1.1.0-rc01
. La versión 1.1.0-rc01 contiene estas confirmaciones.
Correcciones de errores
- Inhabilita el ajuste de escala de atrás predictivo del andamio de tres paneles (ab6fd0b).
Versión 1.1.0-beta02
12 de febrero de 2025
Lanzamiento de androidx.compose.material3.adaptive:adaptive-*:1.1.0-beta02
. La versión 1.1.0-beta02 contiene estas confirmaciones.
Cambios en la API
- Se cambió la forma en que se establece
isPredictiveBackInProgress
en las funciones de animaciónMutableThreePaneScaffoldState
para preservar la coherencia del estado. (Idc97f)
Correcciones de errores
- El comportamiento predeterminado de
NavigableListDetailPaneScaffold
yNavigableSupportingPaneScaffold
al presionar el botón Atrás se cambió aPopUntilScaffoldValueChange
para mantener la coherencia con el resto de la biblioteca. (I873f0) - Establece el orden de recorrido de accesibilidad correcto de los andamios del panel. (67d030)
- Se corrigió el problema por el que no se guardaban los estados del contenido del panel. (88b0ff)
- Admite acciones de accesibilidad alternativas en lugar de arrastrar. (28266d)
- Anuncia la división del panel actual después de que se cambie. (0c3a80)
Versión 1.1.0-beta01
29 de enero de 2025
Lanzamiento de androidx.compose.material3.adaptive:adaptive-*:1.1.0-beta01
. La versión 1.1.0-beta01 contiene estas confirmaciones.
Cambios en la API
- Se introducen funciones de fábrica para crear anclajes de expansión del panel del tipo de desplazamiento desde el inicio y el final, respectivamente. (I2eb21)
- Se selló la interfaz
PaneMotion
y se quitaron sus métodos de transición predeterminados. (Ifc4c7) - Se introdujeron APIs para obtener el ancla actual y animar hacia un ancla. (Icf95d)
- Se introdujeron APIs de accesibilidad para la expansión de paneles (Icc669).
- Cambia el tipo de
PaneScaffoldParentData.preferredWidth
a DP. (Id98ee)
Versión 1.1.0-alpha09
15 de enero de 2025
Lanzamiento de androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha09
. La versión 1.1.0-alpha09 contiene estas confirmaciones.
Cambios en la API
- Se agregó y se usa la nueva anotación experimental
ExperimentalMaterial3AdaptiveComponentOverrideApi
. (Id45aa) - Ocultar
ThreePaneScaffoldHorizontalOrder.toLtrOrder
(I6f8d2) ThreePaneScaffoldPredictiveBackHandler
se hizo público. (I1a995, b/370543873)- Se agregó la propiedad
isPredictiveBackInProgress
aThreePaneScaffoldState
. (I1a995, b/370543873) - Crea un mecanismo de anulación para
AnimatedPane
que admita implementaciones de carga lateral para diferentes factores de forma. (Id7622)
Correcciones de errores
- Se solucionó el problema que se producía cuando la dirección de asentamiento no tenía anclajes. (df8257d)
Versión 1.1.0-alpha08
12 de diciembre de 2024
Lanzamiento de androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha08
. La versión 1.1.0-alpha08 contiene estas confirmaciones.
Cambios en la API
- Se introdujo la función
currentWindowDpSize
. (I99125, b/296300441) - Se expusieron
PaneScaffoldParentData
yThreePaneScaffoldHorizontalOrder.toLtrOrder()
(I2d6b7). - Quita
PaneScaffoldMotionScope
y conviértelo en un campo debajo dePaneScaffoldTransitionScope
. También se cambió el nombre aPaneScaffoldMotionDataProvider
y se quitó el acceso a la estructura de datos subyacente de PaneMotionData. En su lugar, se proporcionan métodos de obtención y bucle para acceder a los datos. (Id8884) - Crea un mecanismo de anulación para
ThreePaneScaffold
que admita implementaciones de carga lateral para diferentes factores de forma. (I5280f) - El estado de expansión del panel ahora es nulo de forma predeterminada (Ia65f8, b/376394520).
Versión 1.1.0-alpha07
13 de noviembre de 2024
Lanzamiento de androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha07
. La versión 1.1.0-alpha07 contiene estas confirmaciones.
Cambios en la API
- Se quitó la implementación del controlador de arrastre en la biblioteca adaptable y se recomienda a los usuarios que utilicen la versión M3. Al mismo tiempo, se introduce un modificador para proporcionar la capacidad de arrastrar la expansión del panel a un elemento componible de controlador de arrastre proporcionado. También oculta
DraggableState
como un detalle de implementación para que podamos cambiarlo más adelante si es necesario. (Ib50cd) - Se mueve el punto de entrada de la personalización del movimiento del panel de las funciones de scaffold a
AnimatedPane
según los comentarios de UXR. (I10f72) - Se introdujo la compatibilidad con el gesto de deslizar y la especificación de animación personalizada para la expansión del panel. (Ie207d, b/362584341)
Correcciones de errores
- Se corrigieron problemas de atrás predictivo en la cancelación. (36a3e0a), (b/369899645)
Versión 1.1.0-alpha06
30 de octubre de 2024
Lanzamiento de androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha06
. La versión 1.1.0-alpha06 contiene estas confirmaciones.
Cambios en la API
- Se agregó
FloatRange
aPaneScaffoldTransitionScope.motionProgress
. (Iac0dd) - Cambia el tipo de parámetros del navegador a tipos genéricos en scaffolds navegables. (I1da6e)
Versión 1.1.0-alpha05
16 de octubre de 2024
Lanzamiento de androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha05
. La versión 1.1.0-alpha05 contiene estas confirmaciones.
Cambios en la API
- Se introdujo la clase de especificaciones de animación para garantizar un comportamiento de movimiento más coherente y una mayor capacidad de expansión en el futuro. (I2d3cc)
- Proporciona el tipo de movimiento y cambia el nombre de currentXXXXX en
PaneMotionData
a originXXXX. (I7c61a)
Versión 1.1.0-alpha04
2 de octubre de 2024
Lanzamiento de androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha04
. La versión 1.1.0-alpha04 contiene estas confirmaciones.
Nuevas funciones
- Se agregó compatibilidad con el gesto atrás predictivo a
NavigableListDetailPaneScaffold
yNavigableSupportingPaneScaffold
. (I4dc21, b/359616816)
Cambios en la API
- Se agregó
ThreePaneScaffoldState
aThreePaneScaffoldNavigator
Los métodos de navegación se hicieronsuspend
para admitir la navegación con animación. Se agregóseekBack
para admitir estados de navegación parciales (p.ej., atrás predictivo). (I5a651, b/359616816) - Se agregó
MutableThreePaneScaffoldState
para controlar la transición entre los valores de andamio. ElThreePaneScaffoldState
existente se configuró como de solo lectura. (Idb3c6) - Se exponen las implementaciones de movimiento del panel predeterminado (I95a7b).
- Se habilitó la configuración del anclaje inicial del estado de expansión del panel (Ie41b3, b/362350560).
Correcciones de errores
- Se aplicó el tamaño mínimo de destino táctil de 48 × 48 dp del controlador de arrastre (7ce6635, b/366018217).
- Se restablece la posición anclada después de los cambios de configuración (3c9fc6b, b/362353672).
Versión 1.1.0-alpha03
18 de septiembre de 2024
Lanzamiento de androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha03
. La versión 1.1.0-alpha03 contiene estas confirmaciones.
Versión 1.1.0-alpha02
4 de septiembre de 2024
Lanzamiento de androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha02
. La versión 1.1.0-alpha02 contiene estas confirmaciones.
Nuevas funciones
- La personalización de movimiento (I0bf9c), (I80e66) es compatible con los creadores para cambiar los movimientos predeterminados durante los cambios de estado del andamio adaptable. Los creadores pueden elegir entre un conjunto de transiciones de entrada y salida predeterminadas, o bien implementar transiciones personalizadas puras con la información proporcionada a través de los nuevos alcances de movimiento.
- Se implementó la animación de atenuación de los controladores de arrastre para expandir el panel (46e3c69).
- Se hizo que el
PaneExpansionState
recordado se pueda guardar (61ff76f).
Cambios en la API
- Se agregaron APIs de expansión de paneles faltantes a los elementos visuales básicos (Ic5bc0).
- Se cambió el nombre de
ThreePaneScaffoldDestinationItem.content
porcontentKey
. Los argumentos de tipo predeterminados derememberListDetailPaneScaffoldNavigator
yrememberSupportingPaneScaffoldNavigator
cambiaron deNothing
aAny
. (I58749) - Se marcó
ThreePaneScaffoldState
como estable (I64aec). - Se establecieron parámetros de identificador de arrastre con alcance (Ic0aa2).
Versión 1.1.0-alpha01
21 de agosto de 2024
Lanzamiento de androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha01
. La versión 1.1.0-alpha01 contiene estas confirmaciones.
Nuevas funciones
- Se agregó compatibilidad con la expansión del panel de los scaffolds adaptables.
Cambios en la API
- Se introdujeron APIs de expansión de paneles al público (I301d6).
- Se introdujo
ThreePaneScaffoldState
para controlar las transiciones de valores del panel. Se agregaron sobrecargas deListDetailPaneScaffold
ySupportingPaneScaffold
que aceptan este estado. (I5db3b) - Se introdujo la clave de expansión del panel y la interfaz del proveedor de claves (Id621f).
Correcciones de errores
- Se corrigió el cálculo incorrecto de la partición cuando hay una bisagra excluida. (9dfd483)
Compose Material3 Adaptive versión 1.0
Versión 1.0.0
4 de septiembre de 2024
Lanzamiento de androidx.compose.material3.adaptive:adaptive-*:1.0.0
. La versión 1.0.0 contiene estas confirmaciones.
Funciones principales de la versión 1.0.0
- Funciones componibles de una sola línea
currentWindowSize()
,collectFoldingFeaturesAsState()
ycurrentWindowAdaptiveInfo()
para obtener la información de la ventana necesaria para adaptar las apps, como los tamaños de la ventana y las funciones de plegado. ListDetailPaneScaffold
ySupportingPaneScaffold
para proporcionar dos diseños canónicos de Material 3 que se adaptarán automáticamente según las diferentes configuraciones de la ventana. Esos dos andamios también son completamente personalizables para satisfacer las diferentes necesidades de los creadores.ThreePaneScaffoldNavigator
y sus funciones de recordar relevantes,rememberListDetailPaneScaffoldNavigator()
yrememberSupportingPaneScaffoldNavigator()
, para proporcionar soluciones de navegación dentro de un andamio adaptable, que puede mostrar varios destinos de navegación al mismo tiempo, en comparación con la configuración común de un destino a la vez en el mundo no adaptable.- Animaciones predeterminadas y compiladas de Material 3 cuando se cambian los estados del andamio adaptable.
Versión 1.0.0-rc01
21 de agosto de 2024
Lanzamiento de androidx.compose.material3.adaptive:adaptive-*:1.0.0-rc01
. La versión 1.0.0-rc01 contiene estas confirmaciones.
Correcciones de errores
- Se corrigió el cálculo incorrecto de la partición cuando hay una bisagra excluida. (9dfd483)
Versión 1.0.0-beta04
26 de junio de 2024
Lanzamiento de androidx.compose.material3.adaptive:adaptive-*:1.0.0-beta04
. La versión 1.0.0-beta04 contiene estas confirmaciones.
Correcciones de errores
- Se corrigió el problema por el que, cuando se actualizaban los límites de la bisagra, el diseño no se actualizaba según correspondía. (71e9cf1)
Versión 1.0.0-beta03
12 de junio de 2024
Lanzamiento de androidx.compose.material3.adaptive:adaptive-*:1.0.0-beta03
. La versión 1.0.0-beta03 contiene estas confirmaciones.
Correcciones de errores
- Se corrigieron las fallas causadas por la resolución incorrecta de dependencias en la versión beta02.
Versión 1.0.0-beta02
29 de mayo de 2024
Lanzamiento de androidx.compose.material3.adaptive:adaptive-*:1.0.0-beta02
. La versión 1.0.0-beta02 contiene estas confirmaciones.
Versión 1.0.0-beta01
14 de mayo de 2024
Lanzamiento de androidx.compose.material3.adaptive:adaptive-*:1.0.0-beta01
. La versión 1.0.0-beta01 contiene estas confirmaciones.
Versión 1.0.0-alpha12
1 de mayo de 2024
Lanzamiento de androidx.compose.material3.adaptive:adaptive-*:1.0.0-alpha12
. La versión 1.0.0-alpha12 contiene estas confirmaciones.
Cambios en la API
- Se agregó información de
isFlat
aHingeInfo
(Ie0516, b/333784198). - Las APIs adaptativas ya no son experimentales (I1d038).
- Las APIs de diseño adaptable ya no son experimentales (Id23df).
- Se cambió
BackNavigationBehavior
de una enumeración a una clase de valor (Id8757)
Correcciones de errores
- Cambia la fracción de transición a una lambda (I6f5a9).
- Se corrigió el problema del estado inicial de
SizeTracker
(18326a9). - Incluye la lista de bisagras en la verificación de igualdad de
Posture
(6687137).
Versión 1.0.0-alpha11
17 de abril de 2024
Lanzamiento de androidx.compose.material3.adaptive:adaptive-*:1.0.0-alpha11
. La versión 1.0.0-alpha11 contiene estas confirmaciones.
Cambios en la API
- Haz que las interfaces de alcance sean selladas. (Iefa57)
- Se introdujo
AnimatedPaneScope
. (I62d73, b/332750742) - Haz que
AdaptStrategy
sea sellado y estable. (Ia28b2) - Se introduce un método de copia de
PaneScaffoldDirective
. (I9291f) - Se marcó
ThreePaneScaffoldScope
como experimental. (I9d527) - Proporciona APIs de andamiaje fáciles de usar que admitan la navegación. (I263f0, b/321010778)
Versión 1.0.0-alpha10
3 de abril de 2024
Lanzamiento de androidx.compose.material3.adaptive:adaptive-*:1.0.0-alpha10
. La versión 1.0.0-alpha10 contiene estas confirmaciones.
Cambios en la API
- Haz que el ancho preferido predeterminado sea adaptable y personalizable. (Ic3abc)
- Se cambió el nombre de las funciones de cálculo de la directiva de andamio. (I10855)
- Se quitaron los rellenos y las inserciones de las APIs de andamiaje. (I786f8)
- Se agregaron métodos de recordar el navegador sin tipos genéricos. (I607c3)
Versión 1.0.0-alpha09
20 de marzo de 2024
Lanzamiento de androidx.compose.material3.adaptive:adaptive-*:1.0.0-alpha09
. La versión 1.0.0-alpha09 contiene estas confirmaciones.
Cambios en la API
- Agrega campos de transición de estado a
ThreePaneScaffoldScope
. (I3d917) - Se reordenaron los parámetros del andamio. (I4dff5)
- Proporciona el valor predeterminado del parámetro del modificador
AnimatedPane
. (I77dd7)
Correcciones de errores
- Incluye el tamaño del separador en los movimientos del panel. (a3174ca)
Versión 1.0.0-alpha08
6 de marzo de 2024
Lanzamiento de androidx.compose.material3.adaptive:adaptive-*:1.0.0-alpha08
. La versión 1.0.0-alpha08 contiene estas confirmaciones.
Nuevas funciones
- Implementa el deslizamiento retrasado cuando se cambian los paneles. (I1a38e)
Cambios en la API
- Se quitó la interfaz
ThreePaneScaffoldState
. (I63f23)
Versión 1.0.0-alpha07
21 de febrero de 2024