我正在使用带有“Plist 集成”的台风
我在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
,但我希望这由台风处理。
注意:我还没有尝试过,但同样的事情也可能发生在故事板创建的视图控制器上。