我想恢復我的視圖狀態,並且我的視圖有一個UIPickerView
。是否有可能使用encodeObject存檔UIPickerView?
UIPickerView
在我看來,像它有圖形組件,即背景輪圖像。我知道UIImage
無法歸檔。任何與圖像有關的東西,如UIImageView
,您必須先將圖像設置爲nil
,然後才能對其進行編碼。
但是,UIPickerView
是NSCoding
兼容。這意味着encodeObject
和decodeObject
應該可以工作。
他們沒有。我的意思是,他們不會造成任何錯誤。但解碼後,你會得到沒有任何圖像的UIPickerView
。它看起來不太好!
之前和拍攝後只是爲了證明我不是要瘋了這裏是:
以前
後
現在,我知道我可以簡單地存儲當前的用戶選擇,並通過調用選擇器的方法來重新創建視圖。但真的,我很好奇。爲什麼UIPickerView
NSCoding
如果不是真的,並且你無法做進一步的操作來獲取背景輪圖像?
我的觀點是,你不能重建一個UIPickerView,那麼爲什麼讓它NSCoding兼容? –
凱文解釋它。作爲一個規則,NSCoding不會將所有內容都歸檔,只是重建它所需的數據。 – James
我認爲你正在閱讀NSCoding應該做的事情。從Apple的文檔中可以看出:「這種功能爲歸檔提供了基礎。」永遠不會說這是你試圖做到的「一站式商店」。 – Kevin