在OC项目中实现swift与oc混编 相互引用
--------------------------------------------------------Begin--------------------------------------------------------------
- oc引用swift
 
-      通过cocoaclass新建一个swift文件  
![]()
 - finish->create,填好文件名 ,->finish,弹出是否要创建桥接文件的提示框
![]()
 - 如果没有弹出是否创建桥接文件的提示框,则进入配置工程里看看此处是否为空,如果不是空的,就删掉,因为是否创建桥接文件只会弹出一次,若你已经选择了一次not create,则下次不会再提示,想要再次创建桥接文件需在这里将设置清空,再从1开始
![]()
 -     建好后如图所示
![]()
 -  更改工程里的配置
![]()
 - 至此,文件创建好了,配置也做好啦,开始上代码,在需要引用swift的oc文件中导入头文件
#import "test-Swift.h"。(上图中注意的名字(一般为工程名)-Swift.h)
#import "ViewController.h" #import "test-Swift.h" @interface ViewController () @end @implementation ViewController - (void)viewDidLoad {
TestSwift *ar = [[TestSwift alloc] init];
[super viewDidLoad];
}oc中引用swift完毕
 
- swift引用oc,如在TestSwift中要引用ViewController这个类
 
- 跟上面1-5步骤一样
 - 在桥接文件里引入要引用的OC类的头文件,
// // Use this file to import your target's public headers that you would like to expose to Swift. // #include "ViewController.h"
 - 在TestSwift文件里进行引用
import UIKit class TestSwift: NSObject { let vc:ViewController = ViewController() }
-----------------------------------------------------End--------------------------------------------------------------
 
                    
                





                
            
        
浙公网安备 33010602011771号