0

私はアプリを構築しています。最初のページには、ローカル xml から生成されたリストがあり、そのリストでルーム タイプを選択すると、選択したアイテムの下にノードがプッシュされます。タイトル ページ、ページ画像、およびその部屋の新しい製品リストから、その 2 ページ目の別のリストへ。

ページのタイトルとページの画像は素晴らしいですが、最初のページの最初のアイテム (room_name) からプッシュされているのは、「item_name」リストの最初のノードの製品リストだけです。

次のようなエラーが表示されます: この行に複数のマーカーがあります: -データ バインディングは、角かっこ演算子を使用すると変更を検出できません。配列の場合は、代わりに ArrayCollection.getItemAt() を使用してください。-行ブレークポイント: fob.mxml [行: 35]

その選択項目からそのアイテムに関する情報を含む 3 番目のページに情報をプッシュしたいので、これをもう一度処理することはわかっています。

最初のページは次のとおりです

        import mx.events.FlexEvent;

        import spark.events.IndexChangeEvent;

        protected function list_creationCompleteHandler(event:FlexEvent):void
        {
            getDataResult.token = macysmain.getData();
        }

        protected function list_changeHandler(event:IndexChangeEvent):void
        {
            navigator.pushView(fob, event.target.selectedItem);
        }

    ]]>
</fx:Script>
<fx:Declarations>
    <s:CallResponder id="getDataResult"/>
    <macysmain:Macysmain id="macysmain"/>
    <!-- Place non-visual elements (e.g., services, value objects) here -->
</fx:Declarations>
<s:Image left="10" right="10" top="10" height="40%" smooth="true" source="assets/visual merc.png"/>
<s:List id="list" left="10" right="10" bottom="10" height="55%"
        change="list_changeHandler(event)"
        creationComplete="list_creationCompleteHandler(event)" fontFamily="_sans" fontSize="35"
        labelField="room_name">
    <s:AsyncListView list="    {TypeUtility.convertToCollection(getDataResult.lastResult.room)}"/>
</s:List>
</s:View>`

2番目のページ(問題の行の周りに??? ???を置きます:

<?xml version="1.0" encoding="utf-8"?>
<s:View xmlns:fx="http://ns.adobe.com/mxml/2009"
    xmlns:s="library://ns.adobe.com/flex/spark"
    xmlns:macysmain="services.macysmain.*"
    title="{data.room_name}">

<fx:Script>
    <![CDATA[
        import com.adobe.serializers.utility.TypeUtility;

        import mx.events.FlexEvent;
        protected function button1_clickHandler(event:MouseEvent):void
        {
            navigator.popView();
        }

        protected function        list_creationCompleteHandler(event:FlexEvent):void
        {
            getDataResult.token = macysmain.getData();
        }

    ]]>
</fx:Script>

<fx:Declarations>
    <s:CallResponder id="getDataResult"/>
    <macysmain:Macysmain id="macysmain"/>
    <!-- Place non-visual elements (e.g., services, value objects) here -->
</fx:Declarations>
<s:actionContent>
    <s:Button label="Back" click="button1_clickHandler(event)"/>
</s:actionContent>
<s:List id="list" left="10" right="10" bottom="10" height="55%"
        creationComplete="list_creationCompleteHandler(event)" fontSize="35"
        labelField="item_name">
    ?????????<s:AsyncListView list="    {TypeUtility.convertToCollection(getDataResult.lastResult.room[0].item_list.item)}"/>?????????
</s:List>
<s:Image id="roompic" top="50" width="750" height="325" horizontalCenter="0" smooth="true"
         source="{data.room_image}"/>
</s:View>

私は非常に基本的なレベルです。どんな助けでも大歓迎です。

4

1 に答える 1

0

FlexBuilder については何も知りませんが、エラー メッセージに基づいて、面倒な行を次のように編集することをお勧めします。

<s:AsyncListView list="{TypeUtility.convertToCollection(getDataResult.lastResult.room.getItemAt(0).item_list.item)}"/>
于 2013-01-29T21:40:31.210 に答える