在Flutter中,我如何使整个页面成为一个垂直列表,但其中的一个元素是一个水平列表?

gijlo24d  于 2022-11-25  发布在  Flutter
关注(0)|答案(1)|浏览(144)
return Expanded(
  child: ListView(
    scrollDirection: Axis.vertical,
    children: [
      Expanded(
        child: ListView(
          scrollDirection: Axis.horizontal,
          children: [
            Container(
              margin: const EdgeInsets.only(left: 25),
              height: 200,
              width: 200,
              child: Card(
                shape: RoundedRectangleBorder(
                    borderRadius: BorderRadius.circular(15)),
                color: Colors.red,
                child: Center(
                  child: Text('data'),
                ),
              ),
            )
          ],
        ),
      )
    ],
  ),
);

如图所示,上面有4个选项,我可以水平移动它们。但是我想在它下面添加一些卡片表示,我想让它们也水平移动。但是我想让页面可以垂直上下滚动。但是我得到了视口错误。

qnzebej0

qnzebej01#

我们应该在flex小部件中使用Expanded小部件,例如RowColumnFlex
如果您知道内部ListViewheight,则将内部ListViewExpanded替换为SizedBox小部件,并为其设置height
如果没有任何flex小部件作为其父小部件,则也不需要根Expanded小部件。

相关问题