2017-12-05 2 views
0

이것은 "방법"관련 질문입니다 : 엑스 코드를 사용 cocoa windowDidEnterFullScreen not being called맥 OS 게임 템플릿에 NSWindowDelegate를 연결하는 방법

(9.1) 맥 OS "게임"템플릿 -

가 내가 싶습니다

AppDelegate 클래스를 사용하여 간단한 NSWindowDelegate을 만듭니다. 그러나 주어진 콘센트에 아무 것도 연결하지 못하는 것 같습니다.

// AppDelegate.h 
#import <Cocoa/Cocoa.h> 

@interface AppDelegate : NSObject <NSApplicationDelegate, NSWindowDelegate> 

@property (assign) IBOutlet NSWindow *window; // won't connect 

@end 

나는 스토리 보드 내에서 "창"에 연결해야한다고 가정합니다. 이것은 연결을 시도 할 때 발생합니다. 즉, 관리자가 표시되지 않습니다.

enter image description here

내가 무슨 말이냐?

참고 : AppDelegate가 적절한 장소인지 아닌지 걱정하지 않으므로 그냥 놀고 싶습니다. AppDelegate에 관리자 나 속성 선언에서 하나, 대답에서 제안을 사용

EDIT 1

, 나는 AppDelegate에 객체에 'TestFullscreen'창을 연결하는 시도했지만, 여전히 연결되지 않습니다 코드에서.

enter image description here

+0

AppDelegate를 사용하여 모든 것을 작성하는 경우 NSWindowController가 필요하지 않습니다. –

답변

1

당신은 Delegate 객체가 있어야하고 당신의 창으로 후크해야하는 것이다.

enter image description here

현재 자체에 창을 연결하려고처럼 보이는

enter image description here

. 또한 창에 대한보기가 표시되지 않으므로 창 내용에 추가해야합니다.

+0

감사하지만 여전히 내 대리인에 연결하지 않습니다. WindowController와 Window 자체가 섞여있을 가능성이 있습니까? – Justicle

+0

@Justicle : 나는 펜촉과 xibs에 대해 일반적으로 수행 할 작업을 실수로 게시했습니다. 기본적으로 스토리 보드에서는 WindowController를 ViewController에 연결합니다. 이 예제는 완료 방법에 대해 설명합니다. https://github.com/stonehouse/T-Minus –

+0

프로젝트를 보았습니다. 어떻게 도움이 될지 모르십니까? - NSWindowController 메시지가 아닌 NSWindow 메시지에 응답하고 싶습니다. – Justicle

0

간단히 비 작업 영역 프로젝트를 만드는 것이 좋습니다.

XIB를 편집하면 NSWindowDelegate 프로토콜이 지정된 후 Window 대리자 콘센트를 AppDelegate에 연결할 수 있습니다.