【问题标题】:'[NSObject : AnyObject]' is not identical to 'NSDictionary', trouble with RKPathMatcher'[NSObject : AnyObject]' 与 'NSDictionary' 不同,RKPathMatcher 有问题
【发布时间】:2015-07-15 18:16:12
【问题描述】:

我正在使用 RestKit,并在 Swift 中调用“addFetchRequestBlock”。

在块内...嗯,这是代码。更容易看到它:

  RKObjectManager.sharedManager().addFetchRequestBlock { (url: NSURL!) -> NSFetchRequest! in
     let pathMatcher = RKPathMatcher(pattern: partialPath)

     var argsDict: [NSObject: AnyObject]
     let tokenize = false as Bool
     if (pathMatcher.matchesPath(url.relativePath, tokenizeQueryStrings: tokenize, parsedArguments: &argsDict)) {

......

它不喜欢“argsDict”。 (向右滚动代码)错误读取

'[NSObject : AnyObject]' 与 'NSDictionary' 不同

这很奇怪,b/c 我以为是。无论如何,我总是可以将类型切换为 NSDictionary 并为自己省点麻烦,但我想知道是否可以使用“Dictionary”对象而不是 NSDictionary 来做到这一点。没有别的原因,就是想变得更“敏捷”。

【问题讨论】:

    标签: ios swift nsdictionary restkit


    【解决方案1】:

    好的,在 Apple Docs 的“自动释放指针”部分下找到它。基本上,指向的类型不会被桥接。

    https://developer.apple.com/library/ios/documentation/Swift/Conceptual/BuildingCocoaApps/InteractingWithCAPIs.html

    指向的类型不会被桥接。例如,NSString ** 以 AutoreleasingUnsafeMutablePointer 的形式出现在 Swift 中, 不是 AutoreleasingUnsafeMutablePointer.

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-06-06
      • 1970-01-01
      • 2014-09-10
      • 1970-01-01
      相关资源
      最近更新 更多