Swift OC 混编
2018-01-03 本文已影响82人
lfp901020
转载 2016年06月13日 16:17:08
1136
原文转载自:原文链接
几天前,我开始新的App的开发了。终于有机会把swift用在实战中了,也学到了之前纯学语法时没有机会获得的知识。
这篇博文中,我就如何使用swift、OC混编做一个介绍。
首先,在工程的Build Settings中把defines
module设为YES.
然后,把product module name设置为项目工程的名字。
最后一步,在你的OC文件中导入ProjectName-Swift.h.
注意:ProjectName-Swift.h这个文件是系统自己创建的,千万不要手动创建。
Swift代码引用OC,需依靠Objective-C bridging
header将相关文件暴露给Swift。
创建Objective-C bridging header有两种方法:
1、当你在Swift项目中尝试创建OC文件时,系统会自动帮你创建Objective-C
bridging header.
此时除了.h、.m文件之外,会额外多出一个叫做项目工程名-Bridging-Header.h的文件,这个文件中导入的类是可以暴露给Swift看到的。你要做的,只是#import
XXXX.
2、自己创建Objective-C bridging header
File > New > File > (iOS or OS X) >
Source > Header File
切记,名字一定要是项目工程名-Bridging-Header.
然后还有一步,在项目的Build Settings选项里,要确保Swift
Compiler选项里有这个Bridging Header文件的设置,路径必须指向文件本身,而不是目录!