我的问题是我有一个日记应用程序,我通过从自定义日历视图中选择特定日期来添加笔记。当用户将手机语言从英语更改为任何其他语言时,问题就开始了,如果用户选择日语作为手机的新语言,月份的名称将被转换为日语。现在我希望如果用户选择除英语以外的任何其他语言,月份的名称也应仅以英语显示。我搜索了很多,但找不到任何有用的东西。
任何积极的回应都将受到高度赞赏。谢谢。
我的问题是我有一个日记应用程序,我通过从自定义日历视图中选择特定日期来添加笔记。当用户将手机语言从英语更改为任何其他语言时,问题就开始了,如果用户选择日语作为手机的新语言,月份的名称将被转换为日语。现在我希望如果用户选择除英语以外的任何其他语言,月份的名称也应仅以英语显示。我搜索了很多,但找不到任何有用的东西。
任何积极的回应都将受到高度赞赏。谢谢。
您应该使用自定义日历,并且当您Locale
以编程方式将日历更改(语言)显示为英语时。
希望它可以帮助你。
编辑 :
您可以使用以下代码更改语言:
public void changeLang(String lang)
{
if (lang.equalsIgnoreCase(""))
return;
myLocale = new Locale(lang);
saveLocale(lang);
Locale.setDefault(myLocale);
android.content.res.Configuration config = new android.content.res.Configuration();
config.locale = myLocale;
getBaseContext().getResources().updateConfiguration(config, getBaseContext().getResources().getDisplayMetrics());
updateTexts();
}
通过传递您的语言来调用此方法 Like :
changeLang("en");
注意res/string.xml
:您必须在文件中为英语定义您的字符串。你应该设置你的字符串String.xml
不是静态的。
例如,为了您的关注您的日历名称设置为...
yourtextview.getResources().getString(R.string.january);