Créer des composants de façon dynamique

Bonjour,

J’ai une liste de joueurs, je souhaite créer une View avec un bouton par joueur qui soit organisée de la façon suivante :

VStack{
    HStack{
        ButtonJ1
        ButtonJ2
        ButtonJ3
    }
    HStack{
        ButtonJ4
        ButtonJ5
        ButtonJ6
    }
    etc...
}

Lorsque j’essaie d’utiliser une loop for j’obtiens l’erreur :
Closure containing control flow statement cannot be used with function builder 'ViewBuilder’
Et je ne comprend pas la signification.

Ou-dois je placer mes loops, ainsi que les conditions pour créer :

  • chaque HStack dans la VStack ?
  • chaque bouton dans les Hstack ?

Dans une fonction ?

Plutôt que d’utiliser des VStack et des HStack, utilise LazyVGrid, un nouveau composant d’XCode 12 permettant d’afficher une grille 2D d’éléments graphiques.

2 « J'aime »

Fabuleux, merci @Draken
C’est exactement ça !