iOS- Swift和Object-C的混合编程

1.前言  

 
事实证实,在短期内Swift还取代不了Object-C,
并且....
Apple Swift 开发小组的人说的:「We'll recommend people start with Swift, sure, but ObjC isn't going anywhere. Our goal's to work with the platform, not reinvent.」嗯,Apple 官方对 Swift 和 ObjC 的态度很明白了,准备同时学好两门语言吧.
 
 
 
那么咱们首先要会的就是两种语言的混合编程了,今天简单入门下- 
 

2.Swift调用Object-C代码

 2.1.建立一个Swift project  

 
 

2.2.建立一个Object-C class

 
这里会显示是否须要建立一个 OC桥梁的header,而后咱们选YES
这里是确定要建立的
 
而后在OC的 class里编写一个简单方法
 
 

2.3.在桥梁文件中导入OC文件的头文件  

若是不导入的话,在Swift文件里将会没有提示,而且没法调用
 

2.4.在Swift文件中建立对象,运行  

 
如图:调用sayhello方法成功.
 
 
 

3.Object-C调用Swift代码  

3.1.建立一个Object-C project  

 
 

3.2.建立一个Swift class  

 
这里仍然会显示是否须要建立一个OC桥梁的header,而后咱们选YES
这里是确定要建立的

2.3.桥梁文件  

这里和Swift调用OC 不一样重点,须要注意下编程

这个是Swift主动用来调用OC语言所须要的
这里咱们是OC调用Swift语言,因此不用在这个桥梁文件中导入Swift文件
_____________
为何呢?
由于建立它的同时,xcode还建立了一个隐藏文件
而这个隐藏文件才是咱们OC调用Swift语言的必须品
那么它叫什么名字呢?
 
“项目工程名”+ “-” + “Swift”  .h
 
咱们须要在OC的class里,导入这个隐藏文件
虽然咱们看不到,可是其实它是存在的.
 
 
 

2.4.在OC文件中建立对象,运行  

 
注意:这里OC建立完对象,调用方法的时候 有时会出现——
调用方法的时候没有提示,甚至报错说找不到这个方法
这时咱们不用管,直接运行
 
事实证实运行成功,以后报错信息就会消失
 如上图:调用sayhello方法成功.
 
 
谢谢你们,还有什么疑问能够评论中提出,我有时间会耐心回复!
 
做者:  清澈Saup
出处:   http://www.cnblogs.com/qingche/
本文版权归做者和博客园共有,欢迎转载,但必须保留此段声明,且在文章页面明显位置给出原文链接。
相关文章
相关标签/搜索