如何在列表上方添加按钮?

How can I add a button above a list?

我试图在 ListView 上方添加一个 RaisedButton。我使用了 Colum 但出现错误。谁能告诉我我的错误在哪里?提前致谢!

 body: Column(
        children: <Widget>[
          RaisedButton(
            child: Text("Test"),
            onPressed: null,
          ),
          ListView.builder(
            itemCount: exercises.length,
            itemBuilder: (context, i) {
              return Container(
                child: Text(
                  exercises[i]["text"],
                ),
              );
            },
          ),
        ],
      ),

您需要使用 Expanded 小部件包装您的列表视图。

     body: Column(
    children: <Widget>[
      RaisedButton(
        child: Text("Test"),
        onPressed: null,
      ),
      Expanded( // added widget
     child: ListView.builder(
        itemCount: exercises.length,
        itemBuilder: (context, i) {
          return Container(
            child: Text(
              exercises[i]["text"],
            ),
          );
        },
      ),
    ],
  ),
  )

添加到@Viren 答案中,您应该使用 Flexible 而不是 Expanded

body: Column(
        children: <Widget>[
          RaisedButton(
            child: Text("Test"),
            onPressed: null,
          ),
          Flexible(
            child: Container(
              child: ListView.builder(
                itemCount: 5,
                itemBuilder: (context, i) {
                  return Container(
                    child: Text(
                      'jitesh',
                    ),
                  );
                },
              ),
            ),
          )
        ],
      ),

请找出差异