iOS未读细胞图标

时间:2012-12-22 01:35:51

标签: ios xml-parsing tableview read-unread

我正在尝试找出实现蓝点的最佳方式,如未读单元格的Mail应用程序。我有蓝点,但我只想弄清楚它背后的逻辑。该表由xml文件填充。现在我把它设置为如此,当调用解析方法时,它在数据对象中将布尔值设置为NO。然后当tableview填充自身时,如果布尔值为NO,则显示图像,然后在didSelectRowAtIndex期间,我将布尔值设置为YES,图像消失。问题在于,每次刷新表时,都会重新解析xml并将实例变量重置为NO,并通知用户单元格未被单击。我该如何解决这个问题?围绕它的最佳逻辑是什么?

2 个答案:

答案 0 :(得分:0)

每次刷新表时,不要重新解析XML,而是将其解析一次,然后将解析出的数据(或字典数组或其他数据)保存为变量对象。

这样,“读取”蓝点或“未读”的状态将在表重新加载之间持续存在。

答案 1 :(得分:0)

迈克尔·道特曼在他的回答中提出了一个很好的观点。对于您经常刷新Feed的情况,您可以通过在其中存储ID(无论它们是什么)来保存跟踪读取元素的位置。然后,在tableView:cellForRowAtIndexPath:方法中,您只需检查当前元素的ID是否存在于集合中,如果存在则不显示“新”图像。

相关问题