3

iPhoneSDK の「View-Based」テンプレートからアプリケーションを作成すると、次のコードが生成されます。ここで何が起こっているかは基本的に理解していますが、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 が読み込まれ、viewcontroller とウィンドウが展開されて読み込まれます。

于 2009-03-06T01:35:14.750 に答える
1

MainWindow.xib を見ると、window と viewcontroller が AppDelegate の window と viewController アウトレットに割り当てられており、nib がロードされたときにそれらをインスタンス化します (AppDelegate を右クリックして確認します)。

于 2009-03-06T03:09:06.540 に答える