Cowboy Tech

iOS-Swift与Objective-C混合编程

Swift调用Objective-C代码

在swift project里新建OC文件时,会弹出如下对话框,选择yes,创建SwiftTut-Bridging-Header文件与OCHello文件
dialogue
在SwiftTut-Bridging-Header里加入如下代码

#include "OCHello.h"

可以在swift项目里使用oc文件了

var h = OCHello()
    h.sayHello()
}

Objective-C调用Swift代码

在OC project里新建swift文件时,会弹出如下对话框,选择yes,创建SwiftTut-Bridging-Header文件与SwfitHello文件

dialogue

在Project file –>Build setting –> Package –>Defines module –> 选择”Yes”

dialogue2

在OC文件里引入”ProductName-Swift.h”文件,这个是系统自动生成的

#import "CallSwift-Swift.h"

在OC文件里可以引用swift类了

SwiftHello *h = [[SwiftHello alloc]init];
[h sayHello];

iOS official doc for mixing swift with OC