oc 和 swift 互调
swift 中调用 oc 的类
创建一个oc的项目,在项目里创建swift文件的话,Xcode会自动提示,要不要创建桥接文件,如下图所示:
选择Create Bridging Header,会生成一个工程名-Bridging-Header.h
的桥接文件,并且在Buding Setting -> Swift Complier 下添加好文件路径的配置,如下图:
当然如果不选择创建此文件的话,我们手动创建并配置路径也是可以的。
将 swift 需要使用的 oc 的类的头文件添加到 xxx-Bridging-Header.h
中,然后就可以在 swift 中使用oc的类了,如下:
引用 oc 的类到桥接文件中
在swift 中使用 oc 的类
oc的类中使用swift类
将 swift 的类,方法等都改成public 的
需要在swift类的定义前加上 @objcMembers
直接在 oc 文件中是找不到 swift 文件的,如下
oc 中调用 swift 文件,只需要引头文件 工程名-Swift.h
即可,如下
如果引入头文件 #import “PersonalController.swift” 的话,PersonalController里会报 Expected ';' after top level declarator
的错误