我有一个Alloy应用程序结构,一个窗口分为两个视图:左侧是侧边栏菜单视图,右侧是主视图。 每次用户单击侧栏中的其他菜单项时,我会删除附加到主视图的所有子项,并加载与该菜单项相关的视图/控制器并将其附加到主视图。我的问题:这还够吗?如果删除的视图将事件侦听器附加到其中的元素,它们是否也会清理? 我是否要保存对已实例化的每个控制器的引用,并在加载新视图/控制器之前调用controller.destroy()和controller.off(),或者不是必需的?
我问,因为没有窗口的视图无法将清理功能附加到“onclose”事件,因为UI.View元素不能“关闭”(仅限窗口)。
那么在Titanium中处理这种情况的正确方法是什么?
答案 0 :(得分:0)
事件侦听器可能会保留引用,尤其是您使用Ti.APP.addEventListeners添加它们。
因此,在删除所有子视图时,应手动删除事件侦听器。