[英]Adding image to Flutter
这是我第一次使用 Flutter,当我尝试添加图像时,它并没有很好地工作。 首先我尝试通过 Image.assets('assets/lpp_bezpozadine.png') 将 Image 添加到 child:Container - 没有工作然后我尝试制作一个单独的方法:
class LppImage extends StatelessWidget {
@override
Widget build(BuildContext context) {
AssetImage assetImage = AssetImage('assets/lpp_bezpozadine.png');
Image image = Image(image: assetImage);
return Container(
child: image,
);
}
}
我试图从中称呼孩子:-但它说我不能使用孩子?
我已将图片添加到 pubspec.yaml 如下:
assets:
- assets/lpp_bezpozadine.png
所以如果有人能帮我解决这个问题,因为我刚从 flutter 开始。 提前感谢这是我的代码:
class _MyHomePageState extends State<MyHomePage> {
@override
Widget build(BuildContext context) {
const darkBlueColor = const Color(0xff131f40);
const lightBlueColor = const Color(0xff445c9e);
return Scaffold(
body: Center(
child: Container(
decoration: BoxDecoration(
gradient: LinearGradient(
colors: [
darkBlueColor,
lightBlueColor,
],
stops: [0.5, 1],
begin: const FractionalOffset(0.5, 0.2),
end: const FractionalOffset(1, 1),
),
),
),
),
);
}
}
当我尝试添加孩子时,错误日志显示将其转换为孩子:
class _MyHomePageState extends State<MyHomePage> {
@override
Widget build(BuildContext context) {
const darkBlueColor = const Color(0xff131f40);
const lightBlueColor = const Color(0xff445c9e);
return Scaffold(
body: Center(
children: <Widget>[
LppImage(),
],
child: Container(
decoration: BoxDecoration(
gradient: LinearGradient(
colors: [
darkBlueColor,
lightBlueColor,
],
stops: [0.5, 1],
begin: const FractionalOffset(0.5, 0.2),
end: const FractionalOffset(1, 1),
),
),
),
),
);
}
}
我不知道 flutter 是否能够找到图像,因为没有错误日志,但这是使用资产图像的正确方法:
class LppImage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Container(
child: Image.asset('assets/lpp_bezpozadine.png'),
);
}
}
接下来,我看到您正在尝试将Center
与children
一起使用。 Center
只收child
。 所以这就是你将如何使用它:
Center(
child: LppImage(),
),
如果你想使用多个孩子,你应该考虑一个Column
以便你可以这样做:
Column(
children: [
Center(
child: LppImage(),
),
Container(),
],
),
您是否尝试过重新启动完整的应用程序? 有时热重装看不到资产。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.