Flex4中ArrayCollection的遍历方法

火光闪耀 2012-04-03 09:45:18
我最近在学习Flex,但是没有系统的学习过,看过的书中也没有关于ArrayCollection更详细的介绍。我现在用Flex写了几个前台页面,通过它和后天的java代码实现通讯。 我从后台java处返回页面的是一个List<User>。 User是一个对象,User中有(id,name,age)等很多属性。我现在要在前台中得到这些属性,请问应该怎么做?

我的部分代码如下:

protected function resultHandler(event:ResultEvent):void{
event.result //我看了不少东西,通过这个就能得到后台传来的值。 但是怎么遍历event.result呢?

}

小弟真诚在这里求解,希望大神能帮帮。先谢谢了。
...全文
884 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
yjflinchong 2012-04-23
  • 打赏
  • 举报
回复
for(var i:int=0;i<arr.length;i++){
var u:User = arr.getItemAt(i) as User;
}

flex3 这个可以。 试试吧。 我用flex3 的。 flex4 还没试过
hsit_wufl 2012-04-21
  • 打赏
  • 举报
回复
楼上非正解,不能直接转换成ArrayCollection
方法如下:
protected function resultHandler(event:ResultEvent):void{
var result:Array = event.result as Array;
var arr:ArrayCollection = new ArrayCollection ();
arr.souse = result;
for each (var user:Object in arr){
trace(user.id + " | " + user.name);
}
火光闪耀 2012-04-16
  • 打赏
  • 举报
回复
方法如下:
protected function resultHandler(event:ResultEvent):void{
var arr:ArrayCollection = event.result as ArrayCollection;
for(var i:int=0;i<arr.length;i++){
var u:User = arr.getItemAt(i) as User;
}

herowach 2012-04-05
  • 打赏
  • 举报
回复
你如果要直接拿到domain对象的list,需要用RemoteObject通讯,后台要配BlazeDS或LCDS,网上很多教程,你可以自己下个看看,其它方式无法返回对象的,只能返回基本类型,例如XML,字符串等
book_simmone 2012-04-04
  • 打赏
  • 举报
回复
Flex和后台有多种通讯的方式,不知你所用的是哪一种? RestfulService, AMF, Socket等。

最简单的是RestfulService,以你的例子来说,后台应该返回类似下面的一个XML:

<?xml version="1.0" encoding="utf-8"?>

<UserList>
<User>
<name>张三</name>
</User>
<User>
<name>李四</name>
</User>
</UserList>

然后Flex里面就用
var xml:XML = new XML(event.result);

var xmlList:XMLListCollection = new XMLListCollection(xml.UserList.User);

xmlList就可以作为DataSource遍历或展示UserList信息了。

4,327

社区成员

发帖
与我相关
我的任务
社区描述
多媒体/设计 Flex
社区管理员
  • Flex
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧