我有这段代码:
Locale locale_en = new Locale("en");
Locale.setDefault(locale_en);
Configuration config_en = new Configuration();
config_en.locale = locale_en;
getBaseContext().getResources().updateConfiguration(config_en, getBaseContext().getResources().getDisplayMetrics());
它会改变语言环境,它运行得很好。问题是当我更改活动时,locales再次为新活动设置为默认值。以下是示例代码:
Button o_nas_bt = (Button) findViewById(R.id.o_nas_bt_id);
o_nas_bt.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
startActivity(new Intent("com.investwroclaw.ONASACTIVITY"));
}
});
我想更改整个应用的区域设置。有人可以帮助我吗?
Thax。
答案 0 :(得分:1)
确定。我有一个解决方案适用于我的特定情况(意味着在应用程序的主页上更改语言)。当我更改语言(这意味着更改语言环境)时,我使用Intent和此代码重启活动:
Intent intent = new Intent(InvestWroclawActivity.this, InvestWroclawActivity.class);
startActivity(intent);
答案 1 :(得分:1)
我实际上会考虑使用手机的语言环境。这实际上非常简单