1
테이블의 행을 선택하는 문제 내 응용 프로그램에서 테이블보기 cells.When 내가 선택한 셀에 따라 해당보기 걸리는 하나의 셀을 선택합니다. UITableViewCell의 사용자 정의 하위 클래스를 사용하여 구현했습니다. 즉, 코드를 사용하여 하위 뷰 대신 nib 파일로 셀을 서브 클래 싱합니다. 뷰 하위 클래스 기술
내가있는 viewDidLoad 방법에 아래와 같이NSDictionary *row1=[[NSDictionary alloc]initWithObjectsAndKeys:@"Mac", @"Name", @"1.5", @"Rate", nil];
NSDictionary *row2=[[NSDictionary alloc]initWithObjectsAndKeys:@"MINI", @"Name", @"14.4",@"Rate", nil]; NSArray *array=[[NSArray alloc]initWithObjects:row1, row2 nil];
self.computers=array;
을 내 세포의 데이터를 공급하는있는 NSDictionary를 사용 didSelectRowAtIndexPath 방법에 나는 NSException를 표시하고 이동하지 않습니다
-(void) tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{
if (childController==nil) {
childController=[[computerConverter alloc]initWithNibName:@"computerController" bundle:nil];
[email protected]"Select computer to convert";
NSUInteger row=[indexPath row];
NSString *selectedComputer=[self.computers objectAtIndex:row];
NSString *detailMassage=[[NSString alloc]initWithFormat:@"%@",selectedComputer];
childController.massage =detailMassage;
childController.title=selectedComputer;
[detailMassage release];
[self.navigationController pushViewController:childController animated:YES];
childController =nil;
}
}
를 사용 다른 해당보기로. 모든 제안은 매우 감사하겠습니다.
a) 백 트레이스에서 예외로 표시되는 내용은 무엇입니까? b) 이것은 매우 새는 코드입니다. 나는 당신이 정적 분석기를 가동하지 않고 있다고 생각합니다. 예 :'childController = nil'은 실제로'self.childController = nil'이어야합니다. – Abizern
예, 제가 여기에 제 코드를 넣었습니다. 나는 모든 기억 관리 일을했다. 문제는 childController 또는 Dictionary 요소에 있다고 생각합니다. childController가이 클래스의 객체가 아니기 때문에 self.childController가 될 수 없습니다. 우리가 어떤 셀을 클릭하면 갈 다음 클래스의 객체입니다. – Mann
row1과 row2는 사전이므로이 작업을 수행 할 수 없습니다. childController.title = selectedComputer; 이 사전의 키에 대해 반환 값을 설정할 수 있습니다. 나는 문제가 위의 줄에 있다고 생각한다. –