Je fais juste quelques démos de flottement, j'adore le faire, dans listview, je ne peux pas découvrir comment supprimer l'espace entre les lignes
mon code est assez simple, celui-ci est un widget que je reviens à ma mise en page
Widget _getWidget(BuildContext context) {
return new Material(
child: new Container(
padding: EdgeInsets.only(top: 20.0),
color: Colors.blueGrey[500],
child: new Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: <Widget>[
_getHeader(context),
new Expanded(child: getListView())
],
),
),
);
}
Celui-ci est Listview
ListView getListView() =>
new ListView.builder(
itemCount: widgets.length,
itemBuilder: (BuildContext context, int position) {
return getRow(position);
});
Celui-ci est la ligne que j'utilise en mode carte
Widget getRow(int i) {
return new Padding(padding: new EdgeInsets.all(10.0),
child: new Card(
child: new Column(
children: <Widget>[
new ListTile(
title: new Text(
"Name : ${widgets[i].username}"
),
subtitle: new Text(
"Decription : You may go now!!"
),
),
new ButtonTheme.bar(
child: new ButtonBar(
children: <Widget>[
new FlatButton(
child: const Text('Accept'),
onPressed: () { /* ... */ },
),
new FlatButton(
child: const Text('Reject'),
onPressed: () { /* ... */ },
),
],
),
),
],
),
)
);
}
Aidez moi.
Les espaces que vous obtenez entre les cartes proviennent de la méthode getRow ().
Mettez simplement à jour votre
new Padding(padding: new EdgeInsets.all(10.0),
à
new Padding(padding: new EdgeInsets.all(1.0),
et voyez le changement.
Si vous ne voulez pas d'espace entre les deux, vous pouvez directement retourner Card ();