1
navigationController如何獲取它在此代碼中設置的topViewController(來自CoreDataBooks示例)?我假定在NIB文件中有一些映射,但是我無法通過在Interface Builder中查看此代碼和NIB文件來證明自己在這裏工作的方式。navigationController如何獲取它在此代碼中設置的topViewController(來自CoreDataBooks示例)?
該示例的源代碼可用here。
是否有人能夠解釋出這個應用程序中設置的topViewController,比如在CoreDataBooksAppDelegate.m「applicationDidFinishLaunching」方法中,RootViewController的一個實例是否被獲取?我猜解釋可能圍繞Interface Builder中&護理文件的處理方式圍繞...
- (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];
}
所以NIB設置意味着IOS會創建這些項目的實例,然後再傳遞給「applicationDidFinishLaunching」? – Greg
它「加載」意味着當您嘗試訪問某個項目時,它會從筆尖加載它。 –