2011-04-18 15 views
5

मुझे पता है कि पहले से ही एक लोकेल मौजूद है .getAvailableLocales() फ़ंक्शन और कुछ अन्य सिमिलर्स चुड़ैल सभी उपलब्ध भाषाओं को लौटाते हैं (भले ही वे आपके मोबाइल फोन पर उपलब्ध हैं या नहीं)उपलब्ध भाषाओं को कैसे प्राप्त करें (उन सभी में से, केवल मेरे ऐप पर उपलब्ध भाषाओं)

मैं केवल उन भाषाओं को वापस करने के लिए एक तरीका देख रहा हूं जो मैंने अनुवाद किया है (यानी: यदि मेरे पास 3 फ़ोल्डर्स मान-एन, मूल्य-एस, मान-पीटी है; मुझे आशा है कि प्रतिक्रिया प्राप्त करें: [एन, एसएस, पीटी], या [अंग्रेजी, स्पेनिश, पुर्तगाली]

+0

हाय, मैं इस प्रकार के कार्यान्वयन की तलाश में हूं। क्या प्रतिक्रिया प्राप्त करने का कोई तरीका है [एन, एसएस, पीटी]।? – Karthick

उत्तर

0

Locale.getAvailableLocales() आपको सिस्टम-व्यापी उपलब्ध लोकेल की एक सूची देगा। इन्हें दिनांक, समय, संख्याओं और प्रारूपों के प्रारूप के लिए उपयोग किया जाता है। एक जैसे। अपने सेब के साथ इसका कोई लेना-देना नहीं है स्थानीयकरण फाइलें।

मुझे लगता है कि आप रनटाइम पर भाषाएं स्विच करना चाहते हैं और यही कारण है कि आप भाषाओं की सूची में गणना करना चाहते हैं। खैर, आपको शायद उस सूची के साथ विशिष्ट कॉन्फ़िगरेशन फ़ाइल बनाने और रनटाइम पर पढ़ने की आवश्यकता है। L10n फ़ाइलों को जोड़ने के लिए आपको एक और चरण की आवश्यकता होगी - इसे कॉन्फ़िगरेशन फ़ाइल में पंजीकृत करना।
वैकल्पिक रूप से आप संसाधन निर्देशिकाओं (मान- < लोकेल-आईडी >) की गणना करना चाहते हैं और उनके नाम से समर्थित लोकेल को पकड़ सकते हैं, लेकिन मुझे नहीं लगता कि यह सबसे सुंदर समाधान है। हालांकि, यह बिना किसी पंजीकरण के काम करता है ...

संबंधित मुद्दे