在 ListView.builder 的末尾提供一些额外的空间

Pra*_*pta 5 dart flutter

在此输入图像描述 下面是我的代码,我想添加一些高度为 50 的额外空间,它位于列表项的末尾。因为当我的第二个子堆栈出现时,它几乎与列表视图的最后一项重叠。我尝试用列包装 ListView.builder 并最后添加一个容器,但破坏了我的整个结构。对于这种情况,我必须将列包装成单个可滚动的,这将堆栈第二个小部件推到 ListItem 的末尾。(但我不希望堆栈第二个对象可滚动)。如您所见,我无法单击 HotDog。

 body: Stack(
        children: <Widget>[
          ListView.builder(
                  itemCount: itemData.length,
                  shrinkWrap: true,
                  scrollDirection: Axis.vertical,
                 itemBuilder: (BuildContext context,int index){ 
                   return Text(data[index].name);
 }

                     ),

          Padding(
            padding: const EdgeInsets.all(10.0),
            child: Container(
              decoration: BoxDecoration(
                borderRadius: BorderRadius.circular(8),
                color: Colors.cyan
              ),
              padding: EdgeInsets.all(10),
              height: 60,

            ),
          )
        ],
      ),
Run Code Online (Sandbox Code Playgroud)

小智 13

通过在 listview.builder 中添加底部填充可以轻松完成此操作

Expanded(
        child: ListView.builder(
          padding: EdgeInsets.only(bottom: 100), //Increase this as per your requirment
          itemCount: 5,
          itemBuilder: (cxt , idx) {
           return YourWidget();
          }
Run Code Online (Sandbox Code Playgroud)


KuK*_*uKu 9

像下面的代码一样添加空的最后一项怎么样?

          ListView.builder(
                  itemCount: itemData.length + 1,
                  shrinkWrap: true,
                  scrollDirection: Axis.vertical,
                 itemBuilder: (BuildContext context,int index){
                   if (index == item.Data.length) {
                       return SizedBox(height: 50);
                   } else {
                       return Text(data[index].name);
                   }
                 }
            ),
Run Code Online (Sandbox Code Playgroud)