啃骨头的喵咪 2009-06-12 06:56
浏览 179
已采纳

关于将XML数据转为ArrayCollection的问题

在我的XML文件中

<report>
    <daily_incomes>
        <daily_income>
            <date>2009-06-11</date>
            <income>100</income>
        </daily_income>
    </daily_incomes>
</report>
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">

<mx:Script>
<![CDATA[
import mx.collections.ArrayCollection;
import mx.rpc.events.ResultEvent;
[Bindable]
private var showData:ArrayCollection;
private function show(event:ResultEvent):void {
    showData = event.result.report.daily_incomes.daily_income;
}
]]>
</mx:Script>
    
    <mx:HTTPService id="myService" url="http://localhost:3000/ex.xml" result="show(event)"/>
    </mx:Text>
    <mx:Button click="myService.send()" x="10" y="-2" label="Button"/>
    <mx:List x="10" y="28" dataProvider="{showData}"></mx:List>
</mx:Application>

daily_income想作为Arraycollection的一个元素被传入,但是这样是转化不了的.

不过把daily_income的个数改为超过一个就可以了:

<report>
    <daily_incomes>
        <daily_income>
            <date>2009-06-11</date>
            <income>0</income>
        </daily_income>
        <daily_income>
            <date>2009-06-12</date>
            <income>1</income>
        </daily_income>
    </daily_incomes>
</report>

请问如何让xml数组里,只有一个值时Flax也能转为ArrayCollection

 

 

展开全部

  • 写回答

3条回答 默认 最新

  • ywbanm 2009-06-12 07:25
    关注

    其实就是加一个判断,按你的xml改了下:

    [code="js"]if(event.result.report.daily_incomes.daily_income is ObjectProxy)

    {

    showData.addItem(event.result.report.daily_incomes.daily_income);

    }

    else

    {

    showData = event.result.report.daily_incomes.daily_income;

    } [/code]

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)
编辑
预览

报告相同问题?

手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部