Swift和Objective-C混合编程——Swift调用OC

Posted gccbuaa

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Swift和Objective-C混合编程——Swift调用OC相关的知识,希望对你有一定的参考价值。

       在ios应用的开发中。Swift必将代替OC,两者的趋势是“短期共存,长期代替”。但曾经有太多的代码是用OC语言完毕的,而Swift的开发也从 OC中继承了非常多的特性。两者也是有非常多的类似之处。

眼下Swift和OC能够实现无缝的混合编程。

       我这里会实现一个简单的Swift调用OC的iOS实例,实现过程是十分的简单的。

就像我们全部的Hello World一样。

详细操作过程例如以下:

(1)Xcode中新建一个iOS项目,语言选择Swift。设备选择iPhone.文件夹结构例如以下:

技术分享

(2)然后在该项目中右键New File,选择 Cocoa Touch Class,  输入类名,继承NSObject,语言选择Objective-c.选择Next后。第一次在Swift中创建OC类的时候,会弹出例如以下对话框,点击Yes就可以:

技术分享


(3)创建完OC类之后,项目的文件夹结构例如以下:发现文件夹结构中多了三个文件,Hello.h,Hello.m各自是我创建的OC的类,等下会用Swift来进行调用。另一个就是Bridging-Header.h,能够把这个理解为是OC和Swift之间桥接的文件。

技术分享


(4)然后在Bridging-Header.h,中引入OC类的头文件,代码为:#import "Hello.h"

(5)然后在OC类中实现一个简单的方法。输出一条语句,先在Hello.h中进行声明:

技术分享

然后在Hello.m中使用OC语法实现该方法:

技术分享


(6)然后在Swift的类ViewController.swift的viewDidLoad()中调用OC的方法:

技术分享


(7)最后执行打印结果,

技术分享.


      至此,Swift就能方便的调用OC的代码了。

是不是非常方便的。


github主页:https://github.com/chenyufeng1991  。欢迎大家訪问!










以上是关于Swift和Objective-C混合编程——Swift调用OC的主要内容,如果未能解决你的问题,请参考以下文章

Swift和Objective-C混合编程——Swift调用OC

《从零开始学Swift》学习笔记(Day 69)——Swift与Objective-C混合编程之语言

《从零开始学Swift》学习笔记(Day 69)——Swift与Objective-C混合编程之语言

《从零开始学Swift》学习笔记(Day 69)——Swift与Objective-C混合编程之语言

Swift2.0(18)与Objective-C的混合编程

Swift与Objective-C和Cocoa混合编程的基本设置!