从Swift目标C项目访问应用程序委托
我们有一个Objective C项目,它即将获得一些新功能。这些新功能将在Swift中实施。到目前为止,我们已经将所有这些工作与Swift和Objective C并行工作,并且大部分工作都非常愉快。从Swift目标C项目访问应用程序委托
我目前无法完成的一件事是从swift中访问(objc)应用程序委托,特别是它的方法和托管对象上下文。
我试图
let appDelegate = UIApplication.sharedApplication().delegate! as UIApplicationDelegate
没有任何成功。
如何从我的swift代码访问在Objective C中编写的应用程序委托并使用它的方法以及托管对象上下文?
使用您的AppDelegate类名称,而不是UIApplicationDelegate
let appDelegate = UIApplication.sharedApplication().delegate! as <<Your Appdelegate Class>>
,并导入桥接,头文件的appdelegate。 “桥接报头” 用于两侧桥连接
应用程序委托类(>)似乎是未知的,因为如果我这样做,它被称为未知类型 – Exinferis
“Bridging-Header”用于两侧的桥接连接,因此在Bridging-Header文件中导入该appdelegate。 – Ammaiappan
你可以试试这个
let appDelegate = UIApplication.sharedApplication().delegate as! AppDelegate
让的appDelegate:AppDelegate中= UIApplication.sharedApplication()委托作为! AppDelegate
在这种情况下,“AppDelegate”似乎是未知类型 – Exinferis
我用作! AppDelegate(它应该是你的appdelegate类名)。 –
你不应该在应用程序委托中真正拥有核心数据栈... – Wain