0

我是 Flutter 的新手,我正在使用 flutter-intl 插件构建一个本地化的应用程序。我已经在 .arb 文件中为我的语言环境声明了一个“标题”字符串。我的程序正在尝试按如下方式使用此字符串:

  Widget build(BuildContext context) {
    return MaterialApp(
      localizationsDelegates: [
        S.delegate,
        GlobalMaterialLocalizations.delegate,
        GlobalWidgetsLocalizations.delegate,
        GlobalCupertinoLocalizations.delegate,
      ],
      supportedLocales: S.delegate.supportedLocales,
      title: S.current.Title,

我试过使用S.current.Titleand S.of(context).Title,在这两种情况下,当程序启动时,我都会收到以下错误消息: 在此处输入图像描述

当我将 title 属性更改为 时title: 'my title',应用程序执行热重载并且错误屏幕消失。当我将标题更改回title: S.current.Title本地化标题时,显示没有错误。

Android-studio 和 VS-Code 与 web 和 Android 目标一致地证实了这种行为。

我想这与 Flutter 的初始化序列有关。在 MaterialApp 中使用本地化字符串作为属性的正确方法是什么?

4

1 回答 1

1

正如文档所示:

要改为提供本地化标题,请使用onGenerateTitle

于 2020-11-08T02:34:02.580 回答