Java 如何使用多种语言的字符串创建对话框

Java 如何使用多种语言的字符串创建对话框,java,android,arrays,Java,Android,Arrays,我试图在Android studio上创建一个对话框,用不同的语言显示错误消息。 目前,我只有一条错误消息(德语): 我想我需要创建数组并用其他语言添加相同的消息,问题是我还不知道怎么做。也许正如您之前所述,您可以创建应用程序支持的不同语言的数组列表(可能有一个选项菜单供选择)然后在硬编码文本的地方(例如“Keine Internetverbindung verfügbar:”),将其替换为方法中的另一个参数 就可以使用的数组而言,根据程序的大小和组织方式,可以为每种语言创建不同的ArrayLi

我试图在Android studio上创建一个对话框,用不同的语言显示错误消息。 目前,我只有一条错误消息(德语):


我想我需要创建数组并用其他语言添加相同的消息,问题是我还不知道怎么做。

也许正如您之前所述,您可以创建应用程序支持的不同语言的数组列表(可能有一个选项菜单供选择)然后在硬编码文本的地方(例如“Keine Internetverbindung verfügbar:”),将其替换为方法中的另一个参数

就可以使用的数组而言,根据程序的大小和组织方式,可以为每种语言创建不同的ArrayList对象。我建议您为程序中的所有短语制作一个HashMap,并以这样的方式组织它们:第一个字符串类似于“germanIntro”,第二个字符串类似于“Keine Internetverbindung verfügbar:”

为了了解更多关于如何使用ArrayList或HashMap的信息,我建议只通过谷歌搜索或查看其他堆栈溢出答案

编辑:我确信自动翻译器在某种程度上是可用的(我从未尝试过),但我知道它们不是100%准确的。也就是说,如果你懂这门语言,我建议你对正确的短语进行硬编码

不,你不需要, 看看本地化,

您可以为通用方法创建一个
/values/strings.xml

您必须为德语创建
/values de/strings.xml

然后在
/values/strings.xml
之后

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="message">No internet connection available</string>
</resources>
<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="message">Keine Internetverbindung verfügbar</string>
</resources>
void onReceivedError(WebView view, int errorCod, String description, String failingUrl) {
            // Error message + error description
            Toast.makeText(Main.this, getString(R.string.message), Toast.LENGTH_LONG).show();
       }
然后您可以根据本地化字符串显示对话框

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="message">No internet connection available</string>
</resources>
<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="message">Keine Internetverbindung verfügbar</string>
</resources>
void onReceivedError(WebView view, int errorCod, String description, String failingUrl) {
            // Error message + error description
            Toast.makeText(Main.this, getString(R.string.message), Toast.LENGTH_LONG).show();
       }

假设你的应用程序使用系统语言,看看。嗨,你没试过吗?它就像@ShreeKrishna说的那样工作。谢谢如果你仍然有一些问题,那么我准备帮助其他人,请随时接受答案。我会很高兴。。。