Memory leaks 主/细节演示应用程序中的钛内存泄漏

Memory leaks 主/细节演示应用程序中的钛内存泄漏,memory-leaks,titanium,master-detail,Memory Leaks,Titanium,Master Detail,我对钛几乎没有经验。基本上,我需要的主/详细应用程序相同的演示版本,可在或在样品钛 这是我认为有漏洞的部分 masterView.addEventListener('itemSelected', function(e) { //create detail view container var detailView = new DetailView(); var detailContainerWindow = Ti.UI.createWindow({ title:'

我对钛几乎没有经验。基本上,我需要的主/详细应用程序相同的演示版本,可在或在样品钛

这是我认为有漏洞的部分

masterView.addEventListener('itemSelected', function(e) {
    //create detail view container
    var detailView = new DetailView();
    var detailContainerWindow = Ti.UI.createWindow({
    title:'Product Details',
    navBarHidden:false,
    backgroundColor:'#ffffff'
    });
    detailContainerWindow.add(detailView);
    detailView.fireEvent('itemSelected',e);
    detailContainerWindow.open();
});
从逻辑上讲,每次单击表行时,都应该创建一个detailview,并在按下后退按钮时销毁。但正如在android设备上测试的那样。。每次单击tableview时,此应用程序占用的内存都会增加。我认为Tianium每次都会使用新的detailview,但不会破坏一直在后端运行的旧detailview。
请告诉我是虫子还是我弄错了什么

我已经找到了解决我所有内存问题的方法:

var memPool = Ti.UI.createWindow();
memPool.open();
memPool.hide();
memPool.add(yourTrashView);    
memPool.close();
解释如下:


你不能在活动外部创建一个窗口,并在活动内部创建/添加详细视图吗?@Muhammad Zeeshan是的,我已经尝试过了。因为每次使用同一个窗口都很棒。但它给了我另一种奇怪的行为。。它是第一次运行,但从下一次显示空白窗口。如果我们在处理事件时发出警报。它触发了警报,但应用程序仍然为空。是否关闭“后退”按钮事件窗口?否,我只使用了示例应用程序代码。没有后退按钮事件代码。嘿,迈克,谢谢你的回答。。我以前看过这个链接。。我需要打开两个窗口,这两个窗口将在事件发生时互相交换焦点。在交换时,显示新资源的模拟器正在加载,我认为这是内存增加的真正原因。最终得到的解决方案包括应用程序中的延迟。。希望它能在新的mobilesdk版本中解决。我在同样的情况下使用这个解决方案(在detailView中有一些Web视图),我没有延迟问题。我想你应该试试。