Objective-C 和 Swift 第三方库使用

注1:文章写于2016年9月,(swift 3.0、Xcode 8)不一样版本可能不一样,仅做参考。
注2:我的总结出的最好方式是使用cocoapods,没有用过的请参看以前的文章。git

OC 第三方框架以 AFNetworking 3.1.0 为例。
Swift 第三方框架 Alamofire 4.0.0 为例。github

1、经过cocopods导入项目:

(1)搜索第三方库
(2)建立Podfile文件
(3)编辑Podfile文件
(4)导入第三方库到工程swift

一、第三方库是swift库,导入到swift项目。

用到的文件中须要:import Alamofiresegmentfault

二、第三方库是swift库,导入到OC项目。

不考虑xcode

三、第三方库是OC库,导入到swift项目。

用到的文件中须要:import AFNetworking框架

四、第三方库是OC库,导入到OC项目。

用到的文件中须要:#import "AFNetworking.h"测试

2、直接将文件粘贴到项目:

测试发现,有些第三方库拖进swift项目目录里直接能够用,好比IQKeyboardManagerSwift等。
若是第三方库是swift,不须要import,直接可用;若是第三方库是OC,在Bridge头文件中添加。
缘由分析:https://segmentfault.com/q/10...ui

一、第三方库是swift库,粘贴到swift项目。

参考下面的A
(1)在项目目录下使用git语句:git submodule add https://github.com/Alamofire/Alamofire.git
或者 去官网上下载下来将整个文件夹放到项目目录下
(2)将下载到本地的文件夹中Alamofire.xcodeproj 文件拖到项目中去
(3)General->Embedded Binaries-> + -> iOS -> Add
在须要用到的swift文件中:import Alamofirespa

二、第三方库是swift库,粘贴到OC项目。

不考虑code

三、第三方库是OC库,粘贴到swift项目。

A. 添加库方法
(1)在项目目录下使用git语句:git submodule add https://github.com/AFNetworking/AFNetworking.git
或者 去官网上下载下来将整个文件夹放到项目目录下
(2)将下载到本地的文件夹中AFNetworking.xcodeproj 文件拖到项目中去
(3)General->Embedded Binaries-> + -> iOS -> Add
图片描述
在须要用到的swift文件中:import AFNetworking

B. 在A的基础上(或者用cocoapods导入OC框架后),建立Bridge头文件,这样不须要每次写impot就能够整个项目使用。
(1)建立一个普通的头文件,通常命名为项目名-Bridge-Header.h
(2)在头文件里面编写:

#ifndef Swift_test_Bridging_Header_h
#define Swift_test_Bridging_Header_h
 
#import <AFNetworking/AFNetworking.h>
 
#endif

(3)添加头文件到Build Settings -> Objective-C Bridging Header

==>快捷方法:
新建一个OC文件,选择自动建立头文件,而后在头文件里面编写 如上内容,删除OC文件。
Build Settings -> Objective-C Bridging Header 会自动添加。
图片描述

四、第三方库是OC库,粘贴到OC项目。

用到的文件中须要:#import "AFNetworking.h"

3、import时<>括号和""的区别

(1)在项目中导入库或者类的时候常常看到" #import <库名>" 或者 “#import '类名.h'" .(2)""表示从当前项目路径开始寻找文件,若是找不到,则到系统(项目)中配置的头文件路径去找;(3)<>表示直接到系统(项目)中配置的头文件路径去找。

相关文章
相关标签/搜索