1
複数のフラグメントを含むアクティビティでGoogleマップを使用しています。設定ページから言語を英語からアラビア語に変更するときは、変更内容を適用するためにアクティビティ全体をリロードします。通常、EIマップ内のタイトルを除いて、新しい言語へのすべてのテキストの変更(国名、都市、通り...)GoogleMaps Androidスタジオの変更言語のリフレッシュ
これは私がlaguageを変更するために使用するコードです:
public static void setLanguage(Activity activity){
String languageToLoad = "en";
boolean isEnglish=Preference.getBooleanPrefs(Preference.LANGUAGE, activity, true);
if(isEnglish)
languageToLoad = "en";
else
languageToLoad = "ar";
Locale locale = new Locale(languageToLoad);
Locale.setDefault(locale);
Configuration config = new Configuration();
config.locale = locale;
activity.getBaseContext().getResources().updateConfiguration(config,activity.getResources().getDisplayMetrics());
}
これがありますアクティビティを再読み込みするために使用するコード:
public void refreshChangelanguage() {
Intent intent = new Intent(this, HomeActivity.class);
startActivity(intent);
finish();
loadFragment(FRAGMENT_SETTING, null);
}
マップは、スタックリストからアプリ全体を手動で削除してから再度開くまで、古い言語で表示され続けます。新しい言語でラベルを再読み込みするにはどうすればよいですか?
は、私はあなたがsuper.onCreate
後とアクティビティのsetContentView
前setLanguage(Activity activity)
をしなければならないと言うだろう事前
返信ありがとう、私はそれをしましたが、それは動作していません – user173488