Actualités sur les produits

Material 3 Adaptive 1.2.0 est stable

Temps de lecture : 2 min
Rob Orgiu
Ingénieur en relations avec les développeurs

Nous sommes ravis d'annoncer que Material 3 Adaptive 1.2.0 est désormais stable.

Cette version s'appuie sur les bases des versions précédentes, en étendant la compatibilité à davantage de points d'arrêt pour les classes de taille de fenêtre et en proposant de nouvelles stratégies pour placer automatiquement les volets d'affichage.

Nouveautés de Material 3 Adaptive 1.2.0

Cette version stable s'appuie sur la compatibilité de WindowManager 1.5.0 avec les points d'arrêt de grande et très grande taille, et introduit les nouvelles stratégies de réorganisation et de superposition pour ListDetailPaneScaffold et SupportingPaneScaffold

Nouvelles classes de taille de fenêtre : grande et très grande

newwindow.png


WindowManager 1.5.0 a introduit deux nouveaux points d'arrêt pour la classe de taille de fenêtre en largeur afin de prendre en charge des fenêtres encore plus grandes que la classe de taille de fenêtre agrandie. Les points d'arrêt de grande taille (L) et de très grande taille (XL) peuvent être activés en ajoutant le paramètre suivant à l'appel currentWindowAdaptiveInfo() dans votre code :

currentWindowAdaptiveInfo(supportLargeAndXLargeWidth = true)

Cet indicateur permet à la bibliothèque de renvoyer également les points d'arrêt L et XL chaque fois qu'ils sont nécessaires.

Nouvelles stratégies adaptatives : réorganisation et superposition

L'organisation du contenu et des volets d'affichage dans une fenêtre est une tâche complexe qui doit prendre en compte de nombreux facteurs, à commencer par la taille de la fenêtre. Avec la nouvelle bibliothèque Material 3 Adaptive, deux nouvelles technologies peuvent vous aider à obtenir une mise en page adaptative avec un minimum d'efforts.

Avec la réorganisation , les volets sont réorganisés lorsque la taille ou le format de la fenêtre changent. Un deuxième volet est placé à côté du premier lorsque la fenêtre est suffisamment large, ou sous le premier volet lorsque la fenêtre est plus haute. Cette technique s'applique également lorsque la fenêtre devient plus petite : le contenu est réorganisé en bas.

material.jpg

Réorganisation d'un volet en fonction de la taille de la fenêtre

Bien que la réorganisation soit une option incroyable dans de nombreux cas, il peut arriver que le contenu doive être ancré sur un côté de la fenêtre ou superposé à celle-ci. La stratégie de superposition permet non seulement d'ancrer le contenu, mais aussi de personnaliser des fonctionnalités telles que la possibilité de faire glisser, de redimensionner et même le voile d'arrière-plan.


 

material2.jpg

Superposition d'un volet du côté au centre en fonction du format

Les stratégies de flux et de superposition peuvent être déclarées dans le constructeur Navigator à l'aide du paramètre adaptStrategies. Les deux stratégies peuvent être appliquées aux échafaudages scaffolds de liste-détail et de volet d'assistance :

val navigator = rememberListDetailPaneScaffoldNavigator<Nothing>(
        adaptStrategies = ListDetailPaneScaffoldDefaults.adaptStrategies(
            detailPaneAdaptStrategy = AdaptStrategy.Reflow(
                reflowUnder = ListDetailPaneScaffoldRole.List
            ),
            extraPaneAdaptStrategy = AdaptStrategy.Levitate(
                alignment = Alignment.Center
            )
        )
    )


 

Pour en savoir plus sur l'utilisation de ces nouvelles stratégies adaptatives, consultez le site Web Material et l'exemple de code complet sur GitHub.

Écrit par :

Lire la suite