热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

flutterlistView.Builder隐藏最后一个列表项上的分隔符

如何解决《flutterlistView.Builder隐藏最后一个列表项上的分隔符》经验,有好办法吗?

在使用ListView.Builder创建列表时,如何在最后一项中隐藏分隔符?

为每个项添加分隔符相当容易,但是在列表中的最后一项上解除分隔符的逻辑是什么?

没有具体的stackoverflow问题以及实现此任务的具体示例.

   Widget build(BuildContext context) {
return 
    ListView.builder(
      shrinkWrap: true,
      physics: ScrollPhysics(),
      itemCount: OffersList.length,
      itemBuilder: (context, index) {
        Offer item = OffersList[index];
        return ListItem(context, item);
      },
    );
  }



Widget ListItem(BuildContext context, Offer item) {
if ( index == OffersList.length - 1) {
  dividerChecker = EmptyContainer();
} else {
  dividerChecker = Divider();
}
return Column(
  children: [
    OfferListItem(
      offerData: item,
      status: status,
      userType: userType,
    ),
    dividerChecker,
  ],
);

}

解决方案如建议:

使用ListView.separator而不是ListView.Builder:

        ListView.separated(
      separatorBuilder: (BuildContext context, int index) => new Divider(),
      shrinkWrap: true,
      physics: ScrollPhysics(),
      itemCount: OffersList.length,
      itemBuilder: (context, index) {
        Offer item = OffersList[index];
        return offerListItem(context, item);
      },
    ),
Widget offerListItem(BuildContext context, Offer item) {
return Column(
  children: [
    OfferListItem(
      offerData: item,
      status: status,
      userType: userType,
    ),
  ],
);

}


推荐阅读
author-avatar
女孩明天_会更好
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有