1 将oc的代码拖入项目中
2 新建一个头文件 在头文件中导入你想用的oc头文件 import "****.h"
3 在设置build Setting 中搜索bird 找到 Objective-C Bridging Header 在后面设置上你想桥接的文件 和OC中设置Pch 一样
项目名/你的桥接头文件.h
1 将oc的代码拖入项目中
2 新建一个头文件 在头文件中导入你想用的oc头文件 import "****.h"
3 在设置build Setting 中搜索bird 找到 Objective-C Bridging Header 在后面设置上你想桥接的文件 和OC中设置Pch 一样
项目名/你的桥接头文件.h
转载于:https://www.cnblogs.com/ZhangShengjie/p/6781784.html
转自:http://www.bubuko.com/infodetail-1127864.html
1.项目上右键,New File选择Header File,选择文件目录,然后确定。
??
2.点击项目-->TARGETS-->Build Settings中找到Swift Compiler,里面有一项:Objective-C Bridging Header,双击右面空白处会弹出输入框,将刚才创建的Header文件拖到输入框中。
??
3.在Header中输入需要引用的<.h>文件,就可以引用OC的代码了。
#import "AwesomeMenu.h"?
一般在原OC项目里新建一个swift文件,Xcode就会提示是否生成桥接文件
但是有些时候可能没有提示,那就需要自己手动建立一系列桥接:
1.swift中用OC:
#import <CommonCrypto/CommonCrypto.h>
例如上面这个库,把它写在bridge那里即可.
2.OC调用swift:
#import "ProjectName-Swift.h"
在OC的头引入以上语句,即可
同时,swift类里面要加上@objc(类名,变量名,方法名)
3.检查名字是否桥接名
4.检查新建的项目swift版本是否可用
有些就项目的配置文件,可能仍使用swift3等低版本
1. 打开你现在的OC 项目,新建文件-> 选择swift文件,名字自己定义喽。创建的时候,Xcode 会自动询问你,是否要创建桥接文件,点击创建,就会出来一个.h 文件,名字是这个格式的 :项目名称-Briding-Header.h2. 这个时候出现了2个文件。一个你创建的CYTSwiftTest.swift ,另一个是 项目名称-Briding-Header.h这样就可以了吗?答案No。接下来配置一下我们的,target3. 选择你的项目 - 配置a . buildSettings- > 搜索 defines module -> 设置YESb. buildSettings - > 搜索 Swift Complier - General - >你将会看到刚才自动生成的项目名称-Briding-Header.h .见图:在桥接文件下面,有一个项目名称-Swift.h 的文件
项目名称-Swift.h文件的作用: 自动帮你找到你在这个项目里所创建的.swift 文件,所以,您只需要在需要的地方引入这个文件就可以了,不需要导入每个文件。他会帮你自动获取的。在你的项目搜索不到这个文件,但是他实实在在存在的, 你只需引进就好啦项目名称-Briding-Header.h 的作用: 你可以把你swift需要的OC文件,放进这个.h 文件中。 swift语言就可以获取到了。4. 编译,然后就可以运行了。5. end