0

我一直在使用 Flex 中的水平列表中的项目拖放。它工作正常,但现在我需要通过 AMF 将新订单保存在我的数据库中。我很确定这很容易,但我还没有弄清楚。

有没有办法循环(重新排序后)所有项目,以便我可以获得每个项目的(新)索引?

而且我注意到即使我改变了顺序,dataProvider中的顺序总是一样的......

这是我的清单:

<mx:HorizontalList id="horizontalList"
    allowMultipleSelection="true"
    allowDragSelection="true"
    dragEnabled="true"
    dropEnabled="true"
    dragMoveEnabled="true"
    labelField="lbl"
    iconField="src"
    itemRenderer="CustomItemRenderer_gallery"
    columnCount="5"
    columnWidth="125"
    rowHeight="125"
    horizontalScrollPolicy="on"
    doubleClickEnabled="true"
    click="{click(event);}"
    dragDrop="handleBtnReorder(event)"
    doubleClick="doubleClick(event);" />
4

1 回答 1

0

我只会循环遍历您将项目拖到的 Lists dataProvider ...同时循环将新订单 (i) 存储在 ArrayCollection 中填充 dataProvider 的变量中...然后将 ArrayCollection 转换为要传递给您的数组服务器端进行处理。

就像是:

for(var i:int = 0; i < yourList.dataprovider.length; i++)
{
     yourList.dataProvider.getItemAt(i).order = i;
}
// then convert the ArrayCollection to an Array and pass to your RemoteObject.
于 2009-12-17T22:24:44.370 回答