2013-06-26 12 views
1

我試圖填補了字典,從restkit值無法識別的選擇發送到實例錯誤。我使用保存NSUserDefaults的字典在我restEngine.m[MyClass的encodeWithCoder:]:使用時NSUserDefaults的

NSDictionary *dict = [mappingResult dictionary]; 

        [[NSUserDefaults standardUserDefaults] setObject:[NSKeyedArchiver archivedDataWithRootObject:dict] forKey:kPopulateTableView ]; 
        [[NSUserDefaults standardUserDefaults] synchronize]; 

當我構建應用程序,它用錯誤消息打破:

「[MyClass的encodeWithCoder:]:無法識別的選擇發送到實例」

我在這裏做錯了什麼?

回答

5

似乎在你的NSDictionary dict您保存不受可編碼的對象。
BUT
只有可編碼對象可以與一個歸檔使用。

爲可編碼的,他們必須實現NSCoding protocol

SO:MyClass的需要實現NSCoding


如需進一步信息請閱讀 「歸檔和序列化編程指南」

+0

所以我應該在哪裏使用NSCoding實現我的課程?在我的休息引擎或類實際定義?對不起我不熟悉NSCoding – oweskeez

+0

在你的課堂..它是一個協議,定義2?然後你必須提供的方法 –

相關問題