美文网首页
object-c项目使用swift库

object-c项目使用swift库

作者: 简单点的笨演员 | 来源:发表于2020-12-25 14:10 被阅读0次

swift在iOS开发中越来越流行,现在有些ios库已经改用swift不再提供object-c版本了。如果我们的项目是object-c的,又想用swift的库,可以添加一个小小的swift文件作为中间件(wrapper)。这个中间件调用swift库实现我们想要的功能,并导出object-c接口,我们的项目直接调用导出的object-c接口。注意,项目名不能有中文,否则会出错。

一、添加想要使用swift版本的库;

二、在项目中添加一个swift文件,名字随意,后面也可以修改,如Test.swift。如果是第一次在工程中创建 Swift 文件,会弹出下面的提示,选择第一个就行了。


三、在Test.swift中添加功能代码,@objc表示导出到object-c。

@objc class SomeClass:NSObject {
    @objc func someFunction(_:Any) -> Bool {  
         // do something here
    }
}

四、在 Object-C 在需要调用 Swift 代码的类中文件中导入 Swift 头文件,这个是固定写法(规则是:工程名-Swift.h,文件在build的时候自动生成,工程名如果有中文可能会出错),然后就可以调用我们刚才的 Swift 代码了:

#import <你的工程名-Swift.h>   // 工程名不能有中文

.....

SomeClass *test=   [[SomeClass alloc] init];
[test someFunction:self];

相关文章

网友评论

      本文标题:object-c项目使用swift库

      本文链接:https://www.haomeiwen.com/subject/rhnmnktx.html