Compose Material 3 adaptable

  
Usa la biblioteca adaptable de Material 3 para crear IU adaptables que se adapten automáticamente según la configuración actual de la ventana, como las clases de tamaño de ventana o las posiciones del dispositivo. La biblioteca proporciona implementaciones predeterminadas de andamios y elementos componibles de los componentes básicos necesarios para crear tus propias experiencias personalizadas.
Actualización más reciente Versión estable Versión potencial Versión beta Versión alfa
12 de diciembre de 2024 1.0.0 - - 1.1.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.1.0-alpha02"
    implementation "androidx.compose.material3.adaptive:adaptive-layout:1.1.0-alpha02"
    implementation "androidx.compose.material3.adaptive:adaptive-navigation:1.1.0-alpha02"
}

Kotlin

dependencies {
    implementation("androidx.compose.material3.adaptive:adaptive:1.1.0-alpha02")
    implementation "androidx.compose.material3.adaptive:adaptive-layout:1.1.0-alpha02"
    implementation "androidx.compose.material3.adaptive:adaptive-navigation:1.1.0-alpha02"
}

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.

Crear un error nuevo

Consulta la documentación sobre la Herramienta de seguimiento de errores para obtener más información.

Compose Material3 Adaptive versión 1.1

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 y ThreePaneScaffoldHorizontalOrder.toLtrOrder() (I2d6b7).
  • Quita PaneScaffoldMotionScope y conviértelo en un campo debajo de PaneScaffoldTransitionScope. Cambia también el nombre a PaneScaffoldMotionDataProvider y quita el acceso a la estructura de datos subyacente de PaneMotionData. En su lugar, proporciona métodos de obtención y bucle para acceder a los datos. (Id8884)
  • Crea un mecanismo de anulación para ThreePaneScaffold para admitir implementaciones de sideloading para diferentes factores de forma. (I5280f)
  • Se hace que el estado de expansión del panel sea 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 control de arrastre en la biblioteca adaptable y se recomienda a los usuarios que usen la versión M3. Y, al mismo tiempo, se introduce un modificador para proporcionar la capacidad de arrastrar la expansión del panel a un elemento componible de control 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 del andamiaje a AnimatedPane según los comentarios de UXR. (I10f72).
  • Se agregó compatibilidad con el deslizamiento y la especificación de animación personalizada para la expansión del panel. (Ie207d, b/362584341).

Correcciones de errores

  • Se corrigieron los problemas de retroceso 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 a PaneScaffoldTransitionScope.motionProgress. (Iac0dd).
  • Cambia el tipo de parámetros del navegador a tipos genéricos en andamios 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 futura capacidad de expansión. (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 y NavigableSupportingPaneScaffold. (I4dc21, b/359616816).

Cambios en la API

  • Se agregó ThreePaneScaffoldState a ThreePaneScaffoldNavigator Los métodos de navegación se convirtieron en suspend 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 del andamiaje. El ThreePaneScaffoldState existente se convirtió en de solo lectura. (Idb3c6).
  • Se expusieron las implementaciones predeterminadas de movimiento de panel (I95a7b).
  • Se habilitó la configuración del ancla inicial del estado de expansión del panel (Ie41b3, b/362350560).

Correcciones de errores

  • Se aplicó el tamaño mínimo del objetivo táctil de 48 x 48 dp del control 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 movimientos (I0bf9c), (I80e66) es compatible para que los creadores cambien los movimientos predeterminados durante los cambios de estado del andamiaje adaptable. Los creadores pueden elegir entre un conjunto de transiciones de entrada y salida predeterminadas, o bien implementar transiciones completamente personalizadas con la información proporcionada a través de nuevos alcances de movimiento.
  • Se implementó la animación de atenuación de los controladores de arrastre de expansión del panel (46e3c69).
  • Se hizo que se pueda guardar el PaneExpansionState recordado (61ff76f).

Cambios en la API

  • Se agregaron las APIs de expansión de paneles faltantes a los andamios (Ic5bc0).
  • Se cambió el nombre de ThreePaneScaffoldDestinationItem.content por contentKey. El argumento de tipo predeterminado de rememberListDetailPaneScaffoldNavigator y rememberSupportingPaneScaffoldNavigator cambió de Nothing a Any. (I58749).
  • Se marcó ThreePaneScaffoldState como estable (I64aec).
  • Se hizo que los parámetros del control de arrastre tengan 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 de paneles de andamios adaptables.

Cambios en la API

  • Se presentaron las APIs de expansión de paneles al público (I301d6).
  • Se introdujo ThreePaneScaffoldState para controlar las transiciones de valor del panel. Se agregaron sobrecargas de ListDetailPaneScaffold y SupportingPaneScaffold que aceptan este estado. (I5db3b).
  • Se agregó 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 se presenta la bisagra excluida. (9dfd483).

Compose Material3 versión adaptable 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

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 se presenta la 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 solucionó el problema por el que, cuando se actualizaban los límites de bisagra, el diseño no se actualizaba de manera acorde. (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 una resolución de dependencias incorrecta 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 a HingeInfo (Ie0516, b/333784198).
  • Se hicieron no experimentales las APIs de adaptación (I1d038).
  • Se hicieron no experimentales las APIs de diseño adaptable (Id23df).
  • Se cambió BackNavigationBehavior de una enumeración a una clase de valor (Id8757).

Correcciones de errores

  • Se cambió la fracción de transición a una lambda (I6f5a9).
  • Se solucionó el problema de estado inicial de SizeTracker (18326a9).
  • Se incluye la lista de bisagras en la verificación de igualdad 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

  • Se deben sellar las interfaces de alcance. (Iefa57).
  • Ingresa AnimatedPaneScope. (I62d73, b/332750742).
  • Haz que AdaptStrategy esté sellado y sea estable. (Ia28b2).
  • Introduce un método de copia de PaneScaffoldDirective. (I9291f).
  • Marca 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

  • Se hizo que el ancho preferido predeterminado sea adaptable y personalizable. (Ic3abc).
  • Se cambiaron los nombres de las funciones de cálculo de la directiva de andamiaje. (I10855).
  • Se quitaron los rellenos y los rellenos de las APIs de andamiaje. (I786f8).
  • Se agregaron métodos de recuerdo del 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).
  • Reordena los parámetros del andamiaje. (I4dff5).
  • Proporciona el valor predeterminado del parámetro modificador AnimatedPane. (I77dd7).

Correcciones de errores

  • Se incluye el tamaño del separador en los movimientos de 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 cambia de panel. (I1a38e).

Cambios en la API

  • Se quitó la interfaz ThreePaneScaffoldState. (I63f23).

Versión 1.0.0-alpha07

21 de febrero de 2024