我有下面的代碼,但只有幾種語言,葡萄牙語不是其中之一,如何纔有可能獲得葡萄牙語?獲取葡萄牙語 - Android
if(Locale.ENGLISH.equals(Locale.getDefault().getLanguage())){
}
我有下面的代碼,但只有幾種語言,葡萄牙語不是其中之一,如何纔有可能獲得葡萄牙語?獲取葡萄牙語 - Android
if(Locale.ENGLISH.equals(Locale.getDefault().getLanguage())){
}
沒有保證這將工作,但值得一試。
巴西和葡萄牙是我知道的唯一國家,對不起
List<String> ptLocales = Arrays.asList("pt_BR", "pt_PT");
if(ptLocales.contains(Locale.getDefault().getLanguage())){
}
謝謝,但它沒有工作 – Felipe
我是不確定你的Locale.getDefault()返回什麼 –
採取試試這個(我使用泰語)爲自己有所有的字符串一個string.xml文件葡萄牙語
public static void changeLocale(Context context, Locale locale) {
Configuration conf = context.getResources().getConfiguration();
conf.locale = locale;
Locale.setDefault(locale);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR1)
conf.setLayoutDirection(conf.locale);
context.getResources().updateConfiguration(conf, context.getResources().getDisplayMetrics());
}
LocaleUtils.changeLocale(上下文,新的區域設置( 「日」));
這是葡萄牙的語言環境的列表
pt Portuguese português
pt_AO Portuguese (Angola) português (Angola)
pt_BR Portuguese (Brazil) português (Brasil) Brazilian Portuguese
pt_GW Portuguese (Guinea-Bissau) português (Guiné Bissau)
pt_MZ Portuguese (Mozambique) português (Moçambique)
pt_PT Portuguese (Portugal) português (Portugal) Iberian Portuguese
pt_ST Portuguese (São Tomé and Príncipe) português (São Tomé e Príncipe)
價值觀夾,只是右鍵 - >創造價值的資源文件
filename = strings.xml
directory name = values-pt
源代碼
這就是我要做的設置語言環境
LanguageLocalHelper.setLocale(this,"pt");
然後我用這個包裝類更改地區獲得更多信息國際IDS設置
public class LanguageLocalHelper {
public static void onCreate(Context context) {
String lang = getPersistedData(context, Locale.getDefault().getLanguage());
setLocale(context, lang);
}
public static void onCreate(Context context, String defaultLanguage) {
String lang = getPersistedData(context, defaultLanguage);
setLocale(context, lang);
}
public static String getLanguage(Context context) {
return getPersistedData(context, Locale.getDefault().getLanguage());
}
public static void setLocale(Context context, String language) {
persist(context, language);
updateResources(context, language);
}
private static String getPersistedData(Context context, String defaultLanguage) {
SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(context);
return preferences.getString(Constant.LANGUAGE_LOCALE, defaultLanguage);
}
private static void persist(Context context, String language) {
SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(context);
SharedPreferences.Editor editor = preferences.edit();
editor.putString(Constant.LANGUAGE_LOCALE, language);
editor.apply();
}
@SuppressLint("NewApi")
private static void updateResources(Context context, String language) {
Locale locale = new Locale(language);
Locale.setDefault(locale);
Resources resources = context.getResources();
Configuration configuration = resources.getConfiguration();
configuration.setLocale(locale);
resources.updateConfiguration(configuration,null);
}
}
..看看這裏Local
你可以造出來。 https://docs.oracle.com/javase/tutorial/i18n/locale/create.html或者請參閱http://www.localeplanet.com/java/pt-PT/ –