В приложении iOS я реализовал некоторую логику приложения в файле AppDelegate
.
Несколько контроллеров представления и т. д. должны вызывать AppDelegate
, поэтому я поместил AppDelegate
в Interface Builder, дал ViewControllers
IBOutlet AppDelegate*
и нарисовал ссылку на него.
В приложении, которое я сейчас вижу, создается два экземпляра AppDelegate
, один из которых вызывается и получает все уведомления, а другой связан с ViewControllers
.
Поэтому я изменил свое приложение для использования в ViewControllers
:
app_del = (AppDelegate*)[[UIApplication sharedApplication] delegate]
.
Тогда я называю это appDelegate
. Но это также другой экземпляр, чем тот, который получает уведомления. Кто-нибудь может объяснить, почему?
Кто-нибудь может сказать мне, что происходит не так? Мое подозрение из поиска в Google заключается в том, что iOS создает экземпляр AppDelegate
, а Interface Builder не знает об этом и создает другой? Это правильно?
Может ли кто-нибудь дать мне подсказку о том, как лучше всего создавать/планировать экземпляры в Interface Builder и в каком порядке они создаются в приложении при запуске и в каком уведомлении я могу полагаться на то, что все они созданы?
Спасибо за любые подсказки, Торстен.