Objective-C混编Swift 5.0

·  阅读 3819

一.基础准备

总括场景:

  • 现有Objective-C 项目新增Swift功能模块
  • Swift 调用 Objective-C
  • Objective-C 调用 Swift
  • 现有Objective-C 项目接入Swift 的第三方pod库

二.接入开始

现有Objective-C 项目新增Swift功能模块

当我们在 ObjC 项目中新建 Swift 文件时或者在 Swift 项目中新建 ObjC 文件时,Xcode 都会自动帮你新建一个 Objective-C bridging header file(当然我们也可以手动创建) .

*** 当完成图一到图三的操作,你的项目已经做好Swift调用Objc初始化了.该文件固定的命名规则为:项目名-Bridging-Header.h 由于项目名为objc_swift,所以会自动生成为 [objc_swift-Bridging-Header.h]
(此处注意,工程名中如果存在空格" "或者中划线"-",需要用下划线"_"代替。)

图一

图二

图三



Swift 调用 Objective-C流程

图四
以上是引入流程,可以看到需要创建一个桥接文件用于Swift与ObjC的通信 就目前为止还需要在上一步的objc_swift-Bridging-Header.h中声明Swift可用的ObjC模块.
图五
然后在Swift模块就可以引用到ObjC的功能了
图六



Objective-C 调用 Swift

1.在完成创建Bridging-Header.h的步骤后,然后Command+B build一次iOS工程,就会自动生成 "项目名-Swift.h"的 隐藏文件文件,

2.简单点的话,在任意OC文件中直接引入 "项目名-Swift.h"文件,就可以使用项目中Swift中的内容了.一般可以在pch中 #import "项目名-Swift.h" 隐藏文件即可(注意引入的名字包含的Swift是大写开头)

3.验证接入成功: Command+鼠标左键点击该文件,能显示出隐藏文件的内容,说明接入成功




4.然后就能直接使用Swift的类



现有Objective-C 项目接入Swift 的第三方pod库

打开pod file

基于以上流程,在pod文件的头部 ,新增一行 use_frameworks! 然后打开终端对项目pod install 安装并更新项目的的第三方库

分类:
iOS
标签:
分类:
iOS
标签:
收藏成功!
已添加到「」, 点击更改