2011-10-12 4 views
0

UIViewController이 여러 개인 프로젝트를 작업 중입니다. 방금 새 앱을 추가하고 새 버튼을 클릭하면 앱이 다음 오류로 인해 충돌합니다. 첫째 던져에서보기 컨트롤러 추가

2011-10-11 22:51:57.227 BG-Prep[9156:207] *** Terminating app due to uncaught exception 'NSUnknownKeyException', reason: '[<ResourcesViewController 0x4b28540> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key delegate.' 

* 콜 스택 :

코드는 잘 작동이 다른 페이지 (파일 이름 제외)과 동일하다. 이게 내가 말하는거야?

2011-10-12 14:38:51.533 BG-Prep[10070:207] Tapped the resource button 
2011-10-12 14:38:51.535 BG-Prep[10070:207] receiver's type: ResourcesViewController 

마지막 줄 [self presentModalViewController:resourcesViewController animated:YES];는 응용 프로그램 충돌을 야기하지만, 왜 : 나는 두 줄의 주석 경우

- (IBAction)resourceButtonTapped:(id)sender; 
{ 
    NSLog(@"Tapped the resource button"); 

    ResourcesViewController *resourcesViewController = [[[ResourcesViewController alloc] 
     initWithNibName:@"ResourcesViewController" bundle:[NSBundle mainBundle]] autorelease]; 

    NSLog(@"receiver's type: %@", NSStringFromClass([resourcesViewController class])); 

    resourcesViewController.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal; 
    [self presentModalViewController:resourcesViewController animated:YES]; 

} 

, 나는 다음과를 얻을?

+0

ResourcesViewController는 UIViewController의 하위 클래스입니까? – titaniumdecoy

+0

예, 하위 클래스입니다 ... 위의 설명에 더 많은 정보를 추가했습니다. – padapa

답변

2

보통이 오류는 펜촉에 뷰 아웃렛을 설정하지 않았 음을 나타냅니다. 사용자 인터페이스 nib로 가서 "파일 소유자"를 마우스 오른쪽 버튼으로 클릭하십시오. "보기"오른쪽에있는 원을 펜촉의 뿌리보기 위로 드래그하십시오. 보통 당신을 바로 잡을 것입니다.

파일의 소유자가 올바르게 설정되어 있으면 뷰 컨트롤러 정의에없는 IBOutlet이 뷰 중 하나에 지정되어 있음을 나타냅니다. 각보기 (루트보기 포함)를 마우스 오른쪽 단추로 클릭하고 IBOutlets 옆에 노란색 삼각형 경고가 나타나지 않는지 확인하십시오.

+0

James, 도움 주셔서 감사합니다 ... 결국보기 대신 창문이 있었지만 연결되어 있지 않았습니다. 둘 다 고정되어 다시 작업하고 있습니다. :) – padapa

0

그래서보기 컨트롤러는 모달로 표시하려고 할 때 예외를 throw합니다. 컨트롤러의 뷰가 처음으로 액세스되므로 컨트롤러가 그 시점에서 펜촉을로드합니다. 그런 경우 펜촉 로딩 메커니즘이보기 컨트롤러에서 delegate 키의 값을 설정하려고 시도하고보기 컨트롤러에 분명히 delegate 속성이 없기 때문에 충돌이 발생합니다. 아마 당신은 그것을 가지고 있었지만 그것을 제거하고 당신의 펜촉을 고치는 것을 잊었을 것입니까?

+0

Caleb, 무슨 일이 있었는지에 대한 설명 주셔서 감사합니다. – padapa