ios - 类型 'AnyObject' 不符合协议(protocol) 'NSFetchRequestResult'

标签 ios swift xcode core-data swift3

我刚刚安装了 Xcode 8 beta 2iOS 10 beta .我有一个现有项目,我根据 Xcode 的提示从 swift 2.3 更新到 swift 3。我的代码数据代码收到错误。

这是在 xcode 从 swift 2.3 到 swift 3 的转换中自动生成的

var fetchedResultsController: NSFetchedResultsController<AnyObject>!

我收到的错误是

 Type 'AnyObject' does not conform to protocol 'NSFetchRequestResult'

我试图符合 AnyObject

extension AnyObject: NSFetchRequestResult {}

但是我收到另一个错误

enter image description here

我不确定我需要做什么,或者我的 fetchedResultsController 是否需要首先更改。

答案:var fetchedResultsController: NSFetchedResultsController<Content>!

最佳答案

Xcode 转换器可能对您想在此获取的结果 Controller 中返回的 Entity 感到困惑。将 AnyObject 替换为您要获取的实体类型。

你应该打开雷达 (bugreporter.apple.com),因为它不应该在这里建议 AnyObject。在最坏的情况下,它应该建议 NSManagedObject

关于ios - 类型 'AnyObject' 不符合协议(protocol) 'NSFetchRequestResult',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38311277/

相关文章:

objective-c - UIRefreshControl 改变 UIActivityIndi​​catorView 的颜色

ios - 是否有任何好的 API 可以通过 ISBN 搜索书籍?

swift - "as"关键字可用于显式声明键/值的类型吗?

swift - 弹出窗口有黑色背景,即使它设置为清除

ios - 一次关闭两个 UIViewController 而不使用动画

iphone - 我可以从 iOS 模拟器中访问 App Store 吗?

ios - xcodebuild - 错误域=IDECapabilitiesErrorDomain 代码=1

ios - 使用 SWRevealViewController 和 Swift 以编程方式加载 Controller

ios - 使用CoreML进行图像识别?

ios - 如何将数据从 "didSelectRowAt"传递到另一个 VC 而无需呈现它或转场?