一:项目背景
1.纯OC代码
2.多个target (可参考我的XCode同一Project下创建多个target)
3.准备接入Swift进行混编
二:实现步骤
1.command + shift + n (图1)
2.填写class&选择Language(图2)
3.options勾选每个target(图3)
4.点击Create Bridging Header (图4)
5.工程里有一个swift类以及对应多个target的多个Bridging Header (图5)
6.配置工程文件Build setting里面的参数 (图6)
7.在OC类里配置相应的Swift类(图7)
巨坑:
我们的target命名为YCMath-iOS-test,在OC类中导入XXX-Swift.h来实现OC掉Swift的时候.XXX其实是我们的工程名也就是YCMath-iOS-test-Swift然而就因为我们的这种命名工程的方式导致编译不过不去了.查了下原因,终于柳暗花明又一村.原来Swift Complier 把 "-"翻译成了"_"所以最终import的是YCMath-iOS-test-Swift.h
如图8所示