我有一个List
类型的Strings
。此列表中可以包含任意数量的项目。
让我们说这是我的清单:
[Dwayne Johnson, Akshay Kumar, Will Smith, Matt Damon, Salman, Someone Else]
我尝试过:
Text(NamesList.toString());
但是它只是按原样显示列表。
我想这样显示列表:
根据它们的长度,可以显示1,2甚至3个项目。
即使使用ListView.builder
或GridView.builder
,我的项目也不尽相同,因此对我不起作用。
我在这里应该做什么?
答案 0 :(得分:1)
有一个快速的解决方法:
List<String> famous = ["Dwayne Johnson", "Akshay Kumar", "Will Smith", "Matt Damon", "Salman", "Someone Else"];
Widget stringWithBullet() {
String people = "";
for (var item in famous) {
people += item += " • ";
}
return Text(
people.substring(0, people.length - 3),
style: TextStyle(
fontSize: 18,
),
);
}
@override
Widget build(BuildContext context) {
return Material(
child: Center(
child: Padding(
padding: const EdgeInsets.all(40),
child: stringWithBullet(),
),
),
);
}
看起来像这样,您可以添加textAlign: TextAlign.center
来使文本居中:
每次使用名字+姓氏来确保换行时,都可以使用"\n"
来换行。