如何将默认应用程序区域设置从EN更改为其他语言?

时间:2012-03-26 10:01:45

标签: android

我的Android应用程序的默认语言是捷克语;它是应用程序在其res/values文件夹中包含的唯一语言。应用程序本身是针对特定国家/地区的,对于那些无法阅读捷克语的人来说没有任何意义。

我刚刚尝试将我的应用程序放在Android Market上,并将其默认语言设置为英语。无论是在市场上还是在应用程序的清单中都无法更改它。 我尝试将应用程序字符串放入res/values-cs文件夹,但之后市场阻止我上传.apk并显示以下错误:

错误获取'android:icon'属性:属性不是字符串值

经过一些谷歌搜索后,我发现res/values文件夹是强制性的,但我怎么能告诉Market它包含捷克文,而不是英文?

1 个答案:

答案 0 :(得分:0)

首先,你必须从资源中获取所有文本数据。

为区域设置更改添加此项:

Resources res = getResources();
Configuration newConfig = new Configuration(res.getConfiguration());
newConfig.locale = Locale.ANY_OTHER_LANGUAGE;

此外,您还必须为要更改的其他语言插入字符串值。

例如,如果你想要japenes语言环境:在res中创建一个名为value-ja的文件夹,并将所有japenes文本值粘贴到string.xml中并引用它们。

修改 您还需要重新启动活动才能使设置生效。重启活动的代码如下所示:

public void reload() {
    Intent intent = getIntent();
    overridePendingTransition(0, 0);
    intent.addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION);
    finish();
    overridePendingTransition(0, 0);
    startActivity(intent);
}