我想以编程方式更改应用中的语言。 第一个onCreate(Bundle)方法有效,图像以中文显示。 第二个不起作用。我必须在“TODO”评论中插入什么内容?我想在创建视图后更改语言,并希望更新它。
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
TranslationHelper.changeLanguage(this, Locale.CHINESE);
setContentView(R.layout.main_activity);
doBindService();
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main_activity);
TranslationHelper.changeLanguage(this, Locale.CHINESE);
// TODO recreate view to display chinese version
doBindService();
}
答案 0 :(得分:0)
第一个示例有效,因为它在调用setContentView
方法之前更改了语言环境。您需要在changeLanguage
之前插入setContentView
。
在setContentView
之后,所有视图都已经膨胀,因此此时更改的区域设置将不起作用。如果要在创建视图后更改语言,则需要手动更新它。