Скользить с LocaleContextWrapper игнорировать язык - PullRequest
0 голосов
/ 08 ноября 2018

Привет, я сейчас использую com.github.bumptech.glide: glide: 4.4.0@aar как это

ContextWrapper contextWrapper = LocaleContextWrapper.wrap(itemView.getContext(),new Locale("en", "CA"));
GlideApp.with(contextWrapper)
              .load(res)
              .into((ImageView) itemView);

, где LocalContextWrapper

public class LocaleContextWrapper extends ContextWrapper {

    public LocaleContextWrapper(Context base) {
        super(base);
    }

    public static ContextWrapper wrap(Context context, Locale newLocale) {
        Resources res = context.getResources();
        Configuration config = res.getConfiguration();

        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
            config.setLocale(newLocale);

            LocaleList localeList = new LocaleList(newLocale);
            LocaleList.setDefault(localeList);
            config.setLocales(localeList);
            context = context.createConfigurationContext(config);
        } else if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
            config.setLocale(newLocale);
            context = context.createConfigurationContext(config);
        } else {
            config.locale = newLocale;
            res.updateConfiguration(config, res.getDisplayMetrics());
        }
        return new ContextWrapper(context);
    }

}

к сожалению, если пользователь переводит свой телефон на французский, будут отображаться картинки. Я знаю, что могу сделать slide_01_fr и slide_02_en. Но если у вас когда-нибудь возникла проблема, и вы нашли решение, я бы хотел узнать это.

...