Android实现多语言支持

时间:2019-01-24 19:18:31

标签: java android kotlin locale multilingual

在Android上实现多语言支持的最佳方法 1.使用string.xml文件 2.从服务器端获取语言翻译?

有办法从后端获取xml并节省资源吗?后端开发人员建议我从服务器获取语言翻译。

2 个答案:

答案 0 :(得分:2)

我在中国所有的Apps都使用Android框架。步骤是:

  1. 维护所有字符串的列表。
  2. 请勿在您的Android Java中对字符串进行硬编码,请参考XML。
  3. 您可以使用诸如Google翻译或百度翻译(翻译)之类的服务器站点或等效站点。

例如,这是我的活动代码示例,用于引用字符串:

tx1 = (TextView) findViewById(R.id.your_textview);
tx1.setText(R.string.msg_about_feedback);

以下是res> values> strings.xml的摘录

<string name="msg_about_feedback">Feedback</string>
<string name="msg_about_filesource">File Source</string>
<string name="msg_about_cloudIP">Server</string>
<string name="msg_about_localIP">Server</string>
<string name="msg_about_serverIP">Server</string>

这是res> values-zh> strings.xml

<string name="msg_about_feedback">反馈</string>
<string name="msg_about_filesource">文件源</string>
<string name="msg_about_cloudIP">服务器</string>
<string name="msg_about_localIP">服务器</string>
<string name="msg_about_serverIP">服务器 IP</string>

您必须确保每个语言文件中的条目都匹配。如果文件中缺少字符串之一,则Android Studio将标记错误。使用这种方法,一切都由Android处理。

如果您不熟悉次要语言,最好让别人检查翻译。经常由于上下文,语法等原因而盲目地获取翻译服务器的输出时,您得不到正确的答案。

答案 1 :(得分:1)

最好的方法是使用string.xml文件。这是Android上对I18n处理的强大框架支持,企业应用程序正是以此为基础构建的。