मैं [NSKeyedArchiver archiveRootObject:toFile:]
का उपयोग करके अपने मुख्य UITabBarController
को क्रमबद्ध करके अपने आईफोन एप्लिकेशन की स्थिति को संरक्षित करने की कोशिश कर रहा हूं, लेकिन मैं कठिनाइयों में भाग रहा हूं।पुनरारंभ करने के लिए आवेदन स्थिति को संरक्षित करना
सबसे पहले मैं UIImage
साथ एक समस्या थी, क्योंकि यह NSCoding
प्रोटोकॉल लागू नहीं है, लेकिन मुझे लगता है कि UIImage
कि दुकानों के लिए एक एक्सटेंशन श्रेणी बनाकर हल और कच्चे छवि डेटा प्राप्त करता है।
जिस समस्या पर मैं अब अटक गया हूं वह यह है कि जब मैं संग्रह से पुनर्स्थापित करता हूं तो मेरे दृश्य नियंत्रक वहां नहीं होते हैं। मेरे प्रत्येक टैब में UINavigationControllers
है, और जब मैं पुनर्स्थापित करता हूं, तो UINavigationItem
एस अभी भी वहां हैं (मैं बैक बटन का उपयोग कर सकता हूं और उन्हें बदलने के लिए) लेकिन दृश्य नियंत्रक अभी चले गए हैं।
मुझे लगता है कि UINavigationController
की viewControllers
संपत्ति (nonatomic, copy)
चिह्नित है। क्या इसका मतलब यह है कि जब आप UINavigationController
संग्रहित करते हैं, तो इसमें दृश्य नियंत्रकों का ढेर शामिल नहीं होता है? यदि हां, तो मैं इसके आसपास कैसे हो सकता हूं? मैंने पहली बार सोचा कि मैं UINavigationController
के लिए NSCoding
विधियों को ओवरराइड कर दूंगा, लेकिन यह एनआईबी फ़ाइल से प्रारंभिकता को खराब करता है।
मैं थोड़ा परेशान हूं कि मुझे ऐप स्थिति को संरक्षित करने में बहुत कठिनाई हो रही है। मुझे लगा कि यह एक सामान्य उपयोग मामला था कि यह लागू करने के लिए सीधा होगा। क्या मुझसे कोई चूक हो रही है?