我有一个字符串列表,我想通过map()转换为Card Widgets列表,并希望在一个列控件中呈现此Cards List。我在“列子项”上收到上述错误。我没看错。谁能帮我吗?
那是我的代码:
import 'package:flutter/material.dart';
void main() => runApp(MyApp());
class MyApp extends StatelessWidget {
final List <String> textData = ['Dase','two'];
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
appBar: AppBar(
title: Text("App Test 1.1"),
actions: <Widget>[
IconButton(
icon: Icon(Icons.ac_unit),
tooltip: 'freeze me',
onPressed: () {},
)
],
),
body: Center(
child: Column(children: <Widget>[
Padding(
padding: EdgeInsets.all(20.0),
child: RaisedButton(
child: Text("Add Text"),
onPressed: () {},
)),
Column(
children: textData
.map(
(element) => Card(
margin: EdgeInsets.all(50.0),
child: Column(
children: <Widget>[
Text(element)
],
),
),
).toList,
),
]))),
);
}
}
在我的其他课程中,它可以正常工作,但我找不到区别:
class Products extends StatelessWidget {
final List<String> products;
Products(this.products);
@override
Widget build(BuildContext context) {
return Column(
children: products
.map(
(element) => Card(
child: Column(
children: <Widget>[
Image.asset('assets/food.jpg'),
Text(element)
],
),
),
)
.toList(),
);
}
}
答案 0 :(得分:0)
).toList,
应该是
).toList(),
错误消息的解释:
'({growable: bool}) → List<Card>'
是期望使用List
的函数类型,它表示传递了函数引用而不是函数调用的结果-这通常意味着缺少()
。 / p>