美文网首页Swift 相关
iOS OC 与 Swift 混编

iOS OC 与 Swift 混编

作者: xxxixxxx | 来源:发表于2020-09-29 14:59 被阅读0次

    1. XXX-Bridging-Header.h

    新建Swift文件时一般会自动提示创建XXX-Bridging-Header.h文件。如果没有那么自己新建一个 Header 文件,命名为项目名-Bridging-Header.h

    新建 Header 文件

    2. 打开 Target -> BuildSettings 搜索 Header

    User Header Search Paths 填写 $(SRCROOT)

    Enable Modules(c and objective-C) 填写 YES

    Objective-C Bridging Header 填写 项目名称/项目名称-Bridging-Header.h ⚠️这里是个路径

    Objective-C Generated Interface Header Name 填写 项目名称-Swift.h 这里是 OC 引用 Swift 需要用到的。

    BuildSettings 需要修改的地方

    3. pod 需要修改的地方

    Podfile 增加 use_frameworks! 后重新 pod install

    target'XXXXX' do
    use_frameworks!
    

    ⚠️并把所有 pod 导入的库 使用 <> 导入 而不是"" 例如#import <AFNetworking.h>

    ⚠️第三库报错大多都是导入方式不对引起的⚠️

    4. OC 引用 Swift

    在需要的地方导入 #import "项目名-Swift.h" 然后在需要被引用的属性、方法前增加 @objc
    ⚠️ 项目名-Swift.h 这个是隐藏文件看不到

    class XXXViewController: UIViewController {
    
        @objc var name:String = ""
    
        override func viewDidLoad() {
            super.viewDidLoad()
        }  
        @objc func data()  {
        }
    }
    

    5. Swift 引用 OC

    把需要引用的文件导入到 项目名-Bridging-Header.h ,即可在 Swift 中引用。

    相关文章

      网友评论

        本文标题:iOS OC 与 Swift 混编

        本文链接:https://www.haomeiwen.com/subject/jaxjuktx.html