Swift与OC混编

简介: Swift一出来就比较受人欢迎,但是还是有很多的第三方库是不支持Swift的,个人也感觉Swift还有很长的路要走。而且最近连Swift的创始人都离开苹果公司了。。。。。。。。。加入Swift用到了第三方的东西那怎么办呢,其实很简单,Xcode会自动帮你创建一个桥接文件,用来连接Swift和OC这两种语言,同样的在OC里面用Swift也是一样。

Swift一出来就比较受人欢迎,但是还是有很多的第三方库是不支持Swift的,个人也感觉Swift还有很长的路要走。

而且最近连Swift的创始人都离开苹果公司了。。。。。。。。。

加入Swift用到了第三方的东西那怎么办呢,其实很简单,Xcode会自动帮你创建一个桥接文件,用来连接Swift和OC这两种语言,同样的在OC里面用Swift也是一样。

其实步骤都一样的,

第一种:在Swift中连接OC

步骤:

在新建一个OC类,到最后Xcode就会自动提示要不要创建Swift和OC的链接文件,点击创建即可,接着你就会发现项目里边就会多一个以项目开头的头文件,把要用到的OC类的头文件放到这个头文件里就可以了。

第二种:在OC中使用Swift

步骤:

和上面基本上一样,只需要再新建一个Swift类就可以啦,也会有一个桥接文件,但是这个桥接文件的目的主要是让Swift用OC类的,并不是让OC用Swift类的。

OC类使用Swift类真正起作用的是下面的几点:

第一:

找到项目文件->TARGETS->Build Settings->Packaging->Defines Module->YES或者直接在Build Settings里面搜索Defines Module

第二:

找到项目文件->TARGETS->Build Settings->Packaging->Product Module Name,记住这个字段或者直接在Build Settings里面搜索Product Module Name

第三:

在PCH文件中加入这段话,不知道PCH的点这里PCH文件的作用和配置

#import "刚才让你记住的字段-swift.h"

OK,这样就可以在OC的环境下调用Swift的类了

 

相关文章
|
6月前
|
Swift Perl
OC和swift混合工程更新库时报:target has transitive dependencies that include statically linked binaries
OC和swift混合工程更新库时报:target has transitive dependencies that include statically linked binaries
98 0
|
API Swift iOS开发
45 Swift和OC的混编
Swift和OC的混编
123 0
|
Swift iOS开发
iOS OC混编Swift 后者无法走断点
iOS OC混编Swift 后者无法走断点
81 0
|
Swift iOS开发
Swift - 与OC混编时如何创建桥接头文件
Swift - 与OC混编时如何创建桥接头文件
470 0
Swift - 与OC混编时如何创建桥接头文件
|
Swift iOS开发
oc与swift混编
1.swift中调用oc;2.oc中调用swift
288 0
oc与swift混编
|
Swift
Swift和OC控制器互相跳转
Swift和OC控制器互相跳转
321 0
|
Swift iOS开发
Swift - 如何用Reachability来混编判断网络状况
Swift - 如何用Reachability来混编判断网络状况
298 0
|
Swift iOS开发
Swift与OC的混编
Swift调用OC文件 OC调用Swift文件
378 0
Swift与OC的混编
|
Swift iOS开发 容器
iOS 仿支付宝银行卡界面(支持Swift/OC)
在有支付相关的APP中,都有对应的钱包,虽然现在的支付宝,微信支付很流行,但是都是需要绑定自己的银行卡,那么这个银行卡的卡包页面该怎么实现呢?在网上找了许久也没有找到合适的,那就索性自己造轮子。
380 0
|
Swift
OC 和 swift 创建单例方法
OC 和 swift 创建单例方法
326 0