提供多语言支持

时间:2012-11-23 12:14:40

标签: android

如何在我的Android应用程序中提供多语言支持?我正在开发一个应用程序,我必须提供六种不同的语言支持,在选择法语时我的应用程序的全文将转换为法语。

5 个答案:

答案 0 :(得分:1)

您基本上不会将字符串放在代码中,而是将它们放入应用程序资源并通过ID引用。在运行时,Android只需获取您的ID并返回匹配的字符串。如果使用更改语言,则使用不同的资源文件(字符串ID保留在资源之间),因此您的代码不需要任何更改。

以下是您要开始使用的Android开发者网站上的文章:Localization

修改

您还应阅读本文:Supporting Different Languages

这是关于这个主题的tutorial

答案 1 :(得分:0)

Market   Region code  Language Android  language/region code    String file   Android version

Greece  GR  Greek   el_rGR  res/values-el/strings.xml   Since 2.3
Italy   IT  Italian it_rIT  res/values-it/strings.xml   Since 1.5
Netherlands NL  Dutch   nl_rNL  res/values-nl/strings.xml   Since 1.5
Portugal    PT  Portuguese  pt_rPT  res/values-pt/strings.xml   Since 2.3
Spain   ES  Spanish es_rES  res/values-es/strings.xml   Since 1.5

Android的多语言支持很容易。使用语言代码的后缀为语言创建新值目录。对于german:values-de或french:values-fr而不是将strings.xml复制到其中并翻译每个条目。这就是你所需要的一切。

http://developer.vodafone.com/how-support-multiple-languages-android/

答案 2 :(得分:0)

我正在给你链接,所以请点击此链接,你就会得到你的解决方案。

http://selvamsankarans.blogspot.in/2012/05/multiple-language-support-in-android.html

答案 3 :(得分:0)

你要做的是在你的values文件夹中创建一个名为strings.xml的文件,然后为你想要支持的每种语言创建另一个文件夹,例如values-sv,并将你翻译的strings.xml文件放在那里。然后在你的代码中只使用字符串资源而不是硬编码引用,例如

mActivity.getResources().getString(R.string.myTitle);

答案 4 :(得分:0)

您应该只在values-fr(法语)中添加一个文件夹,并将其添加到res文件夹下。在那里将strings.xml文件与您的法语字符串放在一起。 Android系统将首先使用设备的语言代码查找values文件夹,如果未找到,则会使用默认的values文件夹。

您的结构应如下所示:

res/
  values/
     strings.xml
  values-fr/
     strings.xml

我写了一篇关于这个主题的博客文章。查看here