Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 访问部件的子部件将生成EXC_BAD_访问_Ios_Typhoon - Fatal编程技术网

Ios 访问部件的子部件将生成EXC_BAD_访问

Ios 访问部件的子部件将生成EXC_BAD_访问,ios,typhoon,Ios,Typhoon,用例: 我有一个应用程序集。此程序集有一个名为CoreAssembly的属性,类型为typhonassembly。我正在使用PLIST集成,并且已经注册了这两个程序集。我正在将应用程序集注入Appdelegate 在ViewController中运行后,我想得到一个将由CoreSassembly生成的对象 var appdelegate = UIApplication.sharedApplication().delegate as! AppDelegate; tagHandler

用例:

我有一个应用程序集。此程序集有一个名为CoreAssembly的属性,类型为typhonassembly。我正在使用PLIST集成,并且已经注册了这两个程序集。我正在将应用程序集注入Appdelegate

在ViewController中运行后,我想得到一个将由CoreSassembly生成的对象

    var appdelegate = UIApplication.sharedApplication().delegate as!  AppDelegate;
  tagHandler = appdelegate.assembly.coreAssembly.tagHandler() as! GoogleTagsHandler;

如果我这样做,我会得到一个EXC_BAD_访问权限

这似乎是一个bug,我们已经解决了。同时,作为一种解决方法,请按如下方式将ApplicationAssembly和CoreSassembly注入到您的应用程序委托中:

public dynamic func appDelegate() -> AnyObject {
    return TyphoonDefinition.withClass(AppDelegate.self) {
        (definition) in

        definition.injectProperty("assembly", with: self)
        definition.injectProperty("coreAssembly", with: self)
    }
}

我可以确认该解决方案有效:)。谢谢你的快速回复