【发布时间】:2015-01-22 11:57:51
【问题描述】:
我正在开发一个选项卡式应用程序,并且一段时间以来一直在努力解决CoreData 问题。我会尽量讲清楚。
应用程序从一个选项卡开始,该选项卡从CoreData 获取某些类型的对象(连同它们的多对多关系)并以某种方式显示数据。在另一个选项卡中,我有一个UITableView,它使用NSFetchedResultsController 来显示不同类型的对象。两个选项卡都使用相同的NSManagedObjectContext。还有其他选项卡不使用 CoreData 或任何以前检索到的对象。
当我进入第一个选项卡时,一切正常并正确显示。当我从那里导航到不使用 CoreData 的选项卡并再次返回时,一切都很好。但是,当我使用UITableView 和NSFetchedResultsController 导航到选项卡然后再次返回时,我在第一个选项卡中的对象出现故障。这并不让我感到惊讶,但我似乎无法解雇他们。我正在尝试访问对象的 To-Many 关系和 count 值,据我所知,它应该触发一个错误的对象。
我不确定如何看待这种行为。会不会是 NSFetchedResultsController 以某种方式弄乱了之前的获取?这听起来不合理......
另外,请注意,我正在使用 Swift,但这应该不会影响任何事情。
任何意见将不胜感激!谢谢!
【问题讨论】:
-
您说“我的第一个选项卡中的对象有问题”,但您实际看到的是什么?在 UI 中是否显示
<fault>? -
是的,它确实说
。我不知道到底是怎么回事,但经过一些重构后,我得到了工作.. -
请您提供更多详细信息,说明您究竟重构了什么以使事情正常进行。我面临同样的问题并寻求帮助解决。需要注意的一件事是,这只是在 swift 中发生。
标签: ios core-data swift nsfetchedresultscontroller nsfetchrequest