从Android应用程序中具有全局范围的代码设置区域设置

时间:2012-10-30 13:54:49

标签: java android

我有这段代码:

            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。

2 个答案:

答案 0 :(得分:1)

确定。我有一个解决方案适用于我的特定情况(意味着在应用程序的主页上更改语言)。当我更改语言(这意味着更改语言环境)时,我使用Intent和此代码重启活动:

            Intent intent = new Intent(InvestWroclawActivity.this, InvestWroclawActivity.class);
            startActivity(intent);              

答案 1 :(得分:1)

我实际上会考虑使用手机的语言环境。这实际上非常简单