다음 코드에서 [tableView reloadData]까지 NSLOG가 테이블보기 대리자 메서드에 설정되어 있고 그 중 아무 것도 호출되지 않을 때까지 모든 것이 작동한다고 결정했습니다. 나는 같은 reloadData를하는 다른 메소드를 가지고 있으며 완벽하게 작동한다. 내가 떨어져있는 유일한 차이점은 이것이 @catch 블록에 있다는 것입니다. 어쩌면 당신 똑똑한 사람은iphone reload tableView
@catch (NSException * e) {////chart is user genrated
logoView.image = nil;
NSInteger row = [picker selectedRowInComponent:0];
NSString *selectedAircraft = [aircraft objectAtIndex:row];
NSArray* paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,
NSUserDomainMask, YES);
NSString *docsPath = [paths objectAtIndex:0];
NSString *checklistPath = [[NSString alloc]initWithFormat:@"%@/%@.checklist",docsPath,selectedAircraft];
NSString *dataString = [NSString stringWithContentsOfFile:checklistPath encoding: NSUTF8StringEncoding error:NULL];
if ([dataString hasPrefix:@"\n"]) {
dataString = [dataString substringFromIndex:1];
}
NSArray *tempArray = [dataString componentsSeparatedByString:@"\n"];
NSDictionary *temporaryDictionary = [NSDictionary dictionaryWithObject: tempArray forKey:@"User Generated Checklist"];
self.names = temporaryDictionary;
NSArray *tempArray2 = [NSArray arrayWithObject:@"01User Generated Checklist"];
self.keys = tempArray2;
aircraftLabel.text = selectedAircraft;
checklistSelectPanel.hidden = YES;
[tableView reloadData];
}
이 아마 도움이되지 않습니다,하지만 당신은'대신 tableView''의 self.tableView'를 사용하여 시도 단지 호기심? – shosti