flutter找不到我的图像资产,我该怎么办?
我在调试器上遇到了错误:
在XT1097上以调试模式启动lib / main.dart ... 内置build / app / outputs / apk / debug / app-debug.apk。
I/flutter ( 876): ══╡ EXCEPTION CAUGHT BY IMAGE RESOURCE SERVICE ╞══
I/flutter ( 876): Unable to load asset: assets/images/user/background.jpg
I/flutter ( 876): "assets/images/user/background.jpg", scale: 1.0)
我的pubspec.yml:
environment:
sdk: ">=2.0.0-dev.68.0 <3.0.0"
dependencies:
sqflite: any
path_provider: '>=0.3.0'
charts_flutter: any
cupertino_icons: ^0.1.2
material_search: ^0.2.8
dio: ^1.0.3
flutter:
sdk: flutter
dev_dependencies:
flutter_test:
sdk: flutter
flutter:
uses-material-design: true
assets:
- assets/images/
和代码:
new UserAccountsDrawerHeader(
decoration : BoxDecoration(
image: new DecorationImage(
image: AssetImage('assets/images/user/background.jpg'),
fit: BoxFit.cover
),
color: Colors.blue,
),
accountName: new Text('Diego Botelho'),
accountEmail: new Text('dibmartins@gmail.com'),
currentAccountPicture: new GestureDetector(
onTap: () => print('Toque na imagem'),
child: new CircleAvatar(
backgroundImage: AssetImage('assets/images/user/avatar.png'),
)
)
),
答案 0 :(得分:4)
据我所知,目前仅将直接位于注册目录下的文件添加到资产中。
这应该有效:
flutter:
uses-material-design: true
assets:
- assets/images/
- assets/images/user/
答案 1 :(得分:3)
就我而言,我必须更正pubspec.yaml中的资产和 uses-material-design 行之间的对齐方式。
flutter:
uses-material-desgin: true
assets:
- images/3.jpg
答案 2 :(得分:0)
这就是我的解决方法。
以前,我按照建议使用了确切的图像路径
assets:
- assets/logo_linked_in.jpg
- assets/logo_medium.png
- assets/logo_stackoverflow.png
- assets/myself.jpg
- assets/sparta.jpg
- assets/fox.png
然后我只尝试了父目录名,而这只是在使用:
assets:
- assets/
Voila!它像魅力一样起作用!
我希望这对某人有帮助。
P.S。 -对于像我这样的新手:
确保已正确缩进pubspec.yaml
因为这对于构建非常重要。
答案 3 :(得分:0)
在我的情况下,_和资产之间有两个空格,这就是为什么出现此异常
- assets/images/logo.png
- assets/images/bg.jpg
现在我由
修复assets:
- assets/images/logo.png
- assets/images/bg.jpg
答案 4 :(得分:0)
就我而言,当我使用类似Image.asset('./../images/welcome.png')
之类的相对路径时,它不起作用。
但是,如果我使用像Image.asset('images/welcome.png')
这样的绝对路径,它将起作用!
答案 5 :(得分:0)
以前,我将图像路径设置如下
"assets/images/SU.jpg"
然后我遇到此错误,因此我将其更改为以下内容
"images/SU.jpg"
然后它起作用了!
答案 6 :(得分:0)
当我不小心将数字参数作为URL从服务器获取图像时,我遇到了此错误。
leading: CircleAvatar(
backgroundImage: NetworkImage(imageUrl),
),
// imageUrl应该是正确的图片网址,而不是其他类型。
答案 7 :(得分:0)
答案 8 :(得分:0)
如果网络应用没有从 Image.network(url) 加载图像,则在终端中执行以下操作:
答案 9 :(得分:0)
在设备/模拟器上卸载应用 运行flutter干净。 运行应用
答案 10 :(得分:0)
我遇到了同样的错误,缩进正确,错误在 YMAL 文件中,删除该行后,默认情况下有这一行 publish_to: 'none'
。它开始正确输出图像read more: The pubspec file
name: ugandaclearfamilywillsuganda description: A New way of Creating your legal Wishes after death version: 1.0.0+1 environment: sdk: ">=2.12.0 <3.0.0" dependencies: flutter: sdk: flutter dev_dependencies: flutter_test: sdk: flutter flutter: uses-material-design: true assets: - images/
答案 11 :(得分:-1)
我有同样的错误。就我而言,这是因为我使用的手机仿真器无法访问互联网。
在物理移动设备上运行该应用程序,即可立即运行。
解决方案将仿真器连接到互联网。