2009-05-14 7 views
0

인터페이스 빌더의 펜촉에서 뷰 컨트롤러를로드하려고합니다. 내 기본 설정은 이것이다 :인터페이스 빌더에서 펜촉 이름 필드를 설정할 때 예외가 발생했습니다.

MainWindow.xib에 다음이 포함 모든 일반적인 물건, 응용 프로그램 위임 인스턴스는 루트 뷰 컨트롤러의로의 UIViewController이있는 창 등

은 UINavigationController. UIViewController의 nib 이름이 내 View Controller를 포함하는 xib의 이름으로 설정됩니다.

내 별도의 xib에있는보기 컨트롤러는 파일의 소유자 유형이 해당보기에 대한 컨트롤러 클래스로 설정되어 있습니다.

뷰가로드 될 때마다 (예 : 앱이 시작될 때) 내 컨트롤러 클래스가 [여기에 임의의 변수 이름 삽입] 키에 대해 키 - 값 코딩을 준수하지 않는다는 예외가 발생합니다. 대부분의 경우 키는 내가 IBOutlet으로 설정 한 버튼이나 다른 이름에 부여한 이름입니다.

왜 이런 일이 발생합니까? 내가 뭘 놓치고 있니? KVC 호환 접근자를 생성하기 위해 각 변수에 대한 속성을 만들려고했으나 여전히 예외가 발생합니다.

도움이 될 것입니다, 감사합니다!

+0

"내 별도의 XIB의 뷰 컨트롤러는 해당 뷰 컨트롤러 클래스에 파일의 소유자의 유형을 설정했습니다." xib 자체의 파일 소유자가 해당보기에 대한 컨트롤러 클래스로 설정되어 있다는 것을 의미합니까? – hatfinch

+0

네, 맞습니다. – Jasarien

답변

2

앱이 UINavigationController와 같이 UIViewController를 처리하려고합니다. 그렇지 않습니다.

서브 클래스 대신의 UIViewController의 UINavigationController가 같은 루트 뷰 컨트롤러는 :

@interface rootViewController : UINavigationController { 
관련 문제