Reputation: 115
I need to use some density specific images in my flutter app, but unfortunately I faced with a problem while loading them.
I created several density specific directories for storing images according to official docs https://flutter.dev/docs/development/ui/assets-and-images, edited pubscpec.yaml and wrote some code.
Assets:
/assets
/images
/1.0x
/qr_logo.png
/1.5x
/qr_logo.png
/2.0x
/qr_logo.png
/3.0x
/qr_logo.png
/4.0x
/qr_logo.png
pubspec.yaml:
flutter:
uses-material-design: true
assets:
- assets/images/
- assets/strings/uk.json
- assets/strings/ru.json
code:
GestureDetector(
child: Container(
width:120,
height: 40,
decoration: BoxDecoration(
color: Colors.black,
image: DecorationImage(
image:AssetImage('assets/images/qr_logo.png'),
fit:BoxFit.cover
),
)
),onTap:(){
print("CLICKED!");
})
This results in: he following assertion was thrown resolving an image codec: Unable to load asset: assets/images/qr_logo.png
When the exception was thrown, this was the stack:
0 PlatformAssetBundle.load (package:flutter/src/services/asset_bundle.dart:221:7)
1 AssetBundleImageProvider._loadAsync (package:flutter/src/painting/image_provider.dart:464:44)
2 AssetBundleImageProvider.load (package:flutter/src/painting/image_provider.dart:449:14) ...
Image provider: AssetImage(bundle: null, name: "assets/images/qr_logo.png") Image key: AssetBundleImageKey(bundle: PlatformAssetBundle#5e64b(), name: "assets/images/qr_logo.png", scale: 1.0)
Upvotes: 0
Views: 1003
Reputation: 10453
You need to also set qr_logo.png
in /assets/images
as baseline for resolution-aware image assets.
Upvotes: 0