OGeek|极客世界-中国程序员成长平台

标题: ios - 如何访问已激活 plist 的程序集? [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-13 05:37
标题: ios - 如何访问已激活 plist 的程序集?

我正在转换一个项目以使用台风的 plist 集成。我可以看到我添加到 TyphoonInitialAssemblies 键的程序集正在被激活,但是在我不知道如何访问激活的程序集之后。



Best Answer-推荐答案


您可以通过注入(inject)程序集来访问程序集。您可以为 App Delegate 定义一个特殊情况定义,如 shown in the Typhoon example application :

- (PFAppDelegate *)appDelegate
{
return [TyphoonDefinition withClass:[PFAppDelegate class]     
    configuration:^(TyphoonDefinition *definition)
    {
        //Inject the assembly
        [definition injectPropertyselector(assembly)
            with:self];

        //Inject other properties
        [definition injectPropertyselector(window)
            with:[self mainWindow]];
        [definition injectPropertyselector(cityDao) 
            with:[_coreComponents cityDao]];            
    }];
}

。 .或者您也可以将程序集注入(inject)到任何其他 Typhoon 创建的组件中。这对于使用 factory pattern 从一个对象图进行到另一个对象图很有用。 .

通过 plist 集成引导的程序集也是绑定(bind)到您的初始/主 Storyboard 的程序集,因此任何 auto-injection将满足在您的 Storyboard上创建的 View Controller 上定义的属性。这包括一个程序集类型属性,例如:

@property(nonatomic, strong) InjectedClass(MyAssembly) assembly; 

this feature is here 的文档.

关于ios - 如何访问已激活 plist 的程序集?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28847478/






欢迎光临 OGeek|极客世界-中国程序员成长平台 (http://sqlite.in/) Powered by Discuz! X3.4