2011-02-15 7 views
0

하나의 응용 프로그램을 만들었습니다. 이 응용 프로그램에서 하나의 tableView로드 일부 텍스트 및 select tableview 행에서 다른 tableview로드 할 선택한 행 시간에 응용 프로그램에서 장치에 충돌합니다. 이 모든 것이 시뮬레이터에서 잘 작동합니다. 하지만 장치가 손상되었습니다. 장치의 응용 프로그램 충돌

- (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; 
    }  
} 

didselectedRowAtIndexPath

에서 샘플 코드는 그래서, pls는 내가 무엇을 말해?

+2

디버거가 말한 라인에서 충돌이 발생합니까? – DarkDust

+0

또한 objFinalValue 변수에 저장되어있는 인스턴스가 공개되지 않기 때문에 인스턴스가 누출됩니다. – DarkDust

+0

평상시와 같이, 충돌이 발생한 행, 콘솔 로깅 출력 및 디버거의 스택 추적을 제공 할 때까지는 도움을 드릴 수 없습니다. –

답변

2

대상 탭으로 이동하여 응용 프로그램의 실행 파일 그룹을 찾아 두 번 클릭합니다. 나타나는 창은 "실행 파일 이름"정보 "라는 제목이 붙어 있으며 그 안에 두 개의 테이블이 있습니다. 맨 위에는"실행시 전달할 인수 : "라는 레이블이 붙어 있습니다. 아래쪽에"변수는 환경 : "

아래쪽 테이블에 대한 추가 버튼을 클릭하면 새 변수에"NSZombieEnabled "라는 값과"YES "값이 부여됩니다. 그런 다음 창을 닫고 시뮬레이터 나 장치에서 앱을 실행하십시오.

내 생각에이 앱은 두 환경 모두에서 예외로 종료되며 삭제 한 후에 어떤 개체가 사용 중인지 알려줍니다.

자세한 내용은 http://cocoa-nut.de/?p=16

관련 문제