3

当您从 iPhoneSDK 中的“基于视图”模板创建应用程序时,会生成以下代码。我基本上明白这里发生了什么,但我没有看到 window 和 viewController 是在哪里实例化的。有什么帮助吗?

@class jojojViewController;

@interface jojojAppDelegate : NSObject <UIApplicationDelegate> {
    UIWindow *window;
    jojojViewController *viewController;
}

@property (nonatomic, retain) IBOutlet UIWindow *window;
@property (nonatomic, retain) IBOutlet jojojViewController *viewController;

@end

================================================

@implementation Test6AppDelegate

@synthesize window,mainView;    

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

    // Override point for customization after application launch
    [window makeKeyAndVisible];
}    

- (void)dealloc {
    [window release];
    [super dealloc];
}
@end
4

2 回答 2

4

它们来自项目中的 MainWindow.xib(或类似)文件。

这是在 info.plist 中设置为应用程序窗口的文件。当您的应用程序启动时,此 xib 已加载,并且视图控制器和窗口未归档并已加载。

于 2009-03-06T01:35:14.750 回答
1

如果您查看 MainWindow.xib,窗口和 viewcontroller 被分配给您的 AppDelegate 的窗口和 viewController 出口,当 nib 加载时实例化它们(右键单击 AppDelegate 以查看它)。

于 2009-03-06T03:09:06.540 回答