Utiliser Space et GridLayout avant Android 4 (ICS)

La vue Space et le layout GridLayout ont été rajoutés dans Android 4 (Ice Cream Sandwich) :

  • Space permet d'ajouter un emplacement vide dans un écran Android.
  • GridLayout permet d'organiser les éléments d'un écran en se basant sur une grille.

Mais comment faire pour utiliser ces 2 composants si vous devez développer pour une version plus ancienne d'Android ?

Il existe bien une librairie de compatibilité développée par google pour porter certaines fonctionnalités introduites dans ICS vers des versions plus anciennes. Le problème est que celle-ci ne contient pas Space et GridLayout.

Heureusement, Daniel Lew s'est chargé de porter ces 2 composants. Ce projet s'appelle android-layout et vous pouvez récupérer ses sources sur github. Comme indiqué dans le readme du projet (voir partie "Caveats"), le seul inconvénient est l'impossibilité de gérer automatiquement le changement de visibilité des vues filles du GridLayout (c'est sûrement pour cette raison que google n'a pas intégré le composant dans la librairie de compatibilité).