Interface Builder와 NSViewController를 사용하여보기를로드하는 데 어려움을 겪고 있습니다.NSViewController와 Nib의 여러 서브 뷰
내 목표는 아래 설명과 일치하는보기를 만드는 것입니다. 상단의 상단 바 (툴바와 같지만 정확히는 아님)는보기의 전체 너비와 아래의 두 번째 '콘텐츠보기'입니다. 이 합성보기는 내 NSViewController
하위 클래스가 소유합니다.
인터페이스 빌더를 사용하는 것이 좋습니다. 나는보기 펜촉을 만들었고 두 개의 하위보기를 추가했다. (위쪽 막대와 내용보기를 사용하여) 제대로 배치했다. File's Owner
을 MyViewController
으로 설정하고 콘센트 등을 연결했습니다.
내가로드하고 싶은 뷰 (바 및 컨텐츠)도 자신의 닙에 있습니다.이 탬 부스는 나를 감추고 있을지도 모릅니다. 그리고 그 닙의 커스텀 클래스는 적용 가능한 NSView 서브 클래스로 설정되어 있습니다. 내가 그들의 File's Owner
(나는 그들의 소유자가되어야하므로 MyController
을 추측하고있다)로 무엇을 설정할 지 확신하지 못한다.
아아, 내가 MyViewController
의 인스턴스를 초기화 할 때 아무 것도 실제로 표시되지 않습니다. 나는 윈도우의 contentView에 제대로 추가했다. (나는 그렇지 않다), 실제로는 일종의로드를 체크했다. 즉, awakeFromNib
은 막대보기로 보내지지만 창에는 표시되지 않습니다. 나는 분명히 어딘가에 몇 개의 전선이 교차되어 있다고 생각한다. 아마도 누군가 내 좌절감을 덜어 줄 수 있을까요?
편집 일부 코드 내가 뭘하는지 보여
내 응용 프로그램이 실행 완료되면 컨트롤러가 애플 대리자에서,로드 : 내 initWithNibName 나는 돈에 다음
MyController *controller = [[MyController alloc] initWithNibName:@"MyController" bundle:nil];
[window setContentView:[controller view]];
그리고 ' 아무것도하지 마라. 지금은 슈퍼에게 전화한다.
코드를 게시하십시오. 뷰 컨트롤러를 어떻게 초기화하는지는 명확하지 않습니다. –