2010-04-07 1 views
0

У меня есть ассоциативный массив, который я хочу отображать с помощью TileList. Однако он не понимает, что ему кормили. Все, что у меня есть, - [object] в TileList.Flex TileList с ассоциативным массивом

[bindable] 
public var people as array = new array(); 

private function loadArray():void{ 
people = decoded JSON array 
showPeople.dataProvider = people;} 

<mx:Tilelist id="showPeople" labelField="{data.name}" iconField="{data.imgURL}"/> 

Я попытался с помощью тх: itemRender, но это будет только делать один и только один элемент, то есть либо строка имени человека или образ URL. Конечная цель состоит в том, чтобы TileList показывал изображение человека, используя URL-адрес из массива вместе с их именем в качестве метки. Любое предложение?

И массив выглядит следующим образом «имя» => строка человека имя «IMG» => строки из Img URL

+0

Что значит [объект]? Вы уверены, что он правильно декодировал массив JSON? – CookieOfFortune

ответ

0

Вы должны использовать пользовательские средства визуализации элементов, как этот один:

<mx:itemRenderer> 
    <mx:Component> 
    <mx:HBox> 
     <mx:Text width="100" height="100" text="{data.name}"/> 
     <mx:Image width="100" height="100" source="{data.imgURL}"/> 
    </mx:HBox> 
    </mx:Component> 
</mx:itemRenderer> 

Таким образом, вы можете настроить список ваших вещей, как вы хотите.

+0

Когда я сказал [Объект], я имел в виду, что буквально он показывал слова «[Объект]» в панели, где находится Tilelist. Ответ Корнела работал отлично. – MooCow