有关于这个问题的多次讨论,但我要注意的情况是恕我直言,似乎不是那么清楚:闪存管理和ActionScript
是一般的规则是: 删除chachedAsBitmap 停止的动画片段,如果打 删除事件 删除引用 等
但让我们来看看:
第一个例子: 我有嵌套精灵(例如:mainSprite),它包含了其他精灵动态文本字段(并且被拼凑为位图),只是带有事件侦听器的textFileds和MovieClip(带有弱引用)。 当我需要删除这个精灵,我需要先通过循环来删除它的所有嵌套内容或只是
removeChild(mainSprite);
mainSprite=null;
只是还不够吗?
第二个例子: 我有一些精灵,我正在加载位图和使用bitmapData操作,后来我只是用另一个位图替换这个精灵的内容,为旧位图分配内存自动擦除并被覆盖或它仍然存在?
第三个示例: 我在舞台上添加了一些“动态数据”(并添加了事件侦听器),我有一些“图形模板”MovieClip(在库中带有用于Actionscript属性的Export集)它是应用程序的一个场景,在另一个场景中,我需要与其他动态数据相同的MovieClip,但是在两者之间需要清除舞台(需要类似图库MovieClip的过渡动画),最佳方法是:将此MovieClip设置为可见属性设置为false(转换动画播放时),然后重新使用它,或者只是使用removeChild删除它,然后再添加addChild时再添加?
我写的所有内容都是关于Air Mobile的,在大多数情况下,对于桌面而言,这些情况并不是那么有问题,但是在移动开发的情况下。
谢谢,很好的资源。 – gMirian 2012-03-09 03:56:20