这是我的应用程序的屏幕截图,它从newsAPI收集json格式的文章。我想实现一个使用CoreData保存、删除和存储数据的功能。解决这个问题的最佳方法是什么?Tableview应用:https://i.stack.imgur.com/TGayE.jpg
发布于 2020-11-16 07:00:01
阅读有关如何将CoreData添加到您的应用程序的教程。而且读Apple's documentation总是不错的。
添加一个具有以下属性的CoreData实体:图像、作者、描述、日期、url、...(CoreData具有在外部文件中存储大型(R)数据对象的功能,如图像。不要担心这一点;只需将图像数据存储在实体中即可。您的图像不会很大,也不会很多,并且不会有性能问题。)
使用NSFetchedResultsController
填充表。
向表中添加下拉刷新/重新加载逻辑。
然后,您需要更改应用程序的数据流:收集文章的层现在将写入CoreData。现在,当您的数据发生更改时,该表将自动刷新(使用NSFetchedResultsController
)。假设您现在简单地刷新了整个表,使用CoreData时,您需要检查以过滤掉已经存储的接收到的新闻项(只是为了避免每次重新加载时都有重复项)。
过滤掉重复的文章时,请注意某些字段可能会更新。因此,查找重复项的逻辑必须更加智能,而不仅仅是比较CoreData中的项目字段和接收到的项目。
https://stackoverflow.com/questions/64853678
复制