Flutter错误:没有名为“displayLarge”的参数

23

我正在开发一个应用程序,2天前在git上发布了最新的更新,自那以后没有修改过代码。现在,当我尝试运行它时,打开Android Studio后出现了以下错误...我尝试从我的电脑中删除存储库,然后再次克隆它,但没有成功。我还尝试搜索类似的问题,并发现了一个与speed-dial包有关的类似问题,其中一条评论提到了损坏的软件包版本。无论如何,在尝试运行我的应用程序后,我得到了以下错误:

输入图像描述

这是它给我的第一些错误行,但接下来还有一千多行。

我还尝试运行flutter doctor,它给了我以下结果:

输入图像描述


1
请考虑将日志添加为文本而不是图像。 - Amir_P
7个回答

35

google_fonts: ^2.3.1已经解决了google_fonts: 2.3.0存在的问题。

嗯!使用插入符号(^)的所有包含google_fonts的项目都会遇到这个问题。

在Dart中,插入符号(^)用于表示允许使用的版本号范围。具体来说,从指定版本开始,到下一个非破坏性版本之前的任何版本都可以。

因此,google_fonts: ^2.2.0与“>=2.2.0 <3.0.0”相同,是这种较长形式的简写方式。^表示,我希望自动使用来自Pub的最新程序包,只要该更新不会破坏我的应用程序。目前,google_fonts: 2.3.0存在一些问题。

解决步骤:

  1. 从当前的google_fonts中删除(^),将其最大版本设置为google_fonts: 2.2.0。
  2. 为确保不会与其他依赖项发生冲突,先运行'pub get'。
  3. 尝试无效缓存并重新启动。这应该可以清除错误,否则请执行flutter clean,以删除旧版本的google_fonts并重新运行pub get。

完成!您现在可以愉快地编码了!!!


1
去掉那个字符就解决了!谢谢!我尝试过 pub cache clean 和 flutter clean,但都没用。去掉那个字符就可以了。 - Aadn
1
我很高兴能够帮助。 - ViKi Vyas
1
你让我的一天变得美好 :) - Mimu Saha Tishan
1
清除 pub 缓存、重新安装 Flutter 并苦苦挣扎了将近 3 小时后,终于成功了! - manish kiranagi

18

我不知道您是否尝试过这个方法,但是这个问题在这里有描述:issue 219

简而言之,您需要使用google_fonts v2.3来配合Flutter v2.1或更高版本。


3
感谢您找到了这个解决方法,这是一个非常令人恼火的错误。当运行小部件测试(如flutter test test/widget_test.dart)时,它突然出现了。这个错误可能意味着在执行 flutter pub upgrade 后会有大量 Flutter 测试失败。我确认所提供的建议解决了这个问题-特别是,我将 pubspec.yaml 中的依赖从 google_fonts: ^2.2.0 更改为 google_fonts: 2.2.0 - mzimmermann
1
太好了。如果您的问题已经解决,请考虑将此问题标记为已回答。 - Firus
我已经为您的解决方案点赞,但我不认为我能够接受它,因为我不是原始问题的作者。 - mzimmermann

18

请按以下步骤解决问题:

  1. 打开 pubspec.yaml 文件。
  2. 将 google_fonts: ^2.2.0 改为 google_fonts: 2.2.0。
  3. 保存。

10

将软件包版本设置为google_fonts: 2.2.0,它应该可以正常工作


0

正如他们所说,在 pubspec.yaml 的依赖项中,只需从 Google 字体的版本号前面删除 ^(即将 google_fonts: ^2.3.1 改为 google_fonts: 2.3.1),然后运行 flutter clean && pub get。


你的回答可以通过提供更多支持信息来改进。请编辑以添加进一步的细节,例如引用或文档,以便他人可以确认你的答案是正确的。您可以在帮助中心中找到有关如何编写良好答案的更多信息。 - Community

0
在我的情况下,只有Windows目录出现了这个问题。我解决方法是删除了我的pubspec.lock和podfile.lock文件,并重新安装了包,这样问题就解决了。

-1

我曾经遇到过同样的问题,但这并不是依赖项的问题,与其他人不同。当我将“shape”放在样式的范围内时,我不再遇到此错误。

以下是我的问题示例:

      ElevatedButton(
        child: Text('Sign in with Google'),
        onPressed: _signInWithGoogle,
        style: ElevatedButton.styleFrom(
          backgroundColor: Colors.white,
          foregroundColor: Colors.black,
        ),
        shape: RoundedRectangleBorder(
          borderRadius: BorderRadius.circular(16.0),
        ),
      ),

当“shape”停止出现错误时的示例:

      ElevatedButton(
        child: Text('Sign in with Google'),
        onPressed: _signInWithGoogle,
        style: ElevatedButton.styleFrom(
          backgroundColor: Colors.white,
          foregroundColor: Colors.black,
          shape: RoundedRectangleBorder(
            borderRadius: BorderRadius.circular(16.0),
          ),
        ),
      ),

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接