swift 与oc混编 ,找不到“Project Name-Swift.h”的问题

当我们在用swift 与 oc 混编的工程中,oc文件调用swift  定义的类时,在oc的.h 文件中导入头文件 “Project Name-Swift.h” 失败,报错 找不到 这个头文件,但是我们用Commang + 鼠标左键点击的时候 还能进去看到 内容(有时候可能直接就显示一个“?”)。

1、出现这个情况首先要检查 工程中是否建立桥接文件,

swift 与oc混编 ,找不到“Project Name-Swift.h”的问题_第1张图片

这两个,一个是swift调用oc 的,一个是oc 调用swift的。

如果这两个都保证配置好了,“Project Name-Swift.h” 还是找不到,那就有可能是swift 与oc 互相引用头文件 导致 的。解决办法是 在 oc要调用swift类的 地方.h 文件中尽量不要导入“Project Name-Swift.h” 头文件;如果是要在.h 中 必须使用swift 的类,那就 前置声明一下swift的类名,@class swift-className  ,然后在.m 文件中 再导入  “Project Name-Swift.h” 头文件。


2、**Target-> Bulid Settings ->输入packa 设置Defines Module 为Yes**

你可能感兴趣的:(swift 与oc混编 ,找不到“Project Name-Swift.h”的问题)