Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/42.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 应用程序与钛合金EXC#U崩溃(SIGABRT)崩溃';s表视图_Javascript_Iphone_Crash_Titanium - Fatal编程技术网

Javascript 应用程序与钛合金EXC#U崩溃(SIGABRT)崩溃';s表视图

Javascript 应用程序与钛合金EXC#U崩溃(SIGABRT)崩溃';s表视图,javascript,iphone,crash,titanium,Javascript,Iphone,Crash,Titanium,我使用的是Tianium 1.2.1,使用SDK 4.0编译到3.1.3版本的设备。此崩溃不会在模拟器中显示,而仅在设备上显示。 我有一个表格视图,列出了联系人列表。单击联系人姓名时,会打开一个新的重量级窗口(在不同的执行上下文中)。新窗口显示联系人的详细信息,如姓名和图片,然后向服务器发出ajax请求以填写所有其他详细信息 contactTableView.addEventListener('click', function(evt) { var contactWin = Ti.UI.

我使用的是Tianium 1.2.1,使用SDK 4.0编译到3.1.3版本的设备。此崩溃不会在模拟器中显示,而仅在设备上显示。 我有一个表格视图,列出了联系人列表。单击联系人姓名时,会打开一个新的重量级窗口(在不同的执行上下文中)。新窗口显示联系人的详细信息,如姓名和图片,然后向服务器发出ajax请求以填写所有其他详细信息

contactTableView.addEventListener('click', function(evt) { var contactWin = Ti.UI.createWindow({ url: "contacts_show.js", title: evt.rowData.title, backgroundColor: colors.window_bg_color, barColor: colors.topbar_bg_color }); contactWin.contact = evt.rowData.contact; Ti.UI.currentTab.open(contactWin, { animated: true }); }); contactTableView.addEventListener('click',函数(evt){ var contactWin=Ti.UI.createWindow({ 网址:“contacts_show.js”, 标题:evt.rowData.title, 背景颜色:colors.window\u bg\u color, barColor:colors.topbar\u bg\u颜色 }); contactWin.contact=evt.rowData.contact; 打开(contactWin,{animated:true}); }); 这通常适用于设备,除非您在联系人详细信息和联系人列表之间来回查看几次,否则它会崩溃

以下是崩溃日志:

从崩溃日志来看,当我来回走动时,它似乎达到了一个临界点,它决定需要杀死一个执行上下文以节省内存。但在这一点上,当它试图删除事件侦听器时,它看起来崩溃了。
我不认为我对事件的听众做了什么奇怪的事。有人知道我如何调试这个问题吗?提前谢谢。

我想好了。答案的简短版本是,我将addEventListeners放在多次包含的文件中。因此,包含eventlisteners的数组在执行上下文被破坏时被破坏,在被迭代时被变异。因此,SIGABORT

我将所有addEventListener调用移动到任何执行上下文的顶级窗口文件,并且从未将其放入任何包含的文件中