2012-06-07 12 views
6

मेरा आवेदन 4 भाषा का समर्थन करता है। उपयोगकर्ता उसे अपनी भाषा का चयन करें। लेकिन मैं रूसी के लिए taht नहीं कर सकता।एंड्रॉइड में रूसी के लिए स्थानीयकरण

if (dil.equals("eng")){ 
     Configuration c = new Configuration(context.getResources().getConfiguration()); 
     c.locale = Locale.ENGLISH; 
     context.getResources().updateConfiguration(c,context.getResources().getDisplayMetrics()); 

    } 
    else if (dil.equals("ger")){ 
     Configuration c = new Configuration(context.getResources().getConfiguration()); 
     c.locale = Locale.GERMAN; 
     context.getResources().updateConfiguration(c,context.getResources().getDisplayMetrics()); 

    } 
    else if (dil.equals("rus")){ 
     Configuration c = new Configuration(context.getResources().getConfiguration()); 
     c.locale = Locale.????????; 
     context.getResources().updateConfiguration(c,context.getResources().getDisplayMetrics()); 

    } 
    else 
    { 
     Configuration c = new Configuration(context.getResources().getConfiguration()); 
     c.locale = Locale.getDefault(); 
     context.getResources().updateConfiguration(c,context.getResources().getDisplayMetrics()); 

    } 

मुझे रूसी के लिए डोंग नहीं पता;

c.locale = Locale.????????; 

उत्तर

17

का उपयोग करते हुए इस constructor आप इस तरह रूस के लिए अपने स्थान निर्धारित कर सकते हैं के लिए कुछ उपयोगी सुझाव है:

Locale myLocale = new Locale("ru","RU"); 

यहाँ जावा द्वारा supported locales की एक सूची है। आप देख सकते हैं कि "आरयू" समर्थित है, लेकिन परीक्षण नहीं किया गया है।

प्रलेखन भी तो मैं

Locale myLocale = new Locale("ru","RU") 
+0

यह काम किया है करने के लिए

Locale myLocale = new Locale("ru") 

से संपादित कुछ समय अपने बेहतर आधार स्थानीयकरण और अंतर्राष्ट्रीयकरण देने के लिए कहते हैं। आपको बहुत - बहुत धन्यवाद! – enginar

0
Android documentation for Locale

इस वर्ग 'कंस्ट्रक्टर्स कोई त्रुटि जाँच कर के अनुसार

। आप उन भाषाओं और देशों के लिए लोकेल बना सकते हैं जो अस्तित्व में नहीं हैं, और आप उन संयोजनों के उदाहरण बना सकते हैं जो अस्तित्व में नहीं हैं (जैसे कि "यूएस में बोली जाने वाली जर्मन" के लिए "de_US")।

ध्यान दें कि en_US को छोड़कर इस कक्षा में स्थिरांक के रूप में परिभाषित किसी भी लोकेल के लिए लोकेल डेटा आवश्यक रूप से उपलब्ध नहीं है, जो एकमात्र लोकल जावा गारंटी हमेशा उपलब्ध है।

यह भी गलती है कि सभी उपकरणों में एक ही स्थान उपलब्ध हैं। यूएस में बेचा जाने वाला एक उपकरण लगभग निश्चित रूप से en_US और es_US का समर्थन करेगा, लेकिन जरूरी नहीं कि किसी भी भाषा के साथ किसी भी भाषा के साथ-साथ अलग-अलग देशों (जैसे en_GB या es_ES), न ही अन्य भाषाओं के लिए कोई भी लोकेशन (जैसे de_DE)। यूरोप में बेचे गए डिवाइस के विपरीत विपरीत भी सच हो सकता है।

इसके अलावा प्रलेखन रूसी के लिए लोकेल सूचीबद्ध नहीं करता है, ऐसा लगता है कि आपको एक बनाना है। उपरोक्त उद्धरण के तीसरे अनुच्छेद पर भी ध्यान दें। तो शायद अपने आप को प्रदान करना बेहतर है।

चेक this SO post रूप में अच्छी तरह यह लोकेल

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