1.Swift工程中调用OC文件
- 在swift工程里,创建oc文件,自动弹出创建桥接文件,点确认,让xcode自动创建桥接文件
- 在桥接文件中,导入需要使用到的oc文件

- 调用

2.Swift工程中,oc文件再去调用swift文件
- 首先把Build Setting -> Packaging -> Define Modules 设为YES

- 查看确认项目名称
在Build Setting -> product MOD

- 在oc的文件中,导入xxx-Swift.h (这里的xxx就是项目名称),这个是系统隐藏的文件,看不到的。

3.@objc 和@objcMembers
- Swift中的类要给OC调用,要在类前面加@objcMembers
- 类扩展给OC调用,可以在类扩展前加@objc
- 单独的方法或属性要给OC调用,加上@objc
- 类扩展不想给OC调用,可以在类扩展前加@nonobjc
@objcMembers
class MyClass: NSObject {
func show() {
testOC().test()
print("show")
}
}
@objc
extension MyClass {
func test1() {
print("test1")
}
}
@nonobjc
extension MyClass {
func test2() {
print("test1")
}
}