我只是想加载图像。我正在通过网络支持使用Beta channel 。 Flutter 1.19.0-4.3.pre。 Dart 2.9.0
这是我的发布规范:
flutter:
uses-material-design: true
assets:
- assets/
这是我的main.dart;class _MyHomePageState extends State<MyHomePage> {
int _counter = 0;
void _incrementCounter() {
setState(() {
_counter++;
});
}
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
centerTitle: true,
title: Text(widget.title),
),
body: Center(
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
Image(image: AssetImage('assets/logo.png')),
] < Widget > [
Text('Find happy, temporary, homes for your pets'),
],
),
),
);
}
}
我只是从Flutter网站上的文档中复制/粘贴了该内容。我要去哪里错了?
最佳答案
您不必具有two arrays in a single <Widget>[]
列类。我可以看到您已经这样做:
<Widget>[
Image(image: AssetImage('assets/logo.png')),
] < Widget > [
Text('Find happy, temporary, homes for your pets'),
],
确实是错的。普通Column()
接受的是这样的。 [要了解有关列类的更多信息,请单击here] Column(
children: <Widget>[
// You multiple widget goes here not in multiple arrays
Widget1
Widget2
...
]
)
因此,要更正您的代码,您应该执行类似的操作,否则,就assets
而言,您已完成了更正class _MyHomePageState extends State<MyHomePage> {
int _counter = 0;
void _incrementCounter() {
setState(() {
_counter++;
});
}
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
centerTitle: true,
title: Text(widget.title),
),
body: Center(
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
// One single array keeps your multiple widgets
children: <Widget>[
Image(image: AssetImage('assets/logo.png')),
Text('Find happy, temporary, homes for your pets'),
]
)
)
);
}
}
让我知道,是否适合您。快乐学习:)
关于image - Flutter:可以为参数类型 'Image Function(dynamic)'分配哪种类型的参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62709085/