【问题标题】:how to use localized strings in flutter's main app如何在颤振的主应用程序中使用本地化字符串
【发布时间】:2020-11-13 16:16:38
【问题描述】:

我是 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.TitleS.of(context).Title,在这两种情况下,当程序启动时,我都会收到以下错误消息:

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

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

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

【问题讨论】:

    标签: flutter flutter-intl


    【解决方案1】:

    如文档所示:

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

    【讨论】:

      猜你喜欢
      • 2018-12-16
      • 2020-04-02
      • 1970-01-01
      • 1970-01-01
      • 2018-11-07
      • 1970-01-01
      • 2019-06-26
      • 1970-01-01
      • 2020-03-15
      相关资源
      最近更新 更多