Swift开发是一种大趋势了,每年Apple都会发布新的版本。但是它的第三方库还是没有Objective-C的多,而且想用老项目中的工具类或框架,该怎么办呢?
这就需要Swift&Objective-C混编互调了,但是在Objective-C的编译器主要可以识别以下几种扩展名的文件:
- .m文件,可以编写Objective-C代码或者C语言代码;
- .cpp文件,C++文件,只能识别C++或者C语言代码;
- .mm,主要用于编写C++和Objective-C混编的代码,可以同时识别Objective-C、C和C++代码。
那么该怎么让Swift&Objective-C混编互调呢?在Apple发布Swift的时候已经提供了方案,在iOS8以后Apple给出了这两种语言之间的桥接方案,简单来说就是在Swift工程中,通过提示创建的Bridging头文件可以将Objective-C文件和Swift文件衔接在一起,从而可以在Objective-C文件中引用Swift类,或者在Swift文件中引用Objective-C的类。
下面我们一起来具体操作一下:
1. 创建一个Swift工程,选择Single View App
2. 先新建一个swift类
新建类SwiftObjct.s