Je n'arrive pas à centrer le widget à l'intérieur de listView
.
J'ai bien aimé mais Text('ABC')
n'est pas centré verticalement. Comment puis-je atteindre cet objectif?
new Scaffold(
appBar: new AppBar(),
body: new ListView(
padding: const EdgeInsets.all(20.0),
children: [
new Center(
child: new Text('ABC')
)
]
)
);
Centre vertical et centre horizontal:
Scaffold(
appBar: new AppBar(),
body: Center(
child: new ListView(
shrinkWrap: true,
padding: const EdgeInsets.all(20.0),
children: [
Center(child: new Text('ABC'))
]
),
),
);
Centre vertical uniquement
Scaffold(
appBar: new AppBar(),
body: Center(
child: new ListView(
shrinkWrap: true,
padding: const EdgeInsets.all(20.0),
children: [
new Text('ABC')
]
),
),
);
Enveloppez votre widget dans un conteneur
Container(alignment: Alignment.center, ...)
ou
Container(alignment: Alignment.centerLeft, ...)
Enveloppez simplement votre widget dans Align
et fournissez alignment
en conséquence.
class _HomePageState extends State<HomePage> {
@override
Widget build(BuildContext context) {
return Scaffold(
body: ListView( // your ListView
children: <Widget>[
Align(
alignment: Alignment.centerLeft,
child: _button("Left"),
),
Align(
alignment: Alignment.center,
child: _button("Middle"),
),
Align(
alignment: Alignment.centerRight,
child: _button("Right"),
),
],
),
);
}
Widget _button(text) => RaisedButton(onPressed: () {}, child: Text(text));
}