Флаттер - Перевести oninit - PullRequest
1 голос
/ 11 марта 2019

Класс 1

@override
      void initState() {
        super.initState();
        text =DemoLocalizations.of(context).trans('connection');
      }

Класс 2 (ДемоЛокализация)

 Future<bool> load() async {

    String data = await rootBundle.loadString('locale/i18n_${locale.languageCode}.json');
    Map<String, dynamic> _result = json.decode(data);

    this._sentences = new Map();
    _result.forEach((String key, dynamic value) {
      this._sentences[key] = value.toString();
    });

    return true;
  }

Возвращение

enter image description here

Итак, вопрос: как я могу загрузить пользовательскую строку (internazionalization) при загрузке экрана (oninit)?

1 Ответ

1 голос
/ 11 марта 2019

Используйте didChangeDependencies вместо initState.
Он вызывается один раз после создания виджета и снова, когда изменяется состояние демо-локализации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...