我只是个初学者。我正在尝试将资产图片传递给其他班级,但出现错误。 这是我的代码
main.dart文件
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
appBar: AppBar(
title: Text('Home'),
),
body: ListView(
children: <Widget>[
ListInfo(photo:"assets\images\apple.jpg",name:"Apple");
],
),
),
);
}
}
Listinfo类
class ListInfo
{
final String photo;
final String name;
ListInfo({this.photo, this.name});
}
ListImages类
class ListImages extends StatelessWidget {
@override
ListInfo info = new ListInfo();
Widget build(BuildContext context) {
return Container(
padding: EdgeInsets.all(20.0),
child: Center(
child: Column(
children: <Widget>[
Image(
image: AssetImage(info.photo),
),
Text(
info.name,
style: TextStyle(fontSize: 30.0),
),
],
),
),
);
}
}
很抱歉提出这样一个基本问题。但我无法解决这个问题
答案 0 :(得分:0)
在pubspec.yaml
上添加资产
# To add assets to your application, add an assets section, like this:
# assets:
# - images/a_dot_burr.jpeg
# - images/a_dot_ham.jpeg
assets:
-assets\images\apple.jpg
-assets\images\orange.jpg
然后使用pub get
使用Image.asset('assets\images\apple.jpg')
将图像添加为列表中的小部件
return Container(
padding: EdgeInsets.all(20.0),
child: Center(
child: Column(
children: <Widget>[
Image.asset('assets\images\apple.jpg',),
Text(
info.name,
style: TextStyle(fontSize: 30.0),
),
Image.asset('assets\images\orange.jpg',),
Text(
info.name,
style: TextStyle(fontSize: 30.0),
),
],
),
),
);