Il vous est peut être arrivé de vouloir associer au sein d’un VBox un Repeater et d’autres éléments fixes.
Prenons l’exemple suivant :
<mx:VBox>
<mx:Repeater datasource="{monDataprovider}" id="maSource">
<mx:Text text="{maSource.currentItem.monTexte}" />
</mx:Repeater>
<mx:Text text="Texte placé après le repeater" />
</mx:VBox>
On doit donc voir tous les éléments du dataprovider « monDataProvider » à la suite, puis le texte « Texte placé après le repeater ». Mais que se passe t’il si le dataprovider évolue. Et bien on se retrouve avec le texte « Texte placé après le repeater » qui est avant les éléments du dataprovider.
Pour solutionner ce problème, il suffit de placer un VBox juste autour du repeater. Ainsi les seuls éléments qui se mettront à jour seront à l’intérieur d’un conteneur existant, et l’ordonnancement des éléments restera celui que vous avez décidé en écrivant votre mxml.
Mxml corrigé :
<mx:VBox>
<mx:VBox>
<mx:Repeater datasource="{monDataprovider}" id="maSource">
<mx:Text text="{maSource.currentItem.monTexte}" />
</mx:Repeater>
</mx:VBox>
<mx:Text text="Texte placé après le repeater" />
</mx:VBox>
Articles sur le même sujet :

Commentaires