几天前,我开始新的App的开发了。终于有机会把swift用在实战中了,也学到了之前纯学语法时没有机会获得的知识。

这篇博文中,我就如何使用swift、OC混编做一个介绍。

OC中使用Swift

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

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

最后一步,在你的OC文件中导入 ProjectName-Swift.h.

注意:ProjectName-Swift.h 这个文件是系统自己创建的,千万不要手动创建。

Swift中使用OC

Swift代码引用OC,需依靠 Objective-C bridging header 将相关文件暴露给Swift。

创建 Objective-C bridging header 有两种方法:

1、当你在Swift项目中尝试创建OC文件时,系统会自动帮你创建 Objective-C bridging header .

此时除了 .h 、.m 文件之外,会额外多出一个叫做 项目工程名-Bridging-Header.h 的文件,这个文件中导入的类是可以暴露给Swift看到的。你要做的,只是#import XXXX.

2、自己创建 Objective-C bridging header

File > New > File > (iOS or OS X) > Source > Header File

切记,名字 一定要 是 项目工程名-Bridging-Header.

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

最新文章

  1. TF Boys (TensorFlow Boys ) 养成记(四)
  2. Inno Setup使用技巧
  3. 如何在终端实时展现git分支
  4. [HDOJ5723]Abandoned country(最小生成树,期望)
  5. UVALive 6609 Minimal Subarray Length (查找+构建排序数组)
  6. 更换centos源
  7. NSArray使用小结
  8. Parrot源代码分析之海贼王
  9. 暑假练习赛 006 E Vanya and Label(数学)
  10. Linux基础常用命令
  11. Python练习六
  12. CF369E Valera and Queries
  13. 08_Flume_Selector实践
  14. 宏定义中的反斜杠"\"和宏定义的细节说明
  15. 解决protobuf import路径的问题
  16. [NOI2017]蔬菜 贪心
  17. spring boot 自定义静态资源 位置..
  18. 【Mood-13】Android --如何从初级工程师进化为高级工程师
  19. 【BZOJ2457】[BeiJing2011]双端队列 贪心+模拟
  20. Python9-网络编程4-day33

热门文章

  1. encodeURIComponent() 函数
  2. PUTTY无法远程连接服务器故障解决[转]
  3. apktool给软件加注册机修改图标和文件名
  4. 爬虫_vs_反爬虫
  5. 初始化本地项目到远程仓库【git】
  6. Python初识 - day5
  7. Log4j扩展使用--日志记录器Logger
  8. JAVA中文件与Byte数组相互转换的方法
  9. SSH反向连接及Autossh
  10. 【转】globk和glorg中使用的apr文件