You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flutter中如何移除非ListView下ListTile的分隔线

移除ListTile下方的分隔线(非ListView嵌套场景)

我想移除ListTile组件下方的分隔线(效果为ListTile底部无多余灰色线条),注意我的ListTile并未嵌套在ListView中,代码如下:

ListTile(
  leading: ClipRRect(
    borderRadius: BorderRadius.circular(50),
    child: Image.memory(base64Decode(society['image'])),
  ),
  title: Text(society['Society_Name']),
  trailing: ElevatedButton(
    onPressed: (){},
    child: Icon(Icons.email_outlined, size: 25,),
    style: ElevatedButton.styleFrom(backgroundColor: green),
  ),
),

解决方法

  • 方法1:用ListTileTheme全局控制分隔线
    把ListTile包裹在ListTileTheme组件中,将dividerColor设为透明,直接隐藏默认分隔线:

    ListTileTheme(
      dividerColor: Colors.transparent,
      child: ListTile(
        leading: ClipRRect(
          borderRadius: BorderRadius.circular(50),
          child: Image.memory(base64Decode(society['image'])),
        ),
        title: Text(society['Society_Name']),
        trailing: ElevatedButton(
          onPressed: (){},
          child: Icon(Icons.email_outlined, size: 25,),
          style: ElevatedButton.styleFrom(backgroundColor: green),
        ),
      ),
    ),
    
  • 方法2:单独设置ListTile的shape属性
    直接给ListTile添加shape属性,把底部边框设为透明,覆盖默认分隔线样式:

    ListTile(
      shape: Border(bottom: BorderSide(color: Colors.transparent)),
      leading: ClipRRect(
        borderRadius: BorderRadius.circular(50),
        child: Image.memory(base64Decode(society['image'])),
      ),
      title: Text(society['Society_Name']),
      trailing: ElevatedButton(
        onPressed: (){},
        child: Icon(Icons.email_outlined, size: 25,),
        style: ElevatedButton.styleFrom(backgroundColor: green),
      ),
    ),
    
  • 方法3:自定义Row替代ListTile
    如果上述方法不生效,完全抛弃ListTile的默认样式,用Container+Row手动实现布局,彻底避免分隔线问题:

    Container(
      padding: EdgeInsets.symmetric(horizontal: 16, vertical: 12),
      child: Row(
        children: [
          ClipRRect(
            borderRadius: BorderRadius.circular(50),
            child: Image.memory(base64Decode(society['image'])),
          ),
          SizedBox(width: 16),
          Expanded(child: Text(society['Society_Name'])),
          ElevatedButton(
            onPressed: (){},
            child: Icon(Icons.email_outlined, size: 25,),
            style: ElevatedButton.styleFrom(backgroundColor: green),
          ),
        ],
      ),
    ),
    

内容的提问来源于stack exchange,提问作者Terminator

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.09 12:10:32