在swift 项目中使用objective-c

Demo 源码地址

  • 新建立一个Single View Application

language 选择swift

  • 在Xcode默认生成的ViewController.swift上增加一行日志输出
    增加日志输入

  • 此项目基础上,新建一个oc 类,并实现它
    新建立一个OC类

  • 此时Xcode会提示建立一个项目与之对应的Bridging Header文件,也就是通常所说的swift与oc的桥接文件(注意并不是每新建立一个OC都要建立桥接文件)。
    提示建立bridging header文件

新建立三个文件,一个OC头文件,一个OC实现文件,一个Bridging Header文件

  • 在OC中定义一个打印日志的方法,并实现它
    - (void)printLog:(NSString *)log {
    NSLog(@”%@”, log);
    }

  • 此时在swift中不能直接调用NSPrintLog类,Bridging Header需要引入此NSPrintLog头文件

    import “NSPrintLog.h”

  • 最终调用显示效果
    最终效果

最后Bridging Header 是在什么地方起的作用呢?
* Xcode 自动生成的Bridging Header将会自动配置在Build Settings中
Bridging Header文件配置

所以如果swift调用OC失败,请检查Bridging Header是否正常配置

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值