【问题标题】:Fetched Results Controller in a tabbed application选项卡式应用程序中的获取结果控制器
【发布时间】:2013-04-11 12:58:25
【问题描述】:

我正在尝试编写一个带有三个选项卡的选项卡式应用程序,其中使用 Fetched Results Controller 从核心数据中显示数据。

  • Tab 1 显示核心数据中的项目列表。
  • 选项卡 2 具有删除核心数据中的项目的操作。

现在,即使我删除选项卡 1 中的项目,表格视图也会更新以描述更改。

但是当我从选项卡 2 中删除一个项目,然后返回选项卡 1 时,表格不是最新的。

每当我删除选项卡 2 中的项目时,我都尝试委派给选项卡 1 的视图控制器,然后表 1 的视图控制器调用:-

[self.tableView reloadData];
// Still doesn't work

当我退出应用程序并再次启动它时,它会显示更新的数据。

谁能帮忙。非常感谢。

【问题讨论】:

  • 您是在另一个线程上获取数据吗?托管对象上下文不是线程安全的。

标签: objective-c ios xcode cocoa-touch


【解决方案1】:

您是否确保在删除后保存 ManagedObjectContext?如果您正在创建两个核心数据上下文(每个 tableView 一个)并且没有在第二个选项卡上保存删除,那么您将得到您所描述的症状。

【讨论】:

  • 它与整个应用程序中使用的 managedObjectContext 相同。
  • Cheers Travis M。经过多次调试,我发现我的删除逻辑本身存在问题,导致数据与 ui 的数据不同步。但是你的回答把我推向了正确的方向。谢谢。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-12-12
  • 1970-01-01
  • 1970-01-01
  • 2010-09-07
  • 2023-03-26
  • 1970-01-01
相关资源
最近更新 更多