0

在钛手机中,我正在创建一个游戏。一级之后,我想删除与一级相关的所有部分,并创建二级。我怎样才能做到这一点,同时确保第一级也从内存中删除。

我正在这样做,但我不知道视图是否仍在占用内存。

myView = Titanium.UI.createView()
view.remove(myView)
4

1 回答 1

1

是和不是。这取决于您的应用程序中是否仍引用您的 javascript 上下文。

执行 view.remove(myView) 时,您只是从视图“渲染堆栈”中删除 myView ...它将不再显示在视图中...但是,对象本身仍然存在于它所在的 javascript 上下文中被声明/初始化。您可以通过在删除语句之前和之后打印 myView 来检查这一点。

如果您还可以保证,在您的应用程序的任何地方都不再引用相同的上下文,那么垃圾收集器将丢弃并释放该对象的内存。

于 2012-12-16T00:46:08.847 回答