在项目里交叉使用Swift和OC
来源:互联网 发布:设计师有趣的事 知乎 编辑:程序博客网 时间:2024/04/30 21:02
From: http://blog.csdn.net/huangchentao/article/details/35278663
Swift and Objective-C in the Same Project
在项目里交叉使用Swift和OC
Swift与OC的兼容性使得你可以在项目里使用Swift+OC的方式编写应用程序,称为混合+匹配(mix and match),用这种方式可以一边使用享受新语言的快速特性,一边无缝的接合你已有的OC代码(原文听起来好NB的样子,其实也就那么回事),不管项目最初是用OC编写的还是新建的Swift项目,都可以在这个项目里用OC和Swift混合继续开发
Importing Objective-C into Swift
在Swfit代码中添加OC文件的时候,需要依赖一个bridging header文件,Xcode会在你新建一个OC文件的时候自动帮你创建(项目是使用Swift语言创建的),点击yes,Xocde就会在新建OC文件的同时帮我们新建一个 xxx-Bridging-Header.h文件,xxx是你的项目名称(Product Module),然后我们得编辑这个文件才能让Swfit代码调用OC代码
在项目的xxx-Bridging-Header.h文件里,添加需要在Swift里调用的OC文件,然后就可以在Swfit代码中调用了
OBJECTIVE-C
- #import "XYZCustomCell.h"
- #import "XYZCustomView.h"
- #import "XYZCustomViewController.h"
#import "XYZCustomCell.h"#import "XYZCustomView.h"#import "XYZCustomViewController.h"
SWIFT
- let myCell = XYZCustomCell()
- myCell.subtitle = "A custom cell"
let myCell = XYZCustomCell()myCell.subtitle = "A custom cell"
在项目的 Build Settings 选项里,要确保Swift Compiler选项里有这个Bridging Header文件的设置,路径必须指向文件本身,而不是目录。
Importing Swift into Objective-C
当在OC里调用Swift中的代码时,需要依赖一个xcode自动生成的头文件,这个自动生成的头文件定义了项目中所有的Swift文件,这个头文件的命名为 “xxx-Swift.h” ,xxx为项目的名称,此外就不需要再做任何事情了,你只需要在OC代码里导入这么一个文件,就可以跟没事一样拿任意一个Swift中的代码用了- #import “ProductModuleName-Swift.h”
#import “ProductModuleName-Swift.h”
以上归纳为一个表
调用Swift代码调用OC代码Swift代码无需声明#import "ProductModuleName-Swift.h”OC代码依赖bridging header文件#import "Header.h”
0 0
- 在项目里交叉使用Swift和OC
- 在项目里交叉使用Swift和OC
- 在项目里交叉使用Swift和OC
- 在项目里交叉使用Swift和OC
- 在项目里交叉使用Swift和OC
- 在项目里交叉使用Swift和OC
- 在项目里交叉使用Swift和OC
- 在项目里交叉使用Swift和OC
- 在项目里交叉使用Swift和OC
- 在Swift项目中使用OC,在OC项目中使用Swift
- 在Swift项目中使用OC,在OC项目中使用Swift
- MBProgressHUD在oc、swift项目中的封装使用
- 如何在一个项目中是OC和Swift开发
- OC项目中使用Swift
- OC项目中使用Swift
- OC 的 #pragma mark - 在Swift 里的代替方法
- 如何在OC类里 调用swift类
- 在Swift工程中使用OC
- 【NOIP2003】侦探原理 大模拟 附数据 附题解 附注意
- 出生年月日级联
- Entity Framework学习初级篇5--ObjectQuery查询及方法
- 注解Annotation
- 软件开发
- 在项目里交叉使用Swift和OC
- 2014年全国最新企业名录免费采集下载
- Entity Framework学习初级篇6--EntityClient
- Android GridView属性集合
- 【Spark亚太研究院系列丛书】Spark实战高手之路-第一章 构建Spark集群(第三步)(3)
- 使用Spring2.5的Autowired实现注释型的IOC
- android 如何增大开机铃声
- 梯度下降法
- Entity Framework学习初级篇7--基本操作:增加、更新、删除、事务