我有两个带项目的火花列表,启用了拖放功能(mxml应用程序,flash builder 4)。一切正常,我可以将项目从一个列表拖放到另一个列表。我一直在搜索,但我找不到它(可能是因为我使用了错误的关键字)。
假设我想在列表中更改项目时“处理”。所以
LIST 1 LIST 2
item1 item 2
item 3
当我将项目3拖到列表1时,它工作正常,但我该如何处理此事件?我想“保存”这些变化。我想在有“变化”时循环整个列表,但我不确定这是否正确。
有人可以给我更多建议或帮助我吗?
非常感谢! (如果已经提出这个问题,那就很抱歉)
答案 0 :(得分:3)
似乎Adobe有这个功能的一个很好的例子。 。 。见example of handling drag-drop。另请参阅this example of maintaining type info,如果这是问题。
答案 1 :(得分:3)
您可以通过收听活动CollectionEvent.COLLECTION_CHANGE
:
myList.dataProvider.addEventListener(CollectionEvent.COLLECTION_CHANGE, onCollectionChangeHandle);
每次进行更改时,都会触发event.kind == CollectionEventKind.*
(see here),因此您可以根据需要保存更改。
还可以通过收听DragEvent.DRAG_COMPLETE
事件:
myList.addEventListener(DragEvent.DRAG_COMPLETE, onDragCompleteHandle)
哪个event.dragSource
有数据被拖动。