AccueilActualités informatiqueDéveloppement mobile : la boîte à outils UI Jetpack Compose agrandit la...

Développement mobile : la boîte à outils UI Jetpack Compose agrandit la zone tactile

Six mois après la première version stable de Jetpack Compose, la version 1.1 de la boîte à outils UI est maintenant disponible. Elle adapte automatiquement les éléments tactiles aux exigences d’accessibilité des directives de conception de matériel. En outre, un cache pour les objets graphiques vectoriels devrait améliorer la performance des applications.

Google a publié Jetpack Compose fin juillet 2021 dans la version stable 1.0. La boîte à outils UI pour Android adopte une approche déclarative et mise sur le langage de programmation Kotlin ainsi que sur un modèle de programmation réactif. Les fonctions dites composables définissent les différents éléments de commande – ou des parties de ceux-ci. Avec @Composable les fonctions décorées peuvent être imbriquées les unes dans les autres pour créer finalement l’interface. Le code décrit l’aspect de base de l’interface et, sous le capot, le toolkit s’occupe de la mise en œuvre dans l’arborescence de l’IU et de la mise à jour des contenus.

Sommaire

Le Material Design promu par Google propose quelques directives pour l’utilisation accessible des interfaces. Parmi celles-ci, les éléments tactiles doivent comporter au moins 48 x 48 pixels indépendants de densité (dp). Le dp est une unité de taille dans Android qui a pour base un pixel sur un écran de résolution moyenne. Selon les indications des directives de conception, 48 dp correspondent à environ 9 millimètres.

La taille spécifiée ne concerne que la zone de saisie, et l’élément graphique peut tout à fait être plus petit. Jetpack Compose applique depuis peu les directives minimales et agrandit automatiquement les éléments définis avec des zones plus petites.

Jetpack Compose 1.1 agrandit entre autres les distances des boutons radio lorsque les tailles ne correspondent pas aux spécifications du Material Design. A gauche, on peut voir la mise en œuvre dans Compose 1.0 et à droite dans la version 1.1.

(Image : Google)

Si cette nouveauté pose des problèmes avec certaines mises en page, il est possible d’utiliser une porte dérobée en modifiant le paramètre LocalMinimumTouchTargetEnforcement sur false mettre en place.

Une autre nouveauté fondamentale est le cache pour les objets graphiques vectoriels. Le site painterResource-API met désormais en cache les instances de ImageVector-qui sont associés à un ID de ressource et à un thème. Les API pour le traitement des vecteurs rememberVectorPainter, VectorProperty, VectorConfig et RenderVectorGroupqui étaient jusqu’à présent considérés comme expérimentaux, atteignent un niveau stable dans Compose 1.1.

Il en va de même pour les API d’animation EnterTransition, ExitTransition et quelques parties de l’API de AnimatedVisibility. Pour les animations, il existe en outre un complément signalé dans un premier temps comme expérimental : AnimatedContent peut désormais être utilisé en combinaison avec rememberSaveable et de les restaurer. La nouvelle API est également marquée comme expérimentale. BringIntoViewqui demande aux éléments parents de défiler pour amener un élément dans la zone visible.

D’autres nouveautés peuvent être trouvées sur le blog de Google Developers. Jetpack Compose 1.1 nécessite la dernière version de Kotlin 1.6.10, qui a été publiée en décembre comme version de correction de bugs pour Kotlin 1.6. Dans la documentation de Jetpack, on trouve un tableau de compatibilité pour les versions de Kotlin correspondant à Compose. Entre-temps, la boîte à outils UI vise également les smartwatches : récemment, Google a publié Glance, un framework pour la création de tuiles pour Wear OS avec Jetpack Compose.

Plus d'articles