2011-02-02 2 views
2

내 응용 프로그램에서 사용자가 systemstatusbar의 아이콘을 클릭하면 NSView를 표시합니다. 이 NSView는 MAAttachedWindow와 함께 표시됩니다. attachedWindow가 나는 awakeFromNib 메소드의 내용을 갱신하려고했습니다보기가 MAAttachedWindow와 함께 표시 될 때 NSView 내용 새로 고침

(makeKeyandorderFront) 표시 될 때 NSView의 내용을 갱신하는 방법을하지만, 한 번만 작동합니다

내 질문입니다.

아무도 도와 줄 수 있습니까?

감사

답변

2

내가 찾은 솔루션 :

내보기에 옵저버를 추가 한

: 나는 MAAttachedwindow의 NSWindowDidBecomeKeyNotification 통지를 듣고 [selft 창]로 오브젝트를 설정했습니다.

- (무효)로 awakeFromNib

{

[NSNotificationCenter defaultCenter] addObserver : 자기 선택기 : @ 선택기 (windowDidBecomeKey : 상품명 : NSWindowDidBecomeKeyNotification 오브젝트 [자기 창];

}

- (무효) windowDidBecomeKey : 나는 해결책을 발견 (NSNotification *) 참고

{

//

}

1

이유 -awakeFromNib 한 번만 작동 한 번만 XIB에서 어셈블리를로드하고 주위를 유지하고 있기 때문에 아마이다.

실제로 MAAttachedWindow 인스턴스에서보기를 표시하는 작업은 표시하기 전에 즉, 자신의 -makeKeyAndOrderFront :를 호출하는 "새로 고침"하기위한 이상적인 장소입니다.

So : 무엇을 시도 했습니까?

+0

여기 새로 고침 마십시오 아침 : MAAttachedwindow의 windowDidBecomeKey 알림에 내 뷰에서 옵저버를 추가했습니다. 선택기에서 새로 고치기를 추가하십시오. (내 질문을하기 전에이 솔루션을 시도했지만 다른 버그로 인해이 작동하지 않았고 응용 프로그램이 응답하지 않음) – Webmixer