MainWindow.xib는 포함 된 대부분의 xCode 4.2 템플릿으로 생성됩니다. 단순히 App Delegate에서 사용하는 .xib에 UIWindow를 포함합니다. UIWindow는 앱이 포함 된 창입니다.
MainWindow.xib와 ViewController.xib의 차이는 크지 만 작습니다. MainWindow.xib에서 전체 응용 프로그램 UI를 선택할 수 있습니다. 즉, 전체 앱에 대해 하나의보기 만 있으면됩니다. ViewController.xib에서 응용 프로그램의 레이아웃을 선택했다면 하나 또는 여러 개의보기가 필요할 수 있습니다. MainWindow.xib와 ViewController.xib의 가장 큰 차이점은 ViewController.xib가 Model View Controller (또는 MVC) 패턴의 View 부분이라는 것입니다. Wikipedia에서 MVC의
정의 :
모델 뷰 컨트롤러 (MVC)의 패턴을 제공하는 동안, 애플리케이션의 다른 양태 (입력 로직, 비즈니스 로직 및 UI 로직)를 분리 애플리케이션 작성 이러한 요소들 사이의 느슨한 커플 링.
ViewController.xib에는 UIViewController에서 제어 할 UIView가 포함되어 있습니다. UIViewController 클래스를 사용하면 뷰로드 및 언로드와 같은 이벤트가 언제 발생하는지 쉽게 알 수 있으므로 뷰를 쉽게 처리 할 수 있습니다. MainWindow.xib의 UIWindow는 응용 프로그램 실행 및 기타 응용 프로그램 관련 이벤트에 대한 정보 만 알고있는 응용 프로그램 대리인에게 연결됩니다.
선택한 경우 UIView를 포함하도록 MainWindow.xib를 수정하여 별도의 UIViewController에서 처리 할 수 있습니다.