NSJSONSerialization'错误'教程书IOS 8 SDK开发第2版中的额外参数

时间:2016-01-14 14:01:58

标签: ios swift ios8 swift2

来自Chris Adamson在第6章末尾的IOS 8 SDK开发第2版。

我有一个错误调用的问题以及我如何将它从旧的swift转换为新的swift,使用do ..并尝试这里是我的代码块

func handleTwitterData (data: NSData!, urlResponse: NSHTTPURLResponse!, error: NSError!) {
    if let dataValue = data {
        var parseError : NSError? = nil
        let jsonObject : AnyObject? =  NSJSONSerialization.JSONObjectWithData(dataValue, options: NSJSONReadingOptions(0), error: &parseError)
        print("JSON error: \(parseError)\nJSON response: \(jsonObject)")
} else {
    print("handleTwitterData received no data")
    }
}

1 个答案:

答案 0 :(得分:0)

在swift 2.0中,您不会使用错误参数。

如果objective-c函数的最后一个参数为do { let jsonObject : AnyObject? = try NSJSONSerialization.JSONObjectWithData(dataValue, options: NSJSONReadingOptions(0)) } catch { print("\(error)") } ,则swift 2.0将其删除并将其标记为可以抛出异常的函数。

因此您不需要编写该参数,而是需要使用swift exception语法。

android:layout_below="@+id/tabs"