2011-02-26 5 views
1

navigationControllerは、このコードで(CoreDataBooksの例から)topViewControllerをどのように取得しますか?私はNIBファイルでいくつかのマッピングを想定していますが、Interface BuilderでこのコードとNIBファイルを確認することで、ここでどのように動作するのかを証明することはできません。navigationControllerはこのコードで(CoreDataBooksの例から)topViewControllerをどのように取得しますか?

例のソースコードはhereです。

CoreDataBooksAppDelegate.m "applicationDidFinishLaunching"メソッドのように、topViewControllerを説明できる人がこのアプリケーションで設定されていますか?RootViewControllerのインスタンスが取得されていますか?私はMainView.xibファイルで設定されているようだ

- (void)applicationDidFinishLaunching:(UIApplication *)application { 

    RootViewController *rootViewController = (RootViewController *)[navigationController topViewController]; // <=== HOW DOES THIS WORK 
    rootViewController.managedObjectContext = self.managedObjectContext; 

    // Configure and show the window 
    [window addSubview:[navigationController view]]; 
    [window makeKeyAndVisible]; 
} 

答えて

3

...説明はInterface Builderの& NIBファイルの処理方法を中心に展開して推測しています。ナビゲーションコントローラの内部には、View ControllerがRootViewControllerクラスに設定されています。

+0

NIB設定は、IOSが "applicationDidFinishLaunching"に渡す前にそのような項目のインスタンスを作成することを意味しますか? – Greg

+0

アイテムにアクセスしようとすると、それがペン先からロードされるという意味の「遅延」がロードされます。 –

関連する問題