मैं आईफोन पर NSUserDefaults
उलझन में हूं।क्या NSUserDefaults में सामान का एक गुच्छा लगाने का कोई बेहतर तरीका है?
मैं एक सी/एएसएम पृष्ठभूमि से आया हूं और उद्देश्य-सी सामान एक सीखने का अनुभव रहा है।
मैं वर्तमान में कुछ स्ट्रिंग्स (हाईस्कॉर्क्स टेबल में नामों के लिए) स्टोर करने के लिए NSUserDefaults
का उपयोग कर रहा हूं। मैं एक "सेव गेम" टाइप फीचर को कार्यान्वित करना शुरू करना चाहता हूं ताकि उपयोगकर्ता को एक पल के लिए कॉल से बाहर निकल जाए या खेल से बाहर निकल जाए, तो वे वापस आ सकते हैं।
खेल को पुनर्प्राप्त करने के लिए, मुझे कुछ BOOL
झंडे मिल गए हैं, कुछ int
एस कुछ आवश्यक चर स्टोर करने के लिए हैं, लेकिन मैं स्टोर करने की आवश्यकता वाले सरणी में फंस गया हूं।
मेरे पास unsigned char
एस का 50 तत्व सरणी है। मैं इसे int
एस पर ले जा सकता हूं अगर यह चीजों को आसान बनाता है, लेकिन मैं इसे देख नहीं रहा हूं।
NSUserDefaults
के साथ काम करने के लिए मैं setBool
(पहले से ही कर रही) कर सकते हैं, setFloat
(फिर से, पहले से ही कर रही), setInteger
, और setObject
।
स्पष्ट रूप से मैं सरणी के प्रत्येक तत्व के लिए कुंजी घोषित कर सकता हूं और setInteger
के साथ उन्हें एक-एक करके स्टोर कर सकता हूं लेकिन यह वास्तव में क्लेडी है। इससे निपटने का सबसे अच्छा तरीका क्या है? unsigned char
एस की सरणी के बजाय, मैं किसी भी तरह NSObject
का उपयोग करने का प्रयास करता हूं? क्या NSObject
पर कोई अच्छा ट्यूटोरियल है जिसे मैं बेहतर समझने के लिए पढ़ सकता हूं?
हां, आम तौर पर आप वरीयताओं के लिए एनएसयूसर डीफॉल्ट का उपयोग करेंगे (जैसे शाही बनाम मीट्रिक इकाइयों को चुनना), और धारावाहिक संपत्ति सूचियों, एसक्लाइट, कोर डेटा इत्यादि का उपयोग करके अपने ऐप के डेटा को एक अलग फ़ाइल में स्टोर करें –
सहमत हैं, उपयोगकर्ता डिफ़ॉल्ट है prefs, लेकिन डेटा को कहीं और संग्रहीत किया जाना चाहिए, उदाहरण के लिए "~/लाइब्रेरी/एप्लिकेशन सपोर्ट/MyApp /" में एक प्लिस्ट की तरह। –
आईफोन पर, आंकड़ों को संग्रहित करने के लिए स्पष्ट रूप से अलग-अलग सम्मेलन हैं, क्योंकि संरचना बहुत अलग है। अपने ऐप के लिए फाइलों को संग्रहीत करने के विवरण के लिए प्रासंगिक आईफोन प्रोग्रामिंग गाइड से परामर्श लें। –