在Flutter中的垂直列表中添加动态高度水平列表视图 [英] Add dynamic height horizontal list-view inside vertical list in Flutter

查看:61
本文介绍了在Flutter中的垂直列表中添加动态高度水平列表视图的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在垂直列表中添加了水平列表视图.它不显示任何内容

I am adding horizontal listview inside the vertical list.its not showing any content

 @override
  Widget build(BuildContext context) {
    return Scaffold(
        body: new ListView.builder(
            itemCount: 3,
            scrollDirection: Axis.vertical,
            itemBuilder: (context, position) {
              if (position == 0) {
                return Container(
                  child: Text("First rwo"),
                );
              } else if (position == 1) {
                return Container(
                  child: Text("second  rwo"),
                );
              } else if (position == 2) {
                return Container(
                    child: ListView.builder(
                        scrollDirection: Axis.horizontal,
                        itemCount: 4,
                        shrinkWrap: true,
                        itemBuilder: (context, pos) {
                          return Text("List ");
                        }));
              }
            }));
  }

当我将 height 属性添加到位置2 container 时,它将起作用.但我要动态高度.

when I add the height attribute to position 2 container it works. but I want dynamic height.

SingleChildScrollView 是另一个选项,但不适用于无限列表.

SingleChildScrollView is another option but it won't be suitable for an infinite list.

推荐答案

SingleChildScrollview 内切换到 Row :

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: new ListView.builder(
        itemCount: 3,
        scrollDirection: Axis.vertical,
        itemBuilder: (context, position) {
          if (position == 0) {
            return Container(
              child: Text("First rwo"),
            );
          } else if (position == 1) {
            return Container(
              child: Text("second  rwo"),
            );
          } else if (position == 2) {
            return SingleChildScrollView(
              scrollDirection: Axis.horizontal,
              child: Row(
                children: [Text("List"), Text("List"), Text("List"), Text("List")],
              ),
            );
          }
        },
      ),
    );
  }

这篇关于在Flutter中的垂直列表中添加动态高度水平列表视图的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆