2012-12-22 23 views
0

我想弄清楚爲未讀單元格實現藍色點像郵件應用程序的最佳方式。我有藍點,但我只是想弄清楚它背後的邏輯。該表由一個xml文件填充。現在我已經設置了它,當調用解析方法時,它將數據對象中的布爾值設置爲NO。然後,當tableview填充自身時,如果布爾值爲NO,則會顯示圖像,然後在didSelectRowAtIndex期間,然後將布爾值設置爲YES並且圖像消失。問題出在這裏,每次刷新表格時,都會重新分析xml,並將實例變量重置爲NO,並通知用戶單元未被點擊。我如何解決這個問題?它最好的邏輯是什麼?iOS未讀單元圖標

回答

0

而不是每次刷新表時重新解析XML,解析它一次然後保存解析出來的數據(或一個字典的數組,或任何)作爲對象內的變量。

這樣,「讀」藍點或「未讀」狀態將在表重新加載之間持續存在。

+0

問題是,XML每分鐘都在變化,並不斷刷新,所以它可能不值得。 –

0

Michael Dautermann正在回答他的問題。對於你的情況,在飼料經常刷新的地方,你可以通過存儲它們的ID(無論它們是什麼)來保持一個你記錄讀取元素的位置。然後,在您的tableView:cellForRowAtIndexPath:方法中,您只需檢查當前元素的ID是否存在於該集合中,如果有,則不顯示「新」圖像。