ListView.builder下面的小部件/灵活占用最小空间

问题描述 投票:0回答:1

我想创建一个Column Widget,我有两个元素:一个ListView.builder(必须包含在一个灵活的Widget中,所以它不会崩溃)和另一个Widget。另一个Widget应直接放在ListView下面。

问题是Flexible Widget / ListView占用了所有空间并将其他小部件推送到屏幕底部。

我已经尝试了将其他Widget放入第二个灵活组合的各种组合,并且使用flex和fit进行游戏,但似乎没有任何工作

import 'package:flutter/material.dart';

void main() => runApp(MyApp());

class MyApp extends StatelessWidget {
  List<String> mylist = ["aaaa","bbbb","cccc","ddd","eee","fff","ggg"];

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(body: Column(
        verticalDirection: VerticalDirection.down,
        children: <Widget>[
          Flexible(child: ListView.builder(itemBuilder: listbuilder,itemCount: mylist.length,)),
      ListTile(leading: Text("this should be below the other"))
      ]),)

    );
  }

  Widget listbuilder(BuildContext context, int index)
  {
    return ListTile(leading: Text(mylist[index]),

    );
  }
}

listview dart flutter
1个回答
0
投票

这应该工作:

            body:
                      Column(verticalDirection: VerticalDirection.down, children: <Widget>[
                    ListView.builder(
                      shrinkWrap: true,
                      itemBuilder: listbuilder,
                      itemCount: mylist.length,
                    ),
                    ListTile(leading: Text("this should be below the other"))
                  ]),
© www.soinside.com 2019 - 2024. All rights reserved.