iOS5 с раскадровками, где разместить общие объекты инициализации кода приложения? - PullRequest
2 голосов
/ 30 декабря 2011

До того как я использовал раскадровки, все мои контроллеры были инициализированы в:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions

Я мог инициализировать все общие объекты (менеджеры данных и т. Д.) Перед созданием контроллеров и передавать их контроллерам.

В моем первом проекте раскадровки я заметил, что один из моих контроллеров имеет

- (void)viewDidLoad
//called before the app's 
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions

Если я использую раскадровки и мои контроллеры загружаются до того, как приложение завершает запуск,куда мне положить код инициализации общих объектов, чтобы он вызывался только один раз?

Спасибо!

1 Ответ

2 голосов
/ 30 декабря 2011

Из документов для приложения: didFinishLaunchingWithOptions:

... Вызывается после запуска приложения и загрузки основного файла nib.

Чтобы предотвратить загрузку вашей раскадровки перед инициализацией, вы можете удалить основной файл xib или раскадровку в -Info.plist (для раскадровки это называется Main storyboard file base name).Затем вы можете создать раскадровку вручную, когда вам это нужно.

...