Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 无本地化的Android多语言支持_Java_Android - Fatal编程技术网

Java 无本地化的Android多语言支持

Java 无本地化的Android多语言支持,java,android,Java,Android,嗨,我在做一个android项目 我想为应用程序提供多语言支持。 我对它进行了研究,但我发现几乎所有与本地化有关的东西 有没有办法不用本地化就能做到这一点 我的首选是对本地化或受支持的版本使用语言支持 我的意思是用户可以在应用程序中切换语言 我可以用多值文件执行此操作吗?您可以使用Android的默认语言文件,并在调用setContentView()之前设置应使用的语言。 这里有一篇关于它的短文: 使用此选项通过代码更改语言-- 写语言的国家代码来代替“en_US”你想要的任何语言…比如日语--

嗨,我在做一个android项目

我想为应用程序提供多语言支持。 我对它进行了研究,但我发现几乎所有与本地化有关的东西

有没有办法不用本地化就能做到这一点

我的首选是对本地化或受支持的版本使用语言支持

我的意思是用户可以在应用程序中切换语言


我可以用多值文件执行此操作吗?

您可以使用Android的默认语言文件,并在调用setContentView()之前设置应使用的语言。 这里有一篇关于它的短文:

使用此选项通过代码更改语言--

写语言的国家代码来代替“en_US”你想要的任何语言…比如日语--“ja_JP”阿拉伯语--“ar”或者查看国家代码的链接--

并在res/values ja中为日语或res/values ar为阿拉伯语创建文件夹

然后制作string.xml文件,并在布局中添加所需的语言。。 它将从values文件夹中获取默认语言,否则您需要手动获取,然后它将从外部文件夹中获取值ar等,如

阿拉伯语的res/ar值示例--


تصفية حسب
2011 فرق 
بحث :


希望对你有帮助

是,您可以使用

Locale locale = new Locale("en_US");
 Locale.setDefault(locale);
 Configuration config = new Configuration();
 config.locale = locale;
 context.getApplicationContext().getResources().updateConfiguration(config, null); 

方法,然后

SDK版本7支持它吗?这取决于语言。像日语一样,将支持1.5版本。大多数语言支持2.3.3版本。我正在2.3.3和emulator上测试这一点。他们都有en-us语言工作语言,而我对日语有更改或使用语言环境=新语言环境(“ja”);我错在哪里???@Hulk我遵循你的方式,但没有达到我错在哪里我正在尝试用英语-美国“en-us”日本“ja”印地语“hi”,和我在res/values/string中输入的字符串相同。xml@amitsharma:使用“ja_JP”对于日本人来说,你已经解决了他的问题了吗如果你在这里发布了你的技巧或代码,你的问题有没有解决
<?xml version="1.0" encoding="UTF-8"?>
  <resources>
     <string name="spinner_label">تصفية حسب</string>
     <string name="app_name">2011 فرق</string> 
     <string name="search">بحث :</string>
  </resource>
Locale locale = new Locale("en_US");
 Locale.setDefault(locale);
 Configuration config = new Configuration();
 config.locale = locale;
 context.getApplicationContext().getResources().updateConfiguration(config, null);