Swift 2到3迁移jsonObject生成' Any'不是预期的上下文结果类型' AnyObject?'

时间:2016-09-28 10:31:02

标签: json swift swift2 swift3 ios10

我试图将以下代码从此库(https://github.com/dankogai/swift-json)转换为Swift 3兼容代码。

我虽然坚持这条线。

obj = try JSONSerialization.jsonObject(

我得到的错误是jsonObject产生'任何',而不是预期的上下文结果类型' AnyObject?'

我尝试在完整上下文中转换为swift 3之前的代码如下所示。

public convenience init(data:NSData) {
        var err:NSError?
        var obj:AnyObject?
        do {
            obj = try NSJSONSerialization.JSONObjectWithData(
                data, options:[])
        } catch let error as NSError {
            err = error
            obj = nil
        }
        self.init(err != nil ? err! : obj!)
    }

1 个答案:

答案 0 :(得分:14)

在Swift 3中id类型现在导入为Any而不是AnyObject。您可以将obj的类型更改为Any或将其转换为AnyObject