我正在尝试将背景图像添加到Container
。我将图像添加到图像文件夹和pubspec
文件中。
name: my_app
description: A new Flutter project.
version: 1.0.0+1
environment:
sdk: ">=2.1.0 <3.0.0"
dependencies:
flutter:
sdk: flutter
cupertino_icons: ^0.1.2
flutter_bloc: ^0.20.0
equatable: ^0.3.0
meta: ">=1.1.0 <2.0.0"
material_design_icons_flutter: ^3.2.3895
dev_dependencies:
flutter_test:
sdk: flutter
flutter:
uses-material-design: true
assets:
- images/banner.png
我使用了DecorationImage
。
class _ImageBanner extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Container(
height: 140.0,
width: 50.0,
decoration: BoxDecoration(
image: DecorationImage(
fit: BoxFit.contain,
image: AssetImage('images/banner.png'),
),
),
);
}
}
对我来说,一切似乎都很好,它没有给出任何错误,但是图像没有显示在屏幕上。我该怎么做才能解决此问题?
编辑:
上周,我尝试了所有操作,但失败了,因为它无法与其他移动设备一起使用。当我使用Samsumg Galaxy A5调试它时,图像未显示。但是使用J7 max时,图像可以很好地显示在屏幕上。谁能告诉我为什么会发生这种情况。
答案 0 :(得分:0)
尝试以下方法之一:
尝试为图像提供一定的宽度:
class _ImageBanner extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Container(
height: 140.0,
width: 50.0,
decoration: BoxDecoration(
image: DecorationImage(
fit: BoxFit.contain,
image: AssetImage('images/banner.png'),
width: 50.0,
),
),
);
}
}
尝试检查pubscpec.yaml
中的图像的路径和名称
希望对您有帮助!
答案 1 :(得分:0)
使用ExactAssetImage
class _ImageBanner extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Container(
height: 140.0,
width: 50.0,
decoration: BoxDecoration(
image: DecorationImage(
fit: BoxFit.contain,
image: ExactAssetImage('images/banner.png', ),
),
),
);
}
}