容器未初始化时的事件传播

时间:2010-06-16 17:26:46

标签: flex events actionscript drag-and-drop

我有一个Canvas(我们称之为Drop Box),用户可以将外部文件拖放到其中。接下来我有一个ViewStack,其中一个层是带有TileList的Canvas。我已成功设法对其进行编码,以便丢弃到Drop Box上的项目出现在TileList中。我只是捕获darg drop事件(让我们调用这个事件A)并调度一个TileList正在侦听的新事件(让我们调用这个事件B)。

但是,这仅在ViewStack selectedIndex设置为带有TileList的Canvas的情况下才有效。如果未选择带有TileList的Canvas,则在调度拖放事件(事件B)之后才会调用添加到CreationComplete级别(事件B)的TileList的事件侦听器。这意味着在某些东西甚至有机会听之前就会发射一些东西!

我已经尝试循环,直到完全绘制了带有TileList的Canvas,但这会导致应用程序挂起。

我也尝试将事件传递给Canvas并将其存储在本地,但是当我尝试访问事件的剪贴板时,我收到错误(死剪贴板)。

实际上我想只在有机会加载后将事件调度到Canvas,并将事件监听器添加到TileList。

有什么想法吗? :)

1 个答案:

答案 0 :(得分:1)

为View Stack设置creationPolicy="all"会有帮助吗?它的所有孩子都将在创业时创建。