Swift OC混编调用

OC引用Swift的类

1 .Module功能开启YES; Module名称是YstenEngineKit_Example

2.在OC的文件直接引入#import "YstenEngineKit_Example-Swift.h", 格式是Module名称-Swift.h

Swift引用OC的类

1.创建桥接文件Bridging-Header
如果是OC首次创建Swift文件会提示


或者自己创建Header然后在Buiding进行设置

2.在桥接文件工程名-Bridging-Header.h 直接写入要向Swift暴露的类

OC实现Swift的代理

1.Swift中代理声明增加@objc

@objc protocol SettingsVCDelegate: NSObjectProtocol {
    func settingsVC(_ settingsVC: SettingsViewController, didSelectProfile profile: CGSize)
}

2.Swift中的delegate使用@objc修饰

@objc weak var delegate: SettingsVCDelegate?

3.Swift中如果有属性需要OC设置都是用@objc修饰

你可能感兴趣的:(Swift OC混编调用)