我做了一个申请。在这个应用程序中,我已经加载了一个tableView和一些文本,并在tableview中选择行加载另一个tableview,但在选择行时,应用程序在设备中崩溃。这一切都很好在模拟器中工作。 但在设备崩溃。 didselectedRowAtIndexPath
的示例代码- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
NSLog(@"%d",indexPath.row);
int k,i=0 ;
for (k = 1; k<=indexPath.row; k=k++) {
i = k * [appDeleg.tableData count];
}
NSMutableArray *tempArray = [[NSMutableArray alloc] init];
appDeleg.finalDeptPayment = tempArray;
[tempArray release];
for (int j=0; j<[appDeleg.tableData count]; j++) {
finalCalculationValue *objFinalValue = [[finalCalculationValue alloc] init];
NSDecimalNumber *dec = [[NSDecimalNumber alloc] initWithDouble:[[appDeleg.ArrRowPayments2 objectAtIndex:i+j] doubleValue]];
objFinalValue.DeptPayment = dec;
NSLog(@"%@",dec);
[appDeleg.finalDeptPayment addObject:objFinalValue];
}
if (objDeptDetail == nil) {
objDeptDetail = [[DeptAndPaymentdetail alloc] initWithNibName:@"DeptAndPaymentdetail" bundle:nil];
[self.navigationController pushViewController:objDeptDetail animated:YES];
[objDeptDetail release];
objDeptDetail = nil;
}
}
所以,请告诉我我做了什么?
答案 0 :(得分:2)
转到“目标”选项卡,查看应用程序的“可执行文件”组,然后双击它。出现的窗口将标题为“可执行'应用程序名称'信息”,其中将包含两个表,顶部标记为“要在启动时传递的参数:”底部标记为“要在其中设置的变量”环境:“
单击底部表的添加按钮,为新变量命名为“NSZombieEnabled”,值为“YES”。然后关闭窗口并运行您的应用程序(在模拟器或设备中。)
我的猜测是,现在应用程序将在两个环境中以异常退出,并在删除后告知您正在使用哪个对象。
有关详细信息:http://cocoa-nut.de/?p=16