iOS-OC、Swift 混编之桥接文件

 

新建一个OC语言的项目,然后添加一个基于NSObject的Swift文件SwiftFileModel类

.swift

import UIKit

class SwiftFileModel: NSObject {
    func firstMethod() {
        print("SwiftFileModel");
    }
}

 

这时会提示你是否添加桥接文件,点击创建后体统会自动创建一个桥接文件,但是如果点击取消后,就需要自己建桥接文件;

《iOS-OC、Swift 混编之桥接文件》  

手动创建桥接文件

新建h文件,名字随便起,但最好专业些,我这里不专业

《iOS-OC、Swift 混编之桥接文件》

 

《iOS-OC、Swift 混编之桥接文件》

然后去 Build Settings 搜索brid,找到 Objctive-C Bridging Header,将刚才建好的桥接文件直接拖入,会自动引用路径;

 

《iOS-OC、Swift 混编之桥接文件》

 

 《iOS-OC、Swift 混编之桥接文件》

到这里桥接文件及配置就OK了;

Swift调用OC

新建一个基于NSObject的OC文件OcFileModel类

.h

#import <Foundation/Foundation.h>

@interface OcFileModel : NSObject
+ (void)ocLog;
@end

.m

#import "OcFileModel.h"

@implementation OcFileModel
+ (void)ocLog{
    NSLog(@"OcFileModel");
}
@end

将OcFileModel的头文件 #import “OcFileModel.h” 添加到桥接文件中

《iOS-OC、Swift 混编之桥接文件》

在SwiftFileModel.swift类中实现调用ocLog方法

《iOS-OC、Swift 混编之桥接文件》 

 OC调用Swift

《iOS-OC、Swift 混编之桥接文件》

 

    原文作者:macro小K
    原文地址: https://www.cnblogs.com/wangkejia/p/7891374.html
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞