body: new Container(
margin: const EdgeInsets.only(left: 20.0, right: 20.0),
child: Center(
+ child: Column(
+ mainAxisAlignment: MainAxisAlignment.center,
+ crossAxisAlignment: CrossAxisAlignment.start,
+ children: <Widget>[
+ Spacer(flex: 1),
+ Text(
+ 'Name:',
+ style: Theme.of(context).textTheme.headline4,
+ ),
+ TextField(
+ decoration: InputDecoration(
+ hintText: 'Enter your (real) name',
+ ),
+ ),
+ Spacer(flex: 1),
+ Text(
+ 'Character:',
+ style: Theme.of(context).textTheme.headline4,
+ ),
+ TextField(
+ decoration: InputDecoration(
+ hintText: 'Enter your empire character name',
+ ),
+ ),
+ Spacer(flex: 1),
+ FutureBuilder<Player>(
+ future: futurePlayer,
+ builder: (context, snapshot) {
+ if (snapshot.hasData) {
+ return Text(snapshot.data.name);
+ } else if (snapshot.hasError) {
+ return Text("${snapshot.error}");
+ }
+ return CircularProgressIndicator();
+ },
+ ),
+ Spacer(flex: 1),
+ FutureBuilder<List<Player>>(
+ future: allPlayers,
+ builder: (context, snapshot) {
+ if (snapshot.hasData) {
+ return Text(snapshot.data.length.toString());
+ } else if (snapshot.hasError) {
+ return Text("${snapshot.error}");
+ }
+ // By default, show a loading spinner.
+ return CircularProgressIndicator();
+ },
+ ),
+ Spacer(flex: 10),
+ ],
+ ),
child: FutureBuilder<List<Player>>(
future: allPlayers,
builder: (context, snapshot) {