2009-06-29 85 views
0

我已經創建了UIImageView的子類,並且我正在處理它的對象在子類本身內的觸動。iPhone - 使用NSCoder與UIImageView的子類

現在,當用戶即將退出應用程序,我想保存圖像的狀態。由於圖像上可能發生了多種變形(我將所有變形保存在字典中),我希望能夠將這些對象保存在applicationWillTerminate中。

我正在使用encodeWithCoder和initWithCoder方法。對象按預期保存並加載(至少看起來像這樣)。但是當我打印框架大小和原點時,我在控制檯上看到一些荒謬的值。

有人可以告訴我,如果調用encodeWithCoder時沒有保存幀,並且內容存儲在文件中?

謝謝。

回答

0

爲什麼不將序列化UIImageView的框架與實際的UIImageView?只需在該幀的encodeWithCoder和initWithCoder中添加另一個屬性即可。通過這種方式,如果您感覺有些東西不合適,您可以確保擁有正確的框架。

請將代碼粘貼到記錄UIImageView框架值的位置。我相信你可能會選擇錯誤的類型,這會導致你的價值觀失效。

+0

由於plist中。這就是我所做的。但仍然不知道爲什麼框架無法保存! – lostInTransit 2009-07-01 04:29:50

0

寫入字典內容通過使用NSUserDefault對密鑰對象和setObject關鍵方法