我的Android应用程序的默认语言是捷克语;它是应用程序在其res/values
文件夹中包含的唯一语言。应用程序本身是针对特定国家/地区的,对于那些无法阅读捷克语的人来说没有任何意义。
我刚刚尝试将我的应用程序放在Android Market上,并将其默认语言设置为英语。无论是在市场上还是在应用程序的清单中都无法更改它。
我尝试将应用程序字符串放入res/values-cs
文件夹,但之后市场阻止我上传.apk并显示以下错误:
错误获取'android:icon'属性:属性不是字符串值
经过一些谷歌搜索后,我发现res/values
文件夹是强制性的,但我怎么能告诉Market它包含捷克文,而不是英文?
答案 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);
}