OC Swift混编 记录

OC 项目混编Swift

  1. 在OC项目中初始创建swift文件时,会提醒创建桥接文件

    点击 Create Bridging Header 就会生成一个桥接文件

    如果误点导致没有创建桥接文件,可手动创建一个 “工程名-Bridging-Header.h" 的头文件,然后在工程中配置文件(参考下一步)

  2. 工程配置
    target | Build Settings
    在这里插入图片描述
    在这里插入图片描述

  3. swift 引用 OC
    在桥接文件中导入Swift需要访问的OC类,.Swift文件中即访问OC的类了

  4. OC 引用 Swift
    需要导入隐式头文件:xxx-Swift.h,xxx-Swift.h在项目中是看不到的,但是确实是可以import的
    编辑import时,Xcode 并不会有导入该头文件的快捷提示
    我们可以创建一个头文件,然后在该头文件中引入这个隐式头文件:

问题

  1. OC 中无法调用Swift的方法:

Swift4新特性介绍3(Substring、swap、@objc)

隐式 @objc 自动推断

class SwiftClass { }

@objc extension SwiftClass {
   func foo() { } //包含隐式的 @objc
   func bar() { } //包含隐式的 @objc
}
发布了34 篇原创文章 · 获赞 20 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/ZhangWangYang/article/details/99574511