1.创建一个帮助类用于更改语言。
public class LocaleHelper {
public static void setLocale(Context context, String languageCode) {
Locale locale = new Locale(languageCode);
Locale.setDefault(locale);
Configuration config = new Configuration();
config.locale = locale;
Resources resources = context.getResources();
resources.updateConfiguration(config, resources.getDisplayMetrics());
}
}
2.将保存的语言通过帮助类来设置。
SharedPreferences prefs = getSharedPreferences("MyPrefs", MODE_PRIVATE);
String language = prefs.getString("language", "en");
LocaleHelper.setLocale(this, language);
3.所有活动都继承BaseActivity
4.选择语言后保存语言并重启应用