首页 > 解决方案 > 我怎样才能给字符串翻译?

问题描述

我正在使用键-值转换S.of(context).translation_key--但我需要类似"Translation string".translate()translate("Translation string")

我怎样才能做到这一点 ?

我正在使用本地化插件。Flutter 版本是最新的。

注意:我不是要求translate("key")我是要求translate("Translate String") 我想给出一个值并获得当前的翻译值。

标签: flutterdartflutter-intl

解决方案


我建议你用另一种方式来做:

String _localeCode = 'en';

你的方法:

String translate(String key) {
  if (_localeCode == 'en') {
    if (key == 'key1') return 'English translation for key1';
    else if (key == 'key2') return 'English translation for key2';
  } else if (_localeCode == 'es') {
    if (key == 'key1') return 'Spanish translation for key1';
    else if (key == 'key2') return 'Spanish translation for key2';
  }
}

你会使用它:

void main() {
  var translatedString = translate('key1');
}

为简单起见,我对这些东西进行了硬编码,但更好的解决方案是通过 json 文件加载密钥,这是一种更好的方法


推荐阅读