我可以通过调用刷新任何非CoreData加载的tableView[nameoftableView reloadData];
但是当我在加载了 CoreData 的 TVC 上调用它时,它不会重新加载表。这有什么不同吗?
如果我停止并再次启动应用程序,它会更新它的内容 - 以便它重新加载数据库,所以我知道它里面有更新的内容。
干杯杰夫
我可以通过调用刷新任何非CoreData加载的tableView[nameoftableView reloadData];
但是当我在加载了 CoreData 的 TVC 上调用它时,它不会重新加载表。这有什么不同吗?
如果我停止并再次启动应用程序,它会更新它的内容 - 以便它重新加载数据库,所以我知道它里面有更新的内容。
干杯杰夫
没有细节很难知道发生了什么,但如果你使用一个简单的NSFetchRequest
我认为你需要执行查询并reloadData
再次调用。
一个简单的笔记
我建议您NSFetchedResultsController
在处理 Core Data 和UITableView
s 时使用。raywenderlich有一个关于如何在 Core Data 中使用该类的教程。首先,它允许您处理以UITableView
. 特别是,如果NSFetchRequest
您使用 with,您设置了批量大小,数据将以“批量”形式检索。例如,前 10 个。然后,如果您滚动其他 10 个,依此类推...
此外,您可以使用NSFetchedResultsControllerDelegate
类(参考 NSFetchedResultsControllerDelegate )免费处理数据更改(更新、插入或删除)。
希望能帮助到你。