Swift和Objective-C项目 – 生成-Swift.h错误 – 找不到UIViewController的接口声明

我有一个项目使用Swift生成的桥接头,并正确设置项目(名称中没有空格,使用模块,预先声明我的.mm文件中的Swift类,删除派生数据,做一个干净的重build等。 )。 桥接头正在生成正常,但自动生成-Swift.h中有错误。 更糟糕的是,这些错误是在AppDelegate和ViewController生成的(在项目创build – Swift中)通常编译好的。 -Swift.h中的错误是:

  • @interface AppDelegate : UIResponder <UIApplicationDelegate>
    >>无法find“UIResponder”的接口声明,“AppDelegate”的超类
    >>找不到'UIApplicationDelegate'的协议声明
  • @interface ViewController : UIViewController
    >>找不到'UIViewController','ViewController'的超类的接口声明

我已经search堆栈溢出和networking,找不到解决这个特定问题的任何答案。 有没有其他人有这个? 或者,有没有办法我可以标记我的AppDelegate和ViewController类,所以Xcode 不会尝试创build这些Swift类的Objective-C存根(stub),因为我实际上并不需要它们?

我有同样的问题,发现..

-Swift.h只适用于Objective-C,而不是Objective-C ++(.mm)

所以我使用Objective-C类来连接Swift类。 你也可以随时在你的Objective-C类中加载你的Objective-C ++类。

只需添加

 #import <UIKit/UIKit.h> 

之前

 #import <YourProject-Swift.h> 

在.mm文件中。 对我有帮助

尝试将UIKit / UIKit.h导入桥接头文件。