修改现有的Flutter应用程序使其多语言



我有一个成熟的工作Flutter应用程序。现在,我希望它支持多种语言,如西班牙语,印地语,乌尔都语等(主要是印度语言,可在谷歌翻译)。

我已经搜索了这个,但他们都提到了"arb文件"。我相信,我必须手动编写整个应用程序的每个翻译字符串。

我想用一个类(或只是一个方法)构建一个包,它可能需要2个参数,字符串和需要翻译的区域设置。

请建议我最好的方法来实现它,我怎么做。如能提供教程的链接将不胜感激。

Flutter自己对i18n的一步一步讲解实际上是当您输入&;Flutter本地化&;时弹出的第一个结果谷歌。

https://docs.flutter.dev/development/accessibility-and-localization/internationalization

如果出于某种原因您不想要.arb文件,您可以滚动您自己的。但要做好准备,你会发现一路上错过了什么,并最终与一个自制的解决方案,比自己更糟糕,以实现同样的事情。

没有翻译文本的神奇函数。即使你可以使用翻译服务进行即时翻译,翻译服务近年来已经变得非常好,但他们(就像你可以雇佣的任何一个人一样)只有在他们得到的语境中才会很好。如果他们只有单个单词或半句话,就像在带有标题和按钮的应用程序中常见的那样,结果将是可怕的。就好像你把每个单词都放进字典一样。这不是翻译。这会让人觉得做作和可笑。

所以…尝试一下现有的软件包。从"振子"开始。这可能看起来很复杂,但它的复杂是有原因的。

最新更新