我在Flutter中为滚动方向分配的命令不起作用

efzxgjgh  于 2022-11-25  发布在  Flutter
关注(0)|答案(2)|浏览(132)
child: Scaffold(
  body: SingleChildScrollView(
    child: Column(
      children: [
        _cardList(context),
        Column(
          children: [
            Expanded(
              child: ListView.builder(
                scrollDirection: Axis.vertical,
                shrinkWrap: true,
                itemCount: 3,
                itemBuilder: (context, index) {
                  return Card(
                    child: Image.asset('assets/images/horizontal.jpg'),
                  );
                },
              ),
            )
          ],
        ),

我创建了一个列表,并添加了3个图像在对方。但我不能向下滚动。我想,因为我做了列在列。但什么都没有改变,当我删除了底部列。

nbewdwxp

nbewdwxp1#

使用Expanded Package ListView以获得更好的性能,而不是使用shrinkWrap: true

body: Column(
  children: [
    Expanded(
      child: ListView.builder(
        scrollDirection: Axis.vertical,
        itemCount: 3,
eqqqjvef

eqqqjvef2#

您需要禁用SingleChildScrollView滚动物理,如下所示:

SingleChildScrollView(
        physics: NeverScrollableScrollPhysics(),//<-- add this
        child: Column(
          children: [
            ListView.builder(
              scrollDirection: Axis.vertical,
              shrinkWrap: true,
              itemCount: 3,
              itemBuilder: (context, index) {
                return Card(
                  child: Image.asset('assets/images/horizontal.jpg'),
                );
              },
            )
          ],
        ),
      ),

两个列表都是垂直滚动,您需要禁用其中一个,即SingleChildScrollView

相关问题