【发布时间】:2012-04-09 09:48:30
【问题描述】:
我对钛几乎没有经验。基本上我需要与git 或示例钛工作室中提供的演示版本相同的主/详细应用程序
这是我认为有泄漏的部分
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();
});
逻辑上每次点击表格行时,都应该创建一个详细视图,并在按下后退按钮时销毁。但正如在 android 设备上测试的那样……每次点击这个应用程序所占用的 tableview 内存都会增加。我认为钛每次都会采用新的细节视图,但不会破坏在后端继续运行的旧视图。 请告诉我这是一个错误还是我弄错了什么。
【问题讨论】:
-
你不能在活动外创建一个窗口并在活动内创建/添加详细视图吗?
-
@Muhammad Zeeshan 是的,我已经尝试过了。因为每次都使用相同的窗口非常棒。但它给了我另一种奇怪的行为。它第一次运行,但从下一次开始显示空白窗口。如果我们将警报放在处理事件中。它触发了警报,但应用程序仍然是空白的。
-
您是否在返回按钮事件时关闭窗口?
-
不,我只使用了示例应用程序代码。没有返回按钮事件代码。
标签: memory-leaks titanium master-detail