Я использую тайфун с «Plist интеграции»Typhoon с одноплодной AppDelegate
Я определил AppDelegate
следующим образом внутри сборки:
- (AppDelegate *)appDelegate {
return [TyphoonDefinition withClass:[AppDelegate class] configuration:^(TyphoonDefinition *definition) {
[definition injectProperty:@selector(window)];
definition.scope = TyphoonScopeSingleton;
}];
}
Внутри window
, у меня есть rootViewController
с delegate
что он реализован AppDelegate
.
- (RootViewController *)rootViewController {
return [TyphoonDefinition withClass:[RootViewController class] configuration:^(TyphoonDefinition *definition) {
[definition injectProperty:@selector(delegate)];
}];
}
Проблема заключается в том, что delegate
устанавливается с другим экземпляром AppDeleaate
. Я установил точку останова внутри AppDelegate
init
, и действительно, это называется дважды.
Я знаю, что решение было бы вручную установить delegate
внутри AppDelegate
во время выполнения, но я бы хотел, чтобы это обрабатывалось тайфун.
Примечание: Я не пробовал, но это может произойти с контроллерами представлений, созданными раскадными версиями.