我有以下字符串列表:
C=[(Poland,16),(Canada,20),(Germany,54)]
我想使用“文本”小部件在列表中打印字符串,这就是我的做法:
final List<String> details;
使用的文本小部件:
List<Product> products = [details: [
'7 ounces',
'Pack of 200 grams',
'Golden roasted' 'Nicely packed in its original Nescafe factory'
],],
这仅打印索引为0的字符串。
有人可以帮忙吗?
答案 0 :(得分:2)
使用listView.builder,
ListView.builder(
padding: const EdgeInsets.all(8),
itemCount: products.details.length,
itemBuilder: (BuildContext context, int index) {
return Text( products.details[index]);
}
);
答案 1 :(得分:0)
Text(products.details.toString())或Text(products.toString())
答案 2 :(得分:0)
如果您希望列表以字符串表示,则可以使用join()
方法设置其格式。
就您而言,
products.details.join(' ')
产量: 7盎司200克装金色烤制,很好地包装在其原来的雀巢咖啡工厂中
您可以在每个字符串项目之间插入的join
参数中使用任何定界符。
进一步的参考:https://api.flutter.dev/flutter/dart-core/Iterable/join.html
答案 3 :(得分:0)
如果知道项目数,则可以使用此选项:
Text( '${products.details[0] ${products.details[1] ${products.details[2]}');
或者,您可以创建一个新类并覆盖toString()
方法。像这样:
class MyProducts {
List<Product> products = [details: [
'7 ounces',
'Pack of 200 grams',
'Golden roasted' 'Nicely packed in its original Nescafe factory'
],];
@override
String toString() {
return '${products.details[0] ${products.details[1] ${products.details[2]}'
}
}
并使用它:
MyProducts myProducts = MyProducts();
Text( myProduct.toString() );