无法调用valueForKey'使用类型'(anyObject?)'的参数列表?

时间:2015-08-21 11:14:17

标签: ios objective-c xcode swift

我一直收到错误:

  

无法调用  valueForKey'使用类型的参数列表   '(?anyObject)'

当我尝试转换时:

NSError* error = [notification.userInfo valueForKey:ZDA_WEB_VIEW_FAILED_ERROR];

从Objective-C到Swift。我最好的尝试是以下Swift代码:

var error: NSError = notification.userInfo.valueForKey(ZDA_WEB_VIEW_FAILED_ERROR)

但这似乎不起作用。任何帮助都会有很长的路要走,谢谢!

1 个答案:

答案 0 :(得分:0)

您收到错误,因为notification.userInfo返回一个必须解包的可选项。 Swift的方法是:

if let error = notification.userInfo?[ZDA_WEB_VIEW_FAILED_ERROR] as? NSError {
    // use error
}