Flutter:ListView.builder 创建列
Posted
技术标签:
【中文标题】Flutter:ListView.builder 创建列【英文标题】:Flutter: ListView.builder create columns 【发布时间】:2018-12-10 23:37:13 【问题描述】:我正在为一些计数游戏开发一个颤振应用程序。我试图让它工作,一个 ListView.builder 在一列中显示两个项目,在另一列中显示另外两个项目。但我不知道该怎么做。有什么建议吗?
这是我的代码:
import 'dart:math';
import 'package:flutter/material.dart';
class Teams extends StatefulWidget
final String spieler1;
final String spieler2;
final String spieler3;
final String spieler4;
Teams(Key key, this.spieler1, this.spieler2, this.spieler3, this.spieler4) : super(key : key);
@override
State<StatefulWidget> createState() => new TeamsState();
class TeamsState extends State<Teams>
@override
Widget build(BuildContext context)
var namen = [widget.spieler1, widget.spieler2, widget.spieler3, widget.spieler4];
List<String> erstellt = shuffle(namen);
return new Scaffold(
appBar: new AppBar(
actions: <Widget>[
IconButton(
icon: Icon(Icons.shuffle),
onPressed: ()setState(() );
),
],
),
body: new ListView.builder(
itemCount: namen.length,
itemBuilder: (BuildContext context, int index)
return new ListTile(
title: new Text(erstellt[index]), // <-- content is loading here
);
),
);
List shuffle(List items)
var random = new Random();
// Go through all elements.
for (var i = items.length - 1; i > 0; i--)
// Pick a pseudorandom number according to the list length
var n = random.nextInt(i + 1);
var temp = items[i];
items[i] = items[n];
items[n] = temp;
return items;
【问题讨论】:
你能放一张你想要做什么的截图吗? 【参考方案1】:我认为您所描述的就是 Flutter 中所谓的 GridView。要实现两列,这是您可以执行的示例:
GridView.count(
// crossAxisCount is the number of columns
crossAxisCount: 2,
// This creates two columns with two items in each column
children: List.generate(2, (index)
return Center(
child: Text(
'Item $index',
style: Theme.of(context).textTheme.headline,
),
);
),
);
您可以在 Flutter 的网站上阅读更多相关信息:https://flutter.io/cookbook/lists/grid-lists/
【讨论】:
非常感谢,你让我开心!以上是关于Flutter:ListView.builder 创建列的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Flutter 中添加 ListView.builder 的填充顶部?
Flutter - ListView.builder:初始滚动位置
Flutter - 另一个 Listview 中的 Listview.builder
Flutter:ListView.builder 中的自动垂直高度
Flutter 应用程序,ListView.builder 首次运行时出现错误。需要重启应用(ListView.builder 和 image_picker)