Ojective-C与swift混编

Objective-C作为当前主流的iOS编程的语言,但目前的swift有着赶超oc的劲头,从苹果14年开始发布swift,到现在swift的项目也随处可见了。swift的优势,自己google,小白在这里只说一说在xcode下oc与swift如何混合编程

oc中使用swift

首先,在工程的Build Setting中把defines module设为YES

1.将defines module设为YES

然后,把product module name设置为工程项目的名字
2.将product module name设为工程项目的名字

最后,在你的oc文件中导入projectName_swift.h
3.在oc文件中导入projectName_swift.h

注意:projectName_swift.h这个文件是系统自己创建的,勿手动创建

swift中使用oc

swift中使用oc,需要依赖Objective-C bridging header将相关文件暴露给oc,创建Objective-C bridging header文件的方式有两种
1.自动创建
当你在swift中尝试创建oc文件时,系统会自动帮你创建Objective-C bridging header

1.创建文件

2.创建oc文件

3.弹框创建bridging header文件

此时除了你创建的.h.m之外,还会额外多出一个叫项目工程名-Bridging-Header.h文件,这个文件导入的类是可以暴露给swift看到的,接下来要做的就是#import xxx
2.手动创建
file>new>file>(iOS or OS x)>source>header file
1.创建header file

注意:此时名字一定是要工程项目名-Bridging-Header

最后一步,在项目的Build Settings选项里,要确保Swift Compiler选项里有这个Bridging Header文件的设置,路径必须指向文件本身,而不是目录!

2.指向bridging header文件

到此结束,感谢你们能读到这里,这篇文章只是小白的粗浅理解,不对之处敬请指出!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 前言 Swift已推出数年,与Objective-C相比Swift的语言机制及使用简易程度上更接地气,大大降低了i...
    仁伯阅读 19,045评论 30 76
  • 混编 混编也无非两种情况, 在Objective - C工程或者文件使用Swift的文件; 在Swift工程或者文...
    疯子一样男人阅读 4,286评论 0 1
  • 一、Swift趋势 虽然还处于过渡时期,但趋势很明朗了,Swift 必然会替代 Objective-C,并且比想象...
    奋斗的蜗牛阅读 11,421评论 1 34
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 14,193评论 4 61
  • 旁听了上午的新闻采编人员的面试的,感受如下: 1.90后的年轻人参与国际分工,一个应聘的23岁的男生,能参与到央视...
    中亚的小麦阅读 3,169评论 3 1