9

我只是在做一些颤振的演示,我喜欢这样做,在列表视图中,我不知道如何删除行之间的空间

在此处输入图像描述

我的代码很简单,这个是小部件,我返回到我的布局

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

}

这个是Listview

 ListView getListView() =>
      new ListView.builder(
          itemCount: widgets.length,
          itemBuilder: (BuildContext context, int position) {
            return getRow(position);
          });

这是我使用卡片视图的行

 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: () { /* ... */ },
                    ),
                  ],
                ),
              ),
            ],
          ),
        )
    );
  }

帮我。

4

1 回答 1

6

您在卡片之间获得的空格来自getRow()方法。

只需更新您的

new Padding(padding: new EdgeInsets.all(10.0),

new Padding(padding: new EdgeInsets.all(1.0),

并看到变化。

如果不想中间有空格,可以直接返回 Card();

于 2018-04-27T07:22:29.163 回答