Nib_NSWindowController

330 views

Published on

Published in: Technology, Business, Sports
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
330
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Nib_NSWindowController

  1. 1. 12. NIB 파일과NSWINDOWCONTROLLER
  2. 2. NSWindowControllerNSApplication 은 MainMenu.nib 로딩.RMDocument 는 RMDocument.nib 로딩.NSWindowController 를 사용해서직접 NIB 파일 로딩.왜?Lazy-loading 으로 인한 효율.(환경설정, 찾기...)
  3. 3. NSPanel - 환경 설정패널은 보조 용도패널은 키 윈도가 될 수 있지만메인 윈도는 될 수 없다."윈도우" 메뉴에 나타나지 않는다.hidesOnDeactivate 를 대부분 YES로 설정.
  4. 4. 패널 추가
  5. 5. NSWindowControllerNSWindowController 를상속한 PreferenceController 생성.NSObject 를 상속한 AppController 생성.
  6. 6. 패널 보여주기Lazy-loadingnil 일 경우, 인스턴스 생성하여 보여줌.
  7. 7. XIB 추가
  8. 8. Files Owner 설정
  9. 9. Files Owner많은 사람들이 Files Owner를 사용하는 것에 혼란.Files Owner is the controller objectthat is responsible for the contents of the nib file.소유자가 PreferenceController 임을 NIB 파일에 명시.
  10. 10. 코드 연결
  11. 11. NSBundle번들(bundle)은 자원 디렉토리로어플리케이션에서 사용그림, 소리, 컴파일된 코드, NIB...다국어 지원(English.lproj, Korean.lproj) 디렉토리.
  12. 12. NSBundleNSBundle *myBundle = [NSBundle mainBundle];NSBundle *goodBundle;goodBundle = [NSBundle bundleWithPath:@"~/..."];NSString *path = [goodBundle pathForImageResource:@"Mom"];NSImage *momPhoto = [[NSImage alloc] initWithContentsOfFile:path];
  13. 13. 코드 라이브러리Class newClass = [goodBundle classNamed:@"Rover"];id newInstance = [[newClass alloc] init];Class aClass = [goodBundle principalClass];id anInstance = [[aClass alloc] init];The principal class typically controls all the otherclasses in the bundle.
  14. 14. NIB 열기NSWindowController 없이 NIB 파일 열기.BOOL successful =[NSBundle loadNibNamed:@"About" owner:someObject];someObject 는 Files Owner로 동작.

×