在 Android 上的 AS3 中,从性能的角度来看,将鼠标事件侦听器附加到单个精灵而不是舞台上是否很糟糕?
我正在使用 Flash Builder 中的 AS3 为 Android 手机编写应用程序。该应用程序具有多个响应用户触摸的屏幕。屏幕按层次结构排列并显示列表数据,因此当您单击列表中的项目时,您会看到一个带有新子列表的新屏幕。
我一直在使用事件侦听器来检测鼠标/触摸输入,并且根据我读到的内容表明,如果您将正在收听的对象数量保持在最低限度,性能会好得多我已将鼠标侦听器从每个屏幕附加到舞台对象。
这一切都很好,但我发现当我在屏幕之间移动时(并且它们被弹出或推送到显示堆栈上),我必须跟踪大量添加和删除舞台对象的监听器。如果我不这样做,那么层次结构比当前屏幕更高的窗口会继续接收鼠标事件。
如果我在每个窗口中使用附加到精灵的侦听器,那么当窗口从显示器中删除时,即使它保存在内存中(准备在子窗口关闭时弹出),它也不会收到任何鼠标事件...... .
使用我的 HTC 手机进行测试时,直接在精灵上使用监听器似乎不会影响性能,但我显然不知道在其他手机上会是什么样子。有没有人有任何经验或对最佳方法的看法?