将图像添加到Flutter



这是我第一次使用Flutter,当我尝试添加图像时,它并没有完全起作用。首先,我尝试通过Image.assets('assets/lp_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

所以,如果有人能帮我解决这个问题,因为我才刚刚开始发抖。谢谢你,这是我的代码:

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'),
);
}
}

接下来,我看到您正在尝试将Centerchildren一起使用。CCD_ 3只接受CCD_ 4。这就是你使用它的方式:

Center(
child: LppImage(),
),

如果你想使用多个子项,你应该考虑Column,这样你就可以做到这一点:

Column(
children: [
Center(
child: LppImage(),
),
Container(),
],
),

您是否尝试过完全重新启动应用程序?有些时候热重载看不到资产。

最新更新