片段中有一个按钮,我曾经在语言之间切换。但是,当我单击该按钮时, >,在语言之间切换时,不会更改语言。
Locale locale = new Locale(MyPrefences.LANGUAGE_TO_LOAD);
if (locale.equals("ar"))
{
locale = new Locale(MyPrefences.LANGUAGE_TO_LOAD);
Locale.setDefault(locale);
MyPrefences.SET_VALUES(getApplicationContext());
}
else
{
locale = new Locale(MyPrefences.LANGUAGE_TO_LOAD);
Locale.setDefault(locale);
MyPrefences.SET_VALUES(getApplicationContext());
}
Resources resources = mContext.getResources();
Configuration configuration = resources.getConfiguration();
configuration.locale = locale;
resources.updateConfiguration(configuration, resources.getDisplayMetrics());
}
我在另一个应用程序中使用了相同的代码,因为我使用了活动,所以它可以正常工作 但是现在我正在使用 Fragment ,现在它不起作用 我被卡住了,请提出克服建议
答案 0 :(得分:0)
确保mContext
不为null。
您可以从任何视图中获取片段中的上下文。
view.getContext()
,并使用它来获取资源并更改配置。