swift oc 相互调用

2023-04-16  本文已影响0人  tom__zhu

首先要记住有两个区别

1> bridging headers for projects

2> umbrella file for frameworks


工程中 swift调用OC

1. 创建 "工程名称"-Bridging-Header.h文件

创建桥接文件

image.png image.png image.png
2. 引入OC的.h头文件 就能在swift项目中调用相对于的OC类了.
image.png

oc调用swift

1. 工程配置

找到工程文件下的TARGETS -->Build settings中搜索 Product Module Name设置为工程名,这时工程会自动创建一个"项目名"-Swift.h的文件,该项目中为“SwiftTestProject-Swift.h”,这个文件用于oc调用swift文件, 默认不展示的.

image.png
2. 引入 "项目名"-Swift.h文件

在OC文件里面里面#import "项目名称-Swift.h", 注意这个文件没有提示,要手动打出来,然后就能在OC类里面使用swift的类了.

注意和总结

image.png

Swift与Objective-C互相调用(总结)

Frameworks

TBU

OC 调用Swift单例,需要加@objc和open / public

image.png
https://stackoverflow.com/questions/36771596/error-using-bridging-headers-with-framework-targets-is-unsupported
上一篇 下一篇

猜你喜欢

热点阅读