【发布时间】:2021-03-09 11:52:35
【问题描述】:
我是 Flutter 的新手。当我尝试加载资产时,我遇到了一个问题。
我检查了 pubspec.yaml 文件的身份,但找不到任何问题。
我检查了给定的路径。
我还尝试了其他图片,甚至扩展名(.png,.jpg)
这是例外:
The following assertion was thrown resolving an image codec:
Unable to load asset: assets/images/pink_flower.jpg
When the exception was thrown, this was the stack:
#0 PlatformAssetBundle.load (package:flutter/src/services/asset_bundle.dart:225:7)
<asynchronous suspension>
#1 AssetBundleImageProvider._loadAsync (package:flutter/src/painting/image_provider.dart:668:31)
#2 AssetBundleImageProvider.load (package:flutter/src/painting/image_provider.dart:651:14)
#3 ImageProvider.resolveStreamForKey.<anonymous closure>
(package:flutter/src/painting/image_provider.dart:504:13)
...
这是 .yaml 文件
name: flutterproject
description: VFL Lisesi uygulaması flutter ile.
publish_to: 'none'
version: 1.0.0+1
environment:
sdk: ">=2.7.0 <3.0.0"
dependencies:
flutter:
sdk: flutter
cupertino_icons: ^1.0.0
dev_dependencies:
flutter_test:
sdk: flutter
flutter:
uses-material-design: true
assets:
- assets/images/flower2.png
- assets/images/pink_flower.jpg
fonts:
- family: Montserrat
fonts:
- asset: assets/fonts/montserrat_black.ttf
weight: 300
- asset: fonts/montserrat_black_italic.ttf
weight: 300
- asset: fonts/montserrat_bold.ttf
weight: 600
- family: Trajan Pro
fonts:
- asset: fonts/TrajanPro.ttf
- asset: fonts/TrajanPro_Bold.ttf
weight: 700
ImageWidget
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
class ImageBanner extends StatelessWidget {
final String _path;
ImageBanner(this._path);
@override
Widget build(BuildContext context) {
// TODO: implement build
return Container(
constraints: BoxConstraints.expand(
height: 300.0,
),
child: Image.asset(
_path,
fit: BoxFit.cover,
),
);
}
}
调用 ImageWidget
ImageWidget('assets/images/pink_flower.jpg')
感谢您的帮助!
【问题讨论】:
-
你运行
flutter pub get并完全重启了吗? -
是的,我刚刚重新启动并修复了。
标签: image flutter dart assets flutter-dependencies