Bonjour à tous,
J'aimerai faire une liste avec des images. Pour cela j'ai créé l'objet list sur ma page. Voici le code correspondant:
Le tableau "myArray" est peuplé d'objet "Item" qui est une classe que j'ai créé, voici le code:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 [Bindable] private var myArray:ArrayCollection; [...] <s:List dataProvider="{myArray}" width="100%" height="100%" itemRenderer="views.ItemLayout"/>
(Je n'ai pas recopié les get et set pour éviter de surcharger le topic inutilement)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 public class Item { private var _label:String; private var _bigPic:Image = new Image(); private var _smallPic:Image = new Image(); public function Item(rootImg:String, fileName:String, label:String) { this.label = label; smallPic.load(rootImg + "th/" + fileName); bigPic.load(rootImg + fileName); } }
Et pour finir voici le code de mon ItemRenderer:
Mon problème est que dans ma liste, les labels apparaissent, mais pas les images. Apparemment quelque chose se charge puisque les labels se séparent d'une distance égale à la taille de mes images. Le problème c'est que ça reste blanc...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 <s:ItemRenderer xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/halo"> <fx:Declarations> <!-- Place non-visual elements (e.g., services, value objects) here --> </fx:Declarations> <s:VGroup> <mx:Image data="{data.smallPic}"/> <s:Label text="{data.label}"/> </s:VGroup> </s:ItemRenderer>
Une idée ? J'ai passé toute la journée sans trouver.![]()
Partager