Swift采用了Objective-C的命名参数和动态对象模型,提供了无缝接入现有Cocoa框架和与Objective-C混编的能力。但是不同于Objective-C和 C++ 或者 C 在同一个 .mm 文件中的混编,Swift代码不能和Objective-C 代码写在同一个文件中。分属不同文件,但相互之间可以调用,需要注意必须添加或者创建bridging header文件。
不管是在OC工程中添加.swift文件,还是在Swift项目中添加oc类文件,都会弹出提示添加bridging header文件。点击Yes,自动创建MixedLanguage-Bridging-Header.h文件,如果这里不小心没有点击Yes,或者没有弹出添加Objective-C的桥接头文件提示,也没有关系,我们可以手动添加一个.h文件,命名为:工程名-Bridging-Header.h,添加完毕之后需要修改工程的Objective-C Bridging Header。
OC如何调用Swift写的类
OC要想调用Swift,必须有头文件。而Swift文件却没有头文件,所在也需要产生一个头文件。但对于OC调用Swift的头文件比较特殊。因头文件里面的机制是自动生成的,工程中看不到。
产生头文件步骤:
选中targets->build settings ->packing->Product Module Name 中设置模块名,这个名称很重要。 Swift 的头文件就是根据这个来命名的。将Defines Module设置YES,并确定Product Module Name 和 Product Name都填写。
……
展开
——无限互联CEO 熊彪
★市面上不乏关于Swift语言基础知识的书籍,但当我看到明洋的这本书稿时,我的感觉是,终于有这么一本系统全面地从实战的角度讲解Swift语言进行移动App开发的书籍了。他向广大Swift语言学习者和开发者分享了iOS商业开发方面的实战经验,帮助更多开发者快速学到优化产品性能的方法,以提升产品的用户体验。
——西湖创客汇理事长、杭州汇文董事长 戴立
★掌握一门新的开发语言,经历一段时间去学习是不可避免的过程。而让这个过程缩短最有效的方法,就是结合实例来学习实战开发的技巧,明洋的这本书就具备了这样的特点。《Swift语言实战精讲》内容强调实战性,涵盖了Swift语法、UI开发与控件、读写应用程序数据、多媒体应用、OC汇编与迁移、真机调试和发布等多个方面的内容。这是一本“端到端”的开发教程,从创建工程开始,一直覆盖到让App成功在App Store上架,可以说是手把手地与读者一起完成用Swift进行App开发的过程了。相信这本书能够对广大iOS开发者有所帮助,可以做到一书在手,Swift编程不愁。
——至顶网CEO 高飞