2010-02-25 2 views
0

세부보기에 큰 문제점이 있으며 원하는 방향으로 나를 가리킬 수 있기를 바랍니다.간단한 세부 사항보기 도움?

apples advancetableviewcells와 같은 앱에 세부 정보보기를 추가하고 싶습니다. 한 번 셀을 클릭하면 상세보기로 연결됩니다.

캐치 만 있으면 셀에서 상세보기로 데이터를로드해야합니다.

사이트의 할당량과 온라인 예제를 살펴 보았습니다. 단순한 테이블로 수행하는 방법을 볼 수 있지만 개별 셀과 .plist의 데이터는 언제 볼 수 있습니다. 나는 길을 잃었다.

어떤 도움을 주시겠습니까? 감사합니다.

답변

1

세부 컨트롤러를 추가하는 것은 그리 어렵지 않습니다. 루트 뷰에서는 위에서 언급 한 plist 파일의 모든 데이터를 수집하고 자신의 기준에 따라 데이터를 정렬합니다. 왜 모든 셀에 대해 NSDictionary를 포함하는 루트 뷰 컨트롤러에 NSArray를 만들지 마십시오. 그 사전에 제목, 가격 또는 그 물건의 다른 것 같은 모든 정보를 넣으십시오. 세부 컨트롤러에서 NSDictionary 속성을 추가하기 만하면됩니다. 셀을 선택하면 didSelectRowAtIndexPath 메서드가 호출됩니다. 이 방법 당신은 인덱스 루트 뷰 컨트롤러의있는 NSArray의 객체로 상세 뷰 컨트롤러에서 NSDictionary에 속성을 설정 indexPath.row

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { 
    DetailViewController *myDetailController = [[DetailViewController alloc] initWithNibName:@"NibBame" bundle:nil]; 
    myDetailController.detailDict = [rootViewArray objectAtIndex:indexPath.row]; 
    [self.navigationController pushViewController:myDetailController animated:YES]; 
    [myDetailController release]; 
} 
이후 모든 특정 셀에 대한 데이터가 상세보기에서 사용할 수 있습니다

컨트롤러를 사용하고 NSDictionary의 장점을 사용할 수 있으며 간단한 키로 변수를 가져올 수 있습니다. 예 :

- (void)viewDidLoad { 
    self.title = [myDictionary valueForKey:@"specificKey"]; 
} 
+0

나는 아직도 이것에 대한 몇 가지 문제가있다. 나는 당신의 코멘트에 답장에 코드를 붙여 넣으려고했으나 나는 문자로 넘어 갔다고 생각한다. 그래서 질문에 대한 대답으로 덧붙였다. 감사합니다. – user278342

0

테이블 셀은 UITableViewCell에서 하위 클래스로 만들어야합니다. 뷰 컨트롤러의 제목을 세 번 이상 설정할 필요는 없으며 항상 덮어 씁니다. cellForRowAtIndex 메서드에서 사용자 정의 셀을 설정하고 셀의 속성을 설정해야합니다.