Swift and Objective-C in the Same Project

一.在Swift中使用Objective-C 类

步骤1:新建一个Objective-C类,Xcode应该会提示你是否配置一个桥接头,如下:


选择Create Bridging Header,会自动生成一个 `<#YourProjectName#>-Bridging-Header.h `文件。

如果你没有看到这个提示,或者你偶然地删除了这个头文件。

解决办法:你可以添加一个新的 `.h `文件,并把它命名为 <#YourProjectName#>-Bridging-Header.h 。然后在Build Settings 中搜索Objective-C Beidging Header 输入`$(SRCROOT)Folder/<#YourProjectName#>-Bridging-Header.h (推荐)`;或者直接将目录中的`<#YourProjectName#>-Bridging-Header.h`直接拖动到输入框中.(不推荐,因为如果工程路径改变之后会有错误。)

步骤2:在`<#YourProjectName#>-Bridging-Header.h `文件中导入头文件,这里应该不会有代码提示,直接输入即可:`#import “YourCustomOC_Classes.h”`

步骤3:使用这个OC类

 在你的 `* .swift` 文件中,如下:

var instanceOfCustomObject: YourCustomOC_Classes = YourCustomOC_Classes()

instanceOfCustomObject.someProperty = "Hello World"

print(instanceOfCustomObject.someProperty)

instanceOfCustomObject.someMethod()

二 . 在Objective-C项目中使用Swift类

步骤1:新建 *. swfit 文件。Xcode应该会提示你是否配置一个桥接头,选择Create Bridging Header,会自动生成一个 `<#YourProjectName#>-Bridging-Header.h `文件。

步骤2:打开 Build Settings 修改这些参数:

- Defines Module : YES.

- Product Module Name : 你项目名字

- Install Objective-C Compatibility Header : YES

- Objective-C Generated Interface Header : 你项目名字-Swift.h

- Objective-C Bridging Header : ` $(SRCROOT)/myproject-Bridging-Header.h ` 


步骤3 :import Swift interface header in your *.m file

#import "你项目名字-Swift.h"

步骤4:Clean and rebuild your Xcode project.

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 14,222评论 4 61
  • 这是来自stack overflow上的一个回答,更多回答请查看:http://stackoverflow.com...
    lfb_CD阅读 7,198评论 0 2
  • 【中轴骨的连结:躯干骨的连结、颅骨的连结】 一、躯干骨的连结包括脊柱和胸廓的连结 二、脊柱 (一)椎骨间的连结 椎...
    一只小团子阅读 10,501评论 1 2
  • 其实挺感动的。一直以来觉得自己的人缘不好,没有什么朋友。 第一次收到大学同学寄来的二手书,也算是第一次完成心目中构...
    蒋羽燃阅读 1,820评论 0 0
  • 最近重读了红楼梦,有一些新的感慨。 还记得第一次阅读这本大家争相推荐的经典书籍,纯粹是因为好奇,读下来也没多少感受...
    annieqiong阅读 1,332评论 0 0