image - Flutter 图像未加载(异常 : resolving an image codec)

标签 image dart flutter codec

当我尝试运行未正确加载的图片资源时,我遇到了异常:

The following assertion was thrown resolving an image codec: Unable to load asset: /images/p8.png`

几周前它还在工作,现在它停止了。我也尝试从不同的 pc 和 mac 运行(使用模拟器),但仍然无法加载图像。而是正确加载了字体。

这是我加载图像的方式,它们在 GridView 中呈现 下面是代码:

return new Expanded(
      child: new GridView.count(
          crossAxisCount: 2,
          padding: const EdgeInsets.fromLTRB(16.0, 25.0, 16.0, 4.0),
          children: <Widget>[
            new MaterialButton(
              onPressed: () {
                Navigator.of(context).pushNamed('/biliardo');
              },
              child: new Column(
                children: <Widget>[
                  new Image(
                    //parte importante, definire gli asset per trovarli più velocemnte
                    //si inseriscono nel pubspec.yaml
                    image: new AssetImage('/images/p8.png'),
                    height: 100.0,
                    width: 100.0,
                  ),
                  new Text(
                    "BILIARDO",
                    style: new TextStyle(
                      color: (darkTheme) ? Colors.blue : Colors.black,
                    ),
                  )
                ],
              ),
            ),

            .....

    );

pubsec.yaml 文件代码:

flutter:
  uses-material-design: true
  assets:
    - images/emptyBall.png
    - images/p1.png
    - images/p2.png
    - images/p3.png
    - images/p4.png
    - images/p5.png
    - images/p6.png
    - images/p7.png
    - images/p8.png
    - images/p9.png
    - images/p10.png
    - images/p11.png
    - images/p12.png
    - images/p13.png
    - images/p14.png
    - images/p15.png
    - images/basket.png
    - images/volley.png
    - images/tennis.png
    - images/rugby.png
    - images/numbers.png
  fonts:
    - family: ShotClock
      fonts:
        - asset: utils/ShotClock.ttf

日志

flutter 分析

Analyzing D:\Android\AndroidStudioProjects\flutter_app...
No issues found!
Ran in 5.2s

flutter -v 运行

https://docs.google.com/document/d/133Z7029VGJXBDCYLgCrj09F9cLbvIQQ5X8yBS4pPC7I/edit?usp=sharing

flutter 医生

flutter 医生-v

[√] Flutter (Channel beta, v0.3.1, on Microsoft Windows [Versione 10.0.16299.371], locale it-IT)
    • Flutter version 0.3.1 at C:\Program Files\Flutter\flutter
    • Framework revision 12bbaba9ae (12 days ago), 2018-04-19 23:36:15 -0700
    • Engine revision 09d05a3891
    • Dart version 2.0.0-dev.48.0.flutter-fe606f890b

[√] Android toolchain - develop for Android devices (Android SDK 27.0.3)
    • Android SDK at C:\Users\Zanini\AppData\Local\Android\sdk
    • Android NDK location not configured (optional; useful for native profiling support)
    • Platform android-27, build-tools 27.0.3
    • Java binary at: C:\Program Files\Android\Android Studio\jre\bin\java
    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1024-b02)
    • All Android licenses accepted.

[√] Android Studio (version 3.1)
    • Android Studio at C:\Program Files\Android\Android Studio
    • Flutter plugin version 24.0.1
    • Dart plugin version 173.4700
    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1024-b02)

[√] Connected devices (1 available)
    • Nexus 5X • 01cde5e7db8d4c14 • android-arm64 • Android 8.1.0 (API 27)

• No issues found!

最佳答案

去掉 png 路径中​​的前导 /。它应该是 images/p8.png.

另外,考虑使用更简洁的 Image.asset 构造函数,例如:

new Image.asset('images/p8.png', width: 100.0, height: 100.0)

关于image - Flutter 图像未加载(异常 : resolving an image codec),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50130933/

相关文章:

datetime - 当我得到 endDate.millisecondsSinceEpoch 和 startDate.millisecondsSinceEpoch 之间的差异时,它给了我结果加上 2 小时?

图像裁剪 - 感兴趣区域查询

image - 如何将图像的像素数映射到另一个分辨率图像

dart - 如何使用 rxdart 获取 Stream<String> 中的最后一个值?

flutter - 更改应用程序语言后,showTimePicker 对话框会出现 24 小时抖动

android-studio - 如何解决 flutter 中的版本控制

javascript - Ember.js - 在嵌套路由更改时呈现不同的布局

php - 当用户编辑他们的个人资料时,如何避免图像被覆盖为空白?

flutter - 如何在Dart中使用StreamZip合并流

flutter - 使用 VSCode 和 WSL2 开发 Flutter