2012-10-14 21 views
3

可能是一個nooby問題 - 如何調用encodeWithCoder?我需要使用它來保存iPhone上的文件中的對象,我只是不確定它是如何被調用的。我必須手動調用它嗎?如果是這樣,我用什麼作爲NScoder參數的輸入?如何調用encodeWithCoder

回答

5

你不把它自己,你用NSKeyedArchiver代替:

NSData *serialized = [NSKeyedArchiver archivedDataWithRootObject:foo]; 

哪裏foo是你的對象符合NSCoding。還有一種將歸檔對象直接保存到文件的方法。

+0

但是,這是否意味着如果我想存檔一些簡單的NSArray,它必須符合NSCoding?這似乎有點過於複雜。 – Fitzy

+0

啊,請原諒我吧。感謝你的回答! – Fitzy

+0

我無法編輯帖子,但是它的archivedDataWithRootObject不是archiveDataWithRootObject –