Swift OC混编调用

2019-02-28  本文已影响0人  Crassus

OC引用Swift的类

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

WX20190228-160524@2x.png

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

Swift引用OC的类

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

WX20190228-161954@2x.png
或者自己创建Header然后在Buiding进行设置
WX20190228-162331@2x.png
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修饰

上一篇 下一篇

猜你喜欢

热点阅读