最近在oc工程里要引用swiftMonkeypaws,需要使用oc调用swift技术,里面踩了很多坑,这里简单记录一下。
1、oc调用swift
oc调用swift其实很简单,google一下就有很多的教程,可以参考文章1、2、3、4。总体上就是在要调用swift代码的时候,引入头文件 “模块名-Swift.h”,这个头文件对外不可显示,需要手动导入。可以在 Build setting 中查看:
现在我们在 OC 中添加这个头文件:
我们需要查看一下swift到底可以调用那些方法和类。这个时候,我们可以点进这个头文件中去。进入头文件往下拉,可以看到暴露出来的 Swift 的类名和方法:
2、oc调用swift ,涉及cocoapods
上面完全是主工程里使用当然毫无难度,但是我要引入的swiftMonkeypaws是要以cocoapods方式进行引入,这里面就有很多的问题。
2.1 引入头文件名字不一样
头文件要引入的格式为 #import <产品名/模块名-Swift.h>,参考文章5,我们可以在 Build Settings 中查看: