【问题标题】:Flutter app does not show the image - Unable to load assetFlutter 应用程序不显示图像 - 无法加载资产
【发布时间】:2019-06-17 10:33:03
【问题描述】:

我正在关注 Flutter 中的教程,我必须将图像文件添加到应用程序中,我按照示例进行操作,但是当我运行应用程序时没有显示任何内容。

我尝试更改和复制路径,但每次都得到相同的结果。 我按照说明更改了pubspec.file

这是代码的一部分:

          Card(
            child: Column(
              children: <Widget>[
                Image.asset('assets/images/download.jpg'),
                Text('Food Paradise')
              ],

这是来自 pubspec:

flutter:
  uses-material-design: true
assets:
    - assets/images/download.jpg

这是来自 RUN 日志:

  I/flutter (19491): ══╡ EXCEPTION CAUGHT BY IMAGE RESOURCE SERVICE 
╞════════════════════════════════════════════════════
I/flutter (19491): The following assertion was thrown resolving an image 
codec:
I/flutter (19491): Unable to load asset: assets/images/download.jpg
I/flutter (19491): 
I/flutter (19491): When the exception was thrown, this was the stack:
I/flutter (19491): #0      PlatformAssetBundle.load 
(package:flutter/src/services/asset_bundle.dart:221:7)
I/flutter (19491): <asynchronous suspension>
I/flutter (19491): #1      AssetBundleImageProvider._loadAsync 
(package:flutter/src/painting/image_provider.dart:429:44)
I/flutter (19491): <asynchronous suspension>
I/flutter (19491): #2      AssetBundleImageProvider.load 
(package:flutter/src/painting/image_provider.dart:414:14)
I/flutter (19491): #3      ImageProvider.resolve.<anonymous closure>. 
<anonymous closure> 
(package:flutter/src/painting/image_provider.dart:267:86)
I/flutter (19491): #4      ImageCache.putIfAbsent 
(package:flutter/src/painting/image_cache.dart:143:20)
I/flutter (19491): #5      ImageProvider.resolve.<anonymous closure> 
(package:flutter/src/painting/image_provider.dart:267:63)
I/flutter (19491): (elided 8 frames from package dart:async)
I/flutter (19491): 
I/flutter (19491): Image provider: AssetImage(bundle: null, name: 
"assets/images/download.jpg")
I/flutter (19491): Image key: AssetBundleImageKey(bundle: 
PlatformAssetBundle#49af1(), name:
I/flutter (19491): "assets/images/download.jpg", scale: 1.0)

应用程序正在运行,但没有显示图像。

【问题讨论】:

    标签: image flutter assets


    【解决方案1】:

    首先,pubspec.yaml 文件内容似乎没有正确缩进。

    应该是这样的

    flutter:
      uses-material-design: true
    
      assets:
        - assets/images/jpgs/test.jpg
    

    此外,请检查您的文件是否位于正确的路径中,该路径相对于pubspec.yaml
    最后,运行flutter packages get 以更新新文件。然后运行flutter clean 然后运行flutter run

    【讨论】:

      【解决方案2】:

      请记住,使用资产时必须包含目录。 Image.asset("assets/images/apersonreading.jpg"),

      【讨论】:

        【解决方案3】:

        如果您认为您输入的所有代码都正确,那么只需重新运行代码,而不是热重载或热重启。它对我有用。

        【讨论】:

        • 对了,可能作者也要检查一下flutter的reload限制,因为他想用hot-reload。请记住,只有构建路径会在热重载中进行评估。
        【解决方案4】:

        我的代码中出现了类似的问题,但我所做的是为与资产文件夹分离的图像创建另一个文件夹并移动我的所有图像,然后在我的 pubspec.yaml 文件中运行它

        *颤动:
        使用材料设计:是的

        资产: - 图片/waiting.png*

        在我的部分代码中,我使用了这个:

        Image.asset('images/waiting.png')

        【讨论】:

          猜你喜欢
          • 2021-01-17
          • 2021-11-07
          • 2022-08-10
          • 2016-08-16
          • 1970-01-01
          • 2020-04-28
          • 2021-05-10
          • 2020-04-11
          • 2021-06-21
          相关资源
          最近更新 更多