我一直在尝试使用下一个代码更改语言环境:
private void changeLocal(Locale locale){
Locale.setDefault(locale);
Configuration config = new Configuration();
config.locale = locale;
getBaseContext().getResources().updateConfiguration(config,
getBaseContext().getResources().getDisplayMetrics());
refresh();
}
private void refresh() {
finish();
Intent myIntent = new Intent(this, getClass());
startActivity(myIntent);
}
它适用于法语,但不适用于希伯来语。所以我通过调用查看了设备支持的语言环境Locale.getAvailableLocales()
,我发现那里有法语但没有希伯来语。
如果我输入硬编码的希伯来语文本,我可以看到它,所以它已安装,但我不知道如何强制设备使用它。
请帮助我使用希伯来语强制设备。
refresh
PS即使在添加时也无法完成这项工作
android:configChanges="locale|layoutDirection"
对我的清单它不调用onConfigurationChanged
我的活动