美文网首页
Swift与OC混编

Swift与OC混编

作者: shuigenObba | 来源:发表于2017-08-16 16:42 被阅读48次

Swift 已推出数年,与Objective-C相比Swift的语言机制及使用简易程度上更接地气,也大大降低了iOS入门门槛。iOS10推出后,Xcode8也推出了更新,Xcode8下iOS版本最低适配已经变为iOS8.0,而且Swift版本也趋于稳定,从某种意义上来说,Swift的时代正式开始,替代Objective-C也只是时间问题。但是有些时候不得不使用Swift与Objective-C混编。

今天我们来看看两者混编的时候需要注意的问题

混编无非两种情况

  • 在Objective-C工程中使用Swift文件
  • 在Swift工程中使用Objective-C文件(这种情况居多)

混编中的两个重要文件

1.桥接文件

桥接文件ProjectName-Bridging-Header.h,在首次创建其他文件的时候,会自动生成。如果不小心删除后,也可以手动添加,不过名字必须是ProjectName-Bridging-Header.h头文件(名称组成:工程名-Bridging-Header.h),如果名字记不清也可以自己新建Header file后,在Targets-->Build Settings-->Swift Compiler - General-->Objective-C Bridging Header配置文件路径,这个文件主要是Swift使用OC类时使用。

2.Objective-C Generated Interface Header Name文件

这个文件是混编时,系统生成的Swift文件对应的Objective-C的头文件,具体可以在Targets-->Build Settings-->Swift Compiler - General-->Objective-C Generated Interface Header Name进行配置,默认文件名是工程名-Swift.h,一般不做改动。

Snip20170816_7.png
1.在Objective-C工程中使用Swift文件

在OC中调用的时候也OC 写法一样,加上 #import即可 会自动添加工程名.swift

OC中引入Swift文件.png
2.在Swift中使用OC文件

在桥接文件中引入需要的头文件,具体的使用,按照对用的Swift语法结构来写

Swift桥接文件引入OC文件.png
3.SubClass

对于自定义的类,Objective-C不能继承来自Swift的类,但是Swift可以继承来自OC的类

4.OC中的宏定义

在Swift中只能使用简单的一些宏定义

Snip20170816_6.png
5.s使用OC中的block
OC中BLock定义.png .m文件 block实现.png swift 中实现OC的Block.png

当然还有很多我这里没有总结出来,希望大家在遇到需要使用的时候有哪些本文章没有涉及的也可以告诉我,大家一起学习,一起进步。

相关文章

  • Swift

    混编 15、OC与Swift的混编_海森堡_lichangan的博客-CSDN博客_oc swift 混编[htt...

  • oc Swift 混编

    oc Swift 混编 oc 项目 混编Swift1.1 oc 调用 Swift 的类 和 方法步骤: ...

  • OC与Swift混编 / Mix & Match

    OC与Swift混编 / Mix & Match OC in Swift 通过Header File创建Bridg...

  • 自制Framework:swift与OC混编,自定义module

    为何要swift与oc混编 在ios开发中,swift与oc的混编,几乎是不可避免的。2014年,Apple在开发...

  • OC与Swift混编

    OC与Swift混编 一.objectivec与Swift相互调用对照 OC interface文件如下 转换后对...

  • Swift与OC混编

    Swift与OC混编:OC文件使用Swift文件时,引入#import (项目名字)-Swift.h。(系统帮我们...

  • iOS开发之一Swift与OC混编

    Swift与OC混编:OC文件使用Swift文件时,引入#import (项目名字)-Swift.h。(系统帮我们...

  • OC和Swift混编手动创建桥接文件及命名空间

    Obj-C混编Swift && Swift混编Obj-C Swift引用OC实现通过桥接头文件,OC引用Swift...

  • OC和Swift混编一

    OC工程下混编 Swift工程下混编请查看OC和Swift混编二 1.建一个OC工程命名为OCTestSwift ...

  • swift与OC混编

    swift与OC混编的总结 现在的swift开发多数会用到混编。swift和oc是通过桥接文件来实现的。无论是在o...

网友评论

      本文标题:Swift与OC混编

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