1:首先参考google sdk plantform下,将values命名为多个版本的国家。
2:当在应用内选择语言后,动态修改读取文件当路径。 如手机语言是德语,应用内选择了英语。需要读取values-en,而不是values-de
if(m_languageType.equals("pt")){//葡萄牙语 setLanguageLocal("pt"); }else if(m_languageType.equals("es")){//西班牙语 setLanguageLocal("es"); }else if(m_languageType.equals("de")){//德语 setLanguageLocal("de"); }else { setLanguageLocal("en-rUS"); }
private void setLanguageLocal(String language){ Locale locale = new Locale(language); Resources resources = MKActivity.getInstance().getApplicationContext().getResources(); if (resources==null) return; DisplayMetrics dm = resources.getDisplayMetrics(); Configuration config = resources.getConfiguration(); if (config==null) return; if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR1) { config.setLocale(locale); } else { config.locale = locale; } resources.updateConfiguration(config,dm); }