java - 如何使用 Java 代码制作多语言应用程序?

标签 java android multilingual dynamic-text

我已经很清楚使用 string.xml 代码在 Android 上制作多语言应用程序是多么容易。那部分很好也很简单。

问题是我的应用程序中有很多动态文本是用我的 Java 代码制作的。这是我找不到如何制作多语言的部分。我描绘解决方案的方式是有某种条件,在这种条件下我验证它使用的是什么语言,并更改字符串。例如:

 if(language.equals(English))
      textView1.setText("Hi! This is in English!");
 if(language.equals(Portuguese))
      textView1.setText("Oi! Isso é em Português!");

我可以做这样的事情吗?如果可以,我该怎么做?

谢谢!

最佳答案

也将这些字符串提取到 strings.xml 文件中,它会根据语言从正确的文件中选择值。 没有理由在您的 java 中硬编码这些字符串。

String hello = getResources().getString(R.string.hello);

将拥有正确的语言(如果可用),因为在运行时,Android 系统会根据当前为用户设备设置的语言环境使用适当的字符串资源集。 例如,如果您有包含 res/values/strings.xmlres/values-ru/strings.xml 并且设备是俄语的,它将采用值 (如果可用的话)从第一个开始。

关于java - 如何使用 Java 代码制作多语言应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23815932/

相关文章:

Java 1.4 到 Java 1.5 - 重写代码并避免 @SuppressWarnings

java - Java中如何匹配多个正则表达式并判断哪个表达式匹配

用于 ListView 的 Android 自定义布局

android - Kotlin协程:与工作计划有关。(invokeOnCompletion)

asp.net-mvc - ASP.Net MVC 的 RESX 文件编辑器

Solr:多语言索引和多值字段的 DIH?

java - javax.servlet.Filter 会拦截 Websocket 消息吗? (Java 服务小程序 API)

java - 使用按钮使组件不可见

android - Android View 中的默认枢轴是什么?

javascript - 如何在 React 中延迟加载 js 文件(针对多语言应用程序)