2010-07-08 80 views
0

我試圖找到一些在互聯網上的信息,但不能。 我是iphone新手,但我已經學到了一些東西。我已經創建瞭解析RSS提要並顯示它的應用程序,但我還沒有弄清楚如何向用戶顯示他已閱讀哪些內容,哪些內容尚未閱讀。我有一些想法,但我不知道他們是好還是可笑。可能有人知道它通常在許多現有的RSS閱讀器中完成。RSS閱讀器如何知道我已閱讀哪些項目,以及哪些項目我沒有閱讀?

謝謝很多))

回答

1

easies的方式是存儲所有的rss ID NSUserDefault。然後,當應用程序加載時,他們只是將其加載到NSSet,並檢查rss列表

另一種方法是在RSS新聞對象中有一個名爲isRead的屬性(如果您以這種方式爲數據建模),然後使用NSCoding與encodeWithCoder和initWithCoder來編寫並獲取所有對象及其屬性

+0

非常感謝,如果我將我的RSS解析爲數組,說出NSdictionaries,是否有一些標準的方法來檢查它與NSSet?或者我應該使用foreach循環? – Burjua 2010-07-08 16:38:20

+0

如果你把你的rss放到一個數組(或字典)中,你可以通過整個數組遍歷一個循環來獲取每個元素的id,然後你[set containsObject:id]來檢查該id是否在set中。如果你害怕性能,整體性能爲O(n)循環數組和O(1)for containsObject – vodkhang 2010-07-08 16:48:03

+0

謝謝,是否有更好/更簡單的方法來保持RSS與數組分開? – Burjua 2010-07-08 16:54:04

0

應用程序將需要存儲哪些項目已經讀取信息。也許存儲該項目的<guid>元素。

+0

將所有消息序列化所有消息好了,感謝您的快速回復,我考慮過了,我還有一個問題,那就是假設Feed已刷新並且我下載並解析它,在內存中創建新的數組。有一些舊項目和一些新項目,我如何保存舊項目的狀態並將其應用到新陣列?如果嵌套的foreach循環需要某種類型,或者它可以做得更簡單嗎?對不起,如果我寫得不是很清楚)) 謝謝 – Burjua 2010-07-08 15:48:38