swift 调用OC第三方AFNetWorking

文章转自:https://www.jianshu.com/p/9e13b40f4485

第一步:创建和配置Bridging-Header.h

Swift与OC进行混编,首先要有一个.h文件,这里使用Bridging-Header.h然后设置项目的Build Settings--Swift Compiler--Objective-C Bridging Header内容为DemoApp/Bridging-Header.h,这个与Bridging-Header.h位置有关,从项目的根目录开始在Objective-C Bridging Header选项里面写入Bridging-Header.h相对路径。

image

第二步:第三方项目依赖

把第三方项目源码拷贝到自己的项目里面,上图也可以看到我拷贝的事AFNetworking项目,然后在把源码加入到Build Phases--Compile Sources里面

image

第三步:修改Bridging-Header.h

在Bridging-Header.h中写入#import"AFNetworking.h"

第四步:调用OC

前面的工作做完后我们就可以调用第三方项目的功能了


import UIKit

classViewController: UIViewController {

@IBOutletweak varweatherInfo: UITextView!

override func viewDidLoad() {

super.viewDidLoad()

updateWeatherInfo()

}

override func didReceiveMemoryWarning() {

super.didReceiveMemoryWarning()

// Dispose of any resources that can be recreated.

}

func updateWeatherInfo() {

let manager = AFHTTPRequestOperationManager()

let url ="http://api.openweathermap.org/data/2.5/weather"

println(url)

letparams:NSDictionary = ["lat":"37.785834","lon":"-122.406417","cnt":0]

println(params)

manager.GET(url,

parameters: params,

success: { (operation: AFHTTPRequestOperation!,

responseObject: AnyObject!) in

self.weatherInfo.text="JSON: "+ responseObject.description!

},

failure: { (operation: AFHTTPRequestOperation!,

error: NSError!) in

self.weatherInfo.text="Error: "+ error.localizedDescription

})

}

}

你可能感兴趣的:(swift 调用OC第三方AFNetWorking)