繁体   English   中英

在Objective-C项目中导入Swift框架-错误-未知类型名称

[英]Import Swift Framework in Objective-C Project - Error - Unknown Type Name

我已经为这个特定问题努力了一段时间。 基本上,我使用Carthage添加了一个框架BigNerdRanch CoreDataStack

但是我在我的Objective-C代码上使用上述框架时遇到了问题。 我的项目是一个Objective-C项目,最近我在其中添加了Swift代码和Swift框架。

到目前为止,我已经能够在我的Swift代码中毫无问题地使用Swift框架。 但是一旦我开始在旧的Obj-C上使用上述Swift框架,特别是AppDelegate.m,无论如何我都会不断收到编译器错误。

据我了解,我必须像这样导入它:

#import <CoreDataStack/CoreDataStack-Swift.h>

我在AppDelegate.m上做了。

我的项目中也有以下设置:

项目目标设置:

在此处输入图片说明

Swift编译的构建设置:

在此处输入图片说明

我一直在StackOverflow中看到一些答案,以将public添加到类中。 但是我无法这样做,因为导入的框架是独立的,并且只包含供我查看的XCode项目中的标头。

在此处输入图片说明

感谢您的帮助。

您添加了一个快速编写的框架,如果它们不支持对Objective C支持,则不能在目标c代码中使用它。

但是,您可以快速创建一个类,该类将用作框架和ObjC类之间的中介。

@objc class coreDataStackConvertor: NSObject {

    func createStack(arg: Type) {

        // Code which uses the real CoreDataStack
    }

}

从目标c类中,您可以使用转换器类中的方法。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM