Skip to content Skip to sidebar Skip to footer

Some Strings Are Not Translated When Changing System Language Without Restarting App

I'm having a problem where if I open my android app and then go into the system settings to change the language and then open the app again, some strings in the app won't be transl

Solution 1:

I also had this issue.I used the code below which was posted in some StackOverflow answer and then it changed the language without refreshing the activity

publicvoidsetLocale(String lang) {

    myLocale = newLocale(lang);
    Resourcesres= getResources();
    DisplayMetricsdm= res.getDisplayMetrics();
    Configurationconf= res.getConfiguration();
    conf.locale = myLocale;
    res.updateConfiguration(conf, dm);
    onConfigurationChanged(conf);

}

@OverridepublicvoidonConfigurationChanged(Configuration newConfig) {
    // refresh your views here
    lblLang.setText(R.string.langselection);
    super.onConfigurationChanged(newConfig);
}

I hope it would help you.......

Solution 2:

Finally figured out the problem. The strings that weren't being translated were being populated within a static class. So because this class was only being instantiated once, the strings weren't getting re-populated again with the proper translations.

Post a Comment for "Some Strings Are Not Translated When Changing System Language Without Restarting App"