【发布时间】:2013-12-21 05:00:41
【问题描述】:
好的,这是一件奇怪的事情:
我有一个类,它是一个有 2 个孩子的 MovieClip,还有 MovieClips。
我将孩子添加到他身上,并将 MovieClip 放置在舞台上。其中一个孩子是动画的。
一切都很完美。
现在,当我在孩子身上添加 MouseEvent.MOUSE_UP 时,一切正常。
然而,如果我将 useWeakReference 设置为 true(第 5 个参数)鼠标事件不再触发,但这些项目在舞台上。基本上,不知何故,它们不在内存中。
当然,如果我添加一个对基本 MovieClip 没有任何作用的简单 onEnterFrame,它会跟踪 MovieClip,但不会触发 MouseEvents。这意味着对象仍然存在,但不知何故对于 flash 不存在
现在,这是一个简化的概念,很容易清理,但我的代码非常大,简单的 removeEventListener 不是解决方案。至少不是一个简单的问题。
您对解决此问题有何建议?
【问题讨论】:
标签: actionscript-3 memory-leaks garbage-collection mouseevent weak-references