OC-Swift混编相关配置

1.oc调用swift

在oc中使用swift代码,需要把swift代码作为module暴露给oc进行调用

配置如下:

OC-Swift混编相关配置_第1张图片
图1

对于需要混编的swift类添加@objc声明,或继承NSObject或者NSObject子类.

当我们需要调用swift类时,引入头文件#import “Product Module Name-Swift.h”,其中Product Module Name为上图配置中的名字(OC_call_Swift)

ps:Product Module Name-Swift.h是由编译器自动生成,如果导入后,无法使用该类,编译一下.并且只有在工程中包含至少一个Swift文件的时候,才会自动生成这个文件,所以如果工程中如果没有Swift文件的时候,就算在配置中设置对了,import该文件也会报错。

oc调用swift,也要把桥接文件也一同创建好,否则会报错

2.swift调用oc

    新建一个桥接文件(一般在swift项目中新建oc类,会提示新建桥接文件,若未提示,直接新建就行).然后配置路径.在该桥接文件中导入oc类头文件,即可在swift中使用oc类.调用方法使用swift方式调用

OC-Swift混编相关配置_第2张图片
图2
OC-Swift混编相关配置_第3张图片
图3

(一般提示新建的桥接文件不需要配置路径,直接使用就好).配置路径时,使用$(PROJECT_NAME)相对工程名替换项目路径

你可能感兴趣的:(OC-Swift混编相关配置)