@RequiresApi(JELLY_BEAN_MR1) @Override public Context createConfigurationContext(Configuration overrideConfiguration) { return mBase.createConfigurationContext(overrideConfiguration); }
public static ContextLocalWrapper wrap(Context context, Locale newLocale) { Resources res = context.getResources(); Configuration configuration = res.getConfiguration(); if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) { configuration.setLocale(newLocale); LocaleList localeList = new LocaleList(newLocale); LocaleList.setDefault(localeList); configuration.setLocales(localeList); context = context.createConfigurationContext(configuration); } else if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR1) { configuration.setLocale(newLocale); context = context.createConfigurationContext(configuration); } else { configuration.locale = newLocale; res.updateConfiguration(configuration, res.getDisplayMetrics()); } return new ContextLocalWrapper(context); } }
@Test @Config(minSdk = JELLY_BEAN_MR1) public void createConfigurationContext() { Configuration configuration = new Configuration(context.getResources().getConfiguration()); configuration.mcc = 234; Context configurationContext = context.createConfigurationContext(configuration); assertThat(configurationContext).isNotNull(); }
@RequiresApi(JELLY_BEAN_MR1) @Override public Context createConfigurationContext(Configuration overrideConfiguration) { return mBase.createConfigurationContext(overrideConfiguration); }
@TargetApi(Build.VERSION_CODES.N) private static Context updateResourcesLocale(Context context, Locale locale) { Configuration configuration = context.getResources().getConfiguration(); configuration.setLocale(locale); return context.createConfigurationContext(configuration); }
private Resources getResources(Locale locale) { Configuration configuration = new Configuration(applicationContext.getResources().getConfiguration()); configuration.setLocale(locale); return applicationContext.createConfigurationContext(configuration).getResources(); } }
private static Context updateResources(Context context, String language) { Locale locale = new Locale(language); Locale.setDefault(locale); Resources res = context.getResources(); Configuration config = new Configuration(res.getConfiguration()); if (Build.VERSION.SDK_INT >= 17) { config.setLocale(locale); context = context.createConfigurationContext(config); } else { config.locale = locale; res.updateConfiguration(config, res.getDisplayMetrics()); } return context; }
public static ContextWrapper wrap(Context context, Locale newLocale) { Resources res = context.getResources(); Configuration configuration = res.getConfiguration(); if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) { configuration.setLocale(newLocale); LocaleList localeList = new LocaleList(newLocale); LocaleList.setDefault(localeList); configuration.setLocales(localeList); context = context.createConfigurationContext(configuration); } else if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR1) { configuration.setLocale(newLocale); context = context.createConfigurationContext(configuration); } else { configuration.locale = newLocale; res.updateConfiguration(configuration, res.getDisplayMetrics()); } return new ContextWrapper(context); }
@TargetApi(Build.VERSION_CODES.N) @NonNull private static Context createContextNougat(@NonNull Context context, @NonNull Locale newLocale) { Resources resources = context.getResources(); Configuration configuration = resources.getConfiguration(); configuration.setLocale(newLocale); return context.createConfigurationContext(configuration); }
@TargetApi(Build.VERSION_CODES.JELLY_BEAN_MR1) private void setContextToUse(Configuration configuration, Locale locale) { configuration.setLocale(locale); contextInUse = originalContext.createConfigurationContext(configuration); }
@TargetApi(Build.VERSION_CODES.N) @Override public Context changeLocale(Context context, String language) { logger.debug("Update resources N plus"); Locale locale = Locale.forLanguageTag(language); Locale.setDefault(locale); Configuration configuration = context.getResources().getConfiguration(); configuration.setLocale(locale); return context.createConfigurationContext(configuration); } }
@TargetApi(Build.VERSION_CODES.N) private static Context updateResources(Context context, String language) { Locale locale = new Locale(language); Locale.setDefault(locale); Configuration configuration = context.getResources().getConfiguration(); configuration.setLocale(locale); configuration.setLayoutDirection(locale); return context.createConfigurationContext(configuration); }
private static Context switchLocale(Context context, Locale locale) { Locale.setDefault(locale); Resources res = context.getResources(); Configuration config = new Configuration(res.getConfiguration()); config.setLocale(locale); context = context.createConfigurationContext(config); Log.i("MyPreferences", "Switching locale to " + config.locale.getDisplayName()); return context; }
@TargetApi(Build.VERSION_CODES.N) private static Context createConfigurationResources(Context context) { Resources resources = context.getResources(); Configuration configuration = resources.getConfiguration(); Locale locale=getInstance().getLanguageLocale(); configuration.setLocale(locale); return context.createConfigurationContext(configuration); } }
private static Context updateResources(Context context, Locale locale) { Locale.setDefault(locale); Resources res = context.getResources(); Configuration config = new Configuration(res.getConfiguration()); if (Build.VERSION.SDK_INT >= 17) { config.setLocale(locale); context = context.createConfigurationContext(config); } else { config.locale = locale; res.updateConfiguration(config, res.getDisplayMetrics()); } return context; }
private Context updateResources(Context context, String language) { Locale locale = new Locale(language); Locale.setDefault(locale); Resources res = context.getResources(); Configuration config = new Configuration(res.getConfiguration()); if (Utility.isAtLeastVersion(JELLY_BEAN_MR1)) { config.setLocale(locale); context = context.createConfigurationContext(config); } else { config.locale = locale; res.updateConfiguration(config, res.getDisplayMetrics()); } return context; }
public static Context updateResources(Context context) { Locale locale = new Locale(getLanguage()); Locale.setDefault(locale); Resources res = context.getResources(); Configuration config = new Configuration(res.getConfiguration()); if (Build.VERSION.SDK_INT >= 17) { config.setLocale(locale); context = context.createConfigurationContext(config); } else { config.locale = locale; res.updateConfiguration(config, res.getDisplayMetrics()); } return context; } }
@TargetApi(Build.VERSION_CODES.N) private static Context updateResources(Context context) { Resources resources = context.getResources(); Locale locale = getLocaleByLanguage(context); Configuration configuration = resources.getConfiguration(); configuration.setLocale(locale); configuration.setLocales(new LocaleList(locale)); return context.createConfigurationContext(configuration); }
@TargetApi(Build.VERSION_CODES.N) private static Context updateResources(Context context, String language) { Resources resources = context.getResources(); Locale locale = AppLanguageUtils.getLocaleByLanguage(language); Configuration configuration = resources.getConfiguration(); configuration.setLocale(locale); configuration.setLocales(new LocaleList(locale)); return context.createConfigurationContext(configuration); } }
@SuppressWarnings("deprecation") private void updateConfiguration(Configuration config) { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR1) { getBaseContext().createConfigurationContext(config); } else { getBaseContext().getResources().updateConfiguration(config, getBaseContext().getResources().getDisplayMetrics()); } } }