web-dev-qa-db-fra.com

Flutter: comment supprimer l'espace entre les lignes dans Listview

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

enter image description here

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.

6
Mohit Suthar

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 ();

5
dhuma1981