如何在swift中使用cocoapods导入的第三方oc库
2014-09-30 14:23
381 查看
假如你来到这里,说明你已经开始着手使用swift这门新语言了。
就像Java有Maven一样,Objective-C也有自己的依赖管理工具cocoapods。
但是由于swift才出来不久,目前很多cocoapods管理的第三方库依然是由Objective-C编写的。
为了能够在swift中使用这些类库,需要在Xcode中进行一些配置。
假设你的项目是基于cocoapods的,并且是通过XX.xcworkspace打开的。(Xcode6以上)
为了进行演示,假设导入的第三方库是MBProgressHUD。下面讲解如何在swift中使用该类库。
步骤一:创建头文件(该头文件是连接oc到swift的桥梁)
在project navigator中右击项目,选择New File... -> iOS -> Source -> Header File,给文件命名后(头文件命名任意,假设为Bridging-Header.h)保存。
步骤二:打开该文件,清空里面的内容,然后导入你想要的类库并保存。
#import "MBProgressHUD.h"
![](https://img-blog.csdn.net/20140930140843890?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdG91bmFvYnVu/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
步骤三:
进入到Build Settings,在搜索框中输入bridg,找到Objective-C Bridging Header,选项,把头文件的路径赋值给该选项。如图所示:
![](https://img-blog.csdn.net/20140930140756671?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdG91bmFvYnVu/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
步骤三:
使用引用的代码,比如在viewDidLoad方法里添加显示进度框:
运行效果如下:
![](https://img-blog.csdn.net/20140930141200090?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdG91bmFvYnVu/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
--------------------
-----
-----
需要注意的是,假如不是通过cocoapods引入的类库,而是直接拷贝到项目中(Build Settings的Objective-C Bridging Header没有赋值过,Xcode会弹出如下对话框:
![](https://img-blog.csdn.net/20140930141734383?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdG91bmFvYnVu/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
选择Yes后,项目的根目录下会自动创建一个名字为XXX-Bridging-Header.h的头文件(XXX为你的模块名(module name)一般就是你的product name),
另外在Build Settings的Objective-C Header File的值也被自动设成头文件的路径。
如图所示:
![](https://img-blog.csdn.net/20140930142132502?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdG91bmFvYnVu/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
只要在自动生成的头文件里import你想要的第三方类库后,就可以随意在你的项目源文件里使用它了。
[reference
Using Swift with Cocoa and Objective-C ]
注:以上截图来源于Xcode6 beta版本,在最终正式版发布之前,该截图的内容可能会发生改变。
就像Java有Maven一样,Objective-C也有自己的依赖管理工具cocoapods。
但是由于swift才出来不久,目前很多cocoapods管理的第三方库依然是由Objective-C编写的。
为了能够在swift中使用这些类库,需要在Xcode中进行一些配置。
假设你的项目是基于cocoapods的,并且是通过XX.xcworkspace打开的。(Xcode6以上)
为了进行演示,假设导入的第三方库是MBProgressHUD。下面讲解如何在swift中使用该类库。
步骤一:创建头文件(该头文件是连接oc到swift的桥梁)
在project navigator中右击项目,选择New File... -> iOS -> Source -> Header File,给文件命名后(头文件命名任意,假设为Bridging-Header.h)保存。
步骤二:打开该文件,清空里面的内容,然后导入你想要的类库并保存。
#import "MBProgressHUD.h"
步骤三:
进入到Build Settings,在搜索框中输入bridg,找到Objective-C Bridging Header,选项,把头文件的路径赋值给该选项。如图所示:
步骤三:
使用引用的代码,比如在viewDidLoad方法里添加显示进度框:
override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view, typically from a nib. // 如同pch一样,使用该类库无需在顶部导入该类库的头文件 MBProgressHUD .showHUDAddedTo(self.view, animated: true) }
运行效果如下:
--------------------
-----
-----
需要注意的是,假如不是通过cocoapods引入的类库,而是直接拷贝到项目中(Build Settings的Objective-C Bridging Header没有赋值过,Xcode会弹出如下对话框:
选择Yes后,项目的根目录下会自动创建一个名字为XXX-Bridging-Header.h的头文件(XXX为你的模块名(module name)一般就是你的product name),
另外在Build Settings的Objective-C Header File的值也被自动设成头文件的路径。
如图所示:
只要在自动生成的头文件里import你想要的第三方类库后,就可以随意在你的项目源文件里使用它了。
[reference
Using Swift with Cocoa and Objective-C ]
注:以上截图来源于Xcode6 beta版本,在最终正式版发布之前,该截图的内容可能会发生改变。
相关文章推荐
- 如何在Swift开发中使用CocoaPods导入的第三方库
- 小胖说swift01--------如何在Swift开发中使用CocoaPods导入的第三方库
- 怎样在swift中使用cocoapods导入的第三方oc库
- [绍棠_Swift] Swift3.0中使用CocoaPods导入的第三方库
- [iOS]如何删除工程里面用cocoapods导入的第三方库
- iOS 彻底删除使用cocoapods导入项目的第三方
- swift 之使用第三方框架 cocoapods
- 关于使用cocoaPods,import导入时第三方库头文件没有提示问题的解决办法
- 如何在 Swift 项目中使用 CocoaPods
- 在Swift项目中使用cocoaPods导入第三方OC库
- iOS 如何删除利用cocoapods导入的第三方
- 在swift中cocoapods可以导入哪些第三方库
- [iOS]如何删除工程里面用cocoapods导入的第三方库
- 使用cocopods导入第三方库报错 : [!] Pods written in Swift can only be integrated as frameworks; add `use_framew
- 使用cocoapods导入的第三方类库
- iOS 彻底删除使用cocoapods导入项目的第三方
- iOS开发使用cocoapods导入第三方工具
- 关于cocoapods导入第三方的使用
- iOS -- 二维码生成使用cocoapods导入libqrencode第三方库
- 【iOS】Xcode 使用 CocoaPods 导入第三方库后没有提示