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

如何让Flutter中的ListView.builder支持横屏滚动?

实现ListView.builder横屏滚动的修改方案

要让你的ListView.builder支持横屏(水平)滚动,只需添加核心参数并按需调整item尺寸即可,具体修改如下:

修改后的完整代码

ListView.builder(
  scrollDirection: Axis.horizontal, // 指定滚动方向为水平
  itemExtent: 120, // 水平滚动时,该值代表每个item的宽度,可按需调整
  itemCount: controller.lotQueryList.length,
  itemBuilder: (c, i) {
    // 这里编写你的item布局逻辑,示例如下:
    return Container(
      margin: EdgeInsets.symmetric(horizontal: 8),
      alignment: Alignment.center,
      child: Text(controller.lotQueryList[i].toString()),
    );
  },
)

关键修改点说明

  • scrollDirection: Axis.horizontal:这是实现水平滚动的核心,默认ListView的滚动方向为Axis.vertical(垂直),修改为horizontal后即可实现横屏滚动。
  • 调整itemExtent:原代码中itemExtent:60是垂直滚动时的item高度,切换到水平滚动后,该参数代表每个item的宽度,可根据实际布局需求修改数值(比如示例中的120)。若你的item布局已定义明确宽度,也可省略此参数,但设置itemExtent能提升滚动性能——ListView可提前确定每个item的尺寸,避免动态计算。
  • 父容器高度约束:水平滚动的ListView需要明确的高度约束,否则可能出现布局报错。如果父容器无默认高度,可用SizedBox(height: 60)这类组件包裹ListView,指定其高度。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.19 16:39:51