Где создается экземпляр UIWindow в приложении для iPhone?
-
03-07-2019 - |
Вопрос
Когда вы создаете приложение на основе шаблона «View-Based» в 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
Решение
Они берутся из файла MainWindow.xib (или аналогичного) вашего проекта.
Это файл, который в вашем info.plist установлен как окно приложения.Когда ваше приложение запускается, этот xib загружается, а контроллер представления и окно разархивируются и загружаются.
Другие советы
Если вы посмотрите в MainWindow.xib, окно и контроллер представления назначены окнам вашего AppDelegate и выходам viewController, которые создают их экземпляры при загрузке пера (щелкните правой кнопкой мыши AppDelegate, чтобы увидеть его).