當選擇一個表格單元格時,我將碰到一個EXC_BAD_ADDRESS
崩潰,該單元格應該在導航控制器上推送一個新視圖。選擇UITableView單元格時發生奇怪的崩潰
這裏是堆棧跟蹤(在CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION_
是永遠存在的):
alt text http://dl.dropbox.com/u/71415/crash_threads.jpg
我強烈懷疑新的代碼我已經添加加載初始數據在一個單獨的線程應用程序的需求,一方面是因爲新視圖控制器的init
和loadView
正在調用並返回正常。我在applicationDidFinishLaunching
中執行[NSThread detachNewThreadSelector:@selector(loadData) toTarget:self withObject:nil];
,然後加載顯示進度指示器的視圖。當數據準備好時,loadData
執行[self performSelectorOnMainThread:@selector(setupMainUI) withObject:nil waitUntilDone:NO];
。 UI(表格和全部)加載正常,新的數據顯示很好;只有在推出新視圖時纔會發生崩潰。通過選項卡控制器切換視圖也很好。
想法? 謝謝。
更新:
這是我在做什麼來加載新的視圖控制器:
NSArray *arrayForSection = [filteredGobos objectAtIndex:indexPath.section];
Employee *selectedEmployee = [arrayForSection objectAtIndex:indexPath.row];
if (self.employeeVC == nil) {
EmployeeVC *emplVC = [[EmployeeVC alloc] initWithEmployee:selectedEmployee];
self.employeeVC = emplVC;
}
[self.navigationController pushViewController:employeeVC animated:YES];
顯示您創建並推送新視圖的一些代碼。 EXC_BAD_ADDRESS意味着你正在嘗試訪問不存在的內容。 – lukya 2010-08-04 04:59:52