результат объекта в arrayList - PullRequest
0 голосов
/ 27 ноября 2011
<lfm status="ok">
    <artists user="Ewout1" page="1" perPage="50" totalPages="36" total="1766">
        <artist>
        <name>Have Heart</name>
        <playcount>2582</playcount>
        <tagcount>0</tagcount>
        <mbid>e519e012-e1a3-4592-b3f6-5a16227ab654</mbid>
        <url>http://www.last.fm/music/Have+Heart</url>
        <streamable>1</streamable>
        <image size="small">http://userserve-ak.last.fm/serve/34/36974461.jpg</image>
        <image size="medium">http://userserve-ak.last.fm/serve/64/36974461.jpg</image>
        <image size="large">http://userserve-ak.last.fm/serve/126/36974461.jpg</image>
        <image size="extralarge">http://userserve-ak.last.fm/serve/252/36974461.jpg</image>
        <image size="mega">
    http://userserve-ak.last.fm/serve/_/36974461/Have+Heart+s+final+show+of+thei.jpg
        </image>
    </artist>
    ...
</lfm>

У меня есть httpservice, который возвращает этот xml-файл.То, что я хочу сделать, это поместить все имена художников в один Arraylist.Это мой код, но он не работает, и поиски мне не помогли.

private var arArtists:ArrayList;
arArtists = event.result.artists.artist.name;

1 Ответ

2 голосов
/ 28 ноября 2011

Как упомянуто в комментарии ToddBFisher, вам придется перебирать свой XMLList и добавлять каждый элемент в ArrayList.Списки XMLL наследуются непосредственно от базового объекта и не имеют прямого отношения наследования к спискам ArrayLists.

Этот блок будет работать, но он станет предметом спора в зависимости от размера вашего набора данных.

var list:ArrayList = new ArrayList();
var name:XML;

for each(name in xml.artists.artist.name)
{
    list.addItem(name);
}

Удачи!

...