我有一个NSOperation和自定义init
方法的子类,可以使用几个参数。这个类是用OBJ C编写的。我想从Swift类中调用这个init方法进行单元测试。有没有办法可以直接从swift调用init方法?编译器无法识别init方法。
答案 0 :(得分:0)
您必须创建一个桥接标头并在那里导入ObjC类。然后,该课程将在所有快速课程中提供
将新文件添加到Xcode(文件>新>文件),然后选择“源”并单击“标题文件”。
将文件命名为“YourProjectName-Bridging-Header.h”。 ...
创建文件。
导航到项目构建设置并找到“Swift编译器 - 代码生成”部分。您可能会发现在搜索框中输入“Swift Compiler”以缩小结果范围会更快。注意:如果您没有“Swift编译器 - 代码生成”部分,这意味着您可能还没有将任何Swift类添加到您的项目中。添加一个Swift文件,然后重试。
在“Objective-C Bridging Header”旁边,您需要添加头文件的名称/路径。如果您的文件位于项目的根文件夹中,只需将头文件的名称放在那里。示例:“ProjectName / ProjectName-Bridging-Header.h”或简称为“ProjectName-Bridging-Header.h”。
打开新创建的桥接头并使用#import语句导入Objective-C类。此文件中列出的任何类都可以从您的快速类中访问。
以上信息可在此处找到:http://www.learnswiftonline.com/getting-started/adding-swift-bridging-header/