首页 > 解决方案 > Flutter:无法加载资产文件“car.png”

问题描述

我已经在我的项目根目录中添加了我的资产文件,其中包含图像、字体和声音。

资产文件夹

在 pubspec.yml 文件中添加资产,如下所示:

flutter:

  uses-material-design: true

  assets:
    - assets/images/

然后我尝试通过 Image.asset 添加图像,如下面的代码:

Scaffold(
      appBar: AppBar(
        leading: Align(
          alignment: Alignment.centerRight,
          child: Text(
            "Uber",
            style: TextStyle(
              fontSize: 22.0,
              fontWeight: FontWeight.w400
            ),
          )
        ),
      ),
      body: Column(
        children: [
          Text(
            "riyad", 
            style: TextStyle(color: Colors.black),
          ),
          Image.asset("car_android.png") <-- this like 
        ],
      ),
    );

但它向我显示了无法加载资产的异常:

解析图像编解码器时引发了以下断言:无法加载资产:car_android.png”

我的回溯异常:

════════ Exception caught by image resource service ════════════════════════════
The following assertion was thrown resolving an image codec:
Unable to load asset: car_android.png

When the exception was thrown, this was the stack
#0      PlatformAssetBundle.load (package:flutter/src/services/asset_bundle.dart:224:7)
<asynchronous suspension>
#1      AssetBundleImageProvider._loadAsync (package:flutter/src/painting/image_provider.dart:672:14)
<asynchronous suspension>
Image provider: AssetImage(bundle: null, name: "car_android.png")
Image key: AssetBundleImageKey(bundle: PlatformAssetBundle#243b1(), name: "car_android.png", scale: 1.0)

我尝试运行命令flutter clean命令来清理缓存,然后再次运行应用程序,但同样的问题再次出现,它无法加载资产。我是颤振新手,请提供描述性答案,并建议我阅读一些博客

标签: flutterdart

解决方案


指定图片路径如下

Image.asset("assets/images/car_android.png")

或者

Image(image: AssetImage("assets/images/car_android.png"))

问题是颤振无法识别您的图像的确切存储位置。

如果问题仍然存在,请尝试执行 HOT RESTART 这将解决您的问题。

如果您更新 pubspec.yaml 文件flutter pub get,如果您的 IDE 没有自动更新它,则运行以更新库。


推荐阅读