我的应用需要一些看不见的图像。我计划使用UITableViewController
和NSFetchedResultsController
结合使用此功能。
当用户访问此Feed时,他将看到他以前从未见过的图像。当他滚过桌子时,他已经滚动过的图像将被视为已被看到。
当然,我想过将fetchedResultsController的请求设置为使用谓词"seen = 0"
来查找图像。我的UITableViewController的didEndDisplayingCell
只会将项目标记为已显示。
然而,这并不理想,因为NSFetchedResultsController
将告诉tableView删除行,因为它们在获取的结果控制器中不再存在。
我希望我的用户能够向后滚动并仍能看到这些图片。这些图片只会在用户下次使用该应用时消失。
有人可以推荐一种聪明的方法吗?
答案 0 :(得分:1)
我建议你做什么:
1 - 创建一个NSMutableArray,您可以在其中添加一些单元格/图片的ID
2 - 在你的UITableViewController的viewDidLoad中添加以下内容
[[NSNotificationCenter defaultCenter] addObserver: self
selector: @selector(handleEnteredBackground:)
name: UIApplicationDidEnterBackgroundNotification
object: nil];
3 - 实现方法handleEnteredBackground:
,因此当您的应用程序进入后台状态时,您枚举数组并标记与看到= 1的NSFetchedResultsController对象匹配的所有对象。