OC与Swift混编 / Mix & Match
2016-01-23 本文已影响110人
fever105
OC与Swift混编 / Mix & Match
OC in Swift
- 通过
Header File
创建Bridging Header
文件。 -
桥接文件
的格式为PMN-Bridging-Header.h
。 - 在桥接文件中引入
想要暴露给Swift的OC头文件
,例如:
“#import "XYZCustomCell.h"
#import "XYZCustomView.h"
#import "XYZCustomViewController.h”
-
Build Settings ---> Swift Compiler - Code Generation ---> Objective-C Bridging Header
,在上面的路径中,输入桥接文件相对于项目的路径
,例如:
项目名/...目录.../PMN-Bridging-Header.h
Swift in OC
- 将Swift文件拖入项目,Xcode会自动生成
Umbrella Header
文件。 -
伞状文件
的格式为PMN-Swift.h
。 - 在需要引入Swfit类的OC文件中引入
伞状文件
,例如:
#import "PMN-swift.h"
// 以OC的形式使用Swift类
- 如果一个Swift类需要在OC代码中使用,需要使其
继承自NSObject
。
Product Module Name (PMN)
- 默认情况下,
Product Module Name = Product Name
- 任何
非字母/数字
字符,都会被替换为_
- 另外,
开头的数字
将被替换为_
- 不能使用
-
,否则linker
报错。