如何在单页#flutter中显示网格视图和其他视图

Posted

技术标签:

【中文标题】如何在单页#flutter中显示网格视图和其他视图【英文标题】:How can show grid view with other view in single page #flutter 【发布时间】:2019-05-12 08:00:05 【问题描述】:

如何在同一页面中添加网格视图和其他视图? 我尝试使用 listview 但它显示错误

I/flutter (10293):抛出了另一个异常: 'package:flutter/src/rendering/sliver_multi_box_adaptor.dart': 失败 断言:第 461 行 pos 12:'child.hasSize':不正确。我/颤动 (10293):引发了另一个异常:NoSuchMethodError:getter 在 null 上调用了“scrollOffsetCorrection”。我/颤振(10293): 另一个异常被抛出:NoSuchMethodError: The method 在 null 上调用了“debugAssertIsValid”。 I/颤动(10293):另一个 抛出异常:NoSuchMethodError:getter 'visible' 是 在 null 上调用

  body:ListView(
      children: <Widget>[
        Text("checking"),
        Container(
        child: GridView.count(
          crossAxisCount: 3,
          childAspectRatio: .6,
          children: _list.map((p) => ProductManagment(p)).toList(),
        ),
      ) 
      ],
    )

又一次尝试

  body:ListView(
      children: <Widget>[
        Text("checking"),
         GridView.count(
          crossAxisCount: 3,
          childAspectRatio: .6,
          children: _list.map((p) => ProductManagment(p)).toList(),
        ) 
      ],
    )

再次出错

I/flutter (10293):引发另一个异常:未布置 RenderBox:RenderCustomPaint#f955c relayoutBoundary=up6 NEEDS-PAINT I/flutter (10293):引发另一个异常:RenderBox 未布置:RenderRepaintBoundary#a9147 relayoutBoundary=up5 NEEDS-PAINT I/flutter (10293):抛出另一个异常:RenderBox 未布置:RenderRepaintBoundary#4a4c9 relayoutBoundary=up4 NEEDS-PAINT I/flutter (10293):引发了另一个异常:'package:flutter/src/rendering/sliver_multi_box_adaptor.dart':断言失败:第 461 行 pos 12:'child.hasSize':不正确。 I/flutter (10293):引发了另一个异常:NoSuchMethodError:在 null 上调用了 getter 'scrollOffsetCorrection'。 I/flutter (10293):引发了另一个异常:NoSuchMethodError:在 null 上调用了方法“debugAssertIsValid”。 I/flutter (10293): 另一个异常被抛出:NoSuchMethodError: The getter 'visible' was called on null.

【问题讨论】:

【参考方案1】:

我认为你应该只设置Container 的高度或通过Expanded 小部件扭曲它。并告诉发生了什么?可能是缺少尺寸,这样就发生了错误。

已编辑:

 body:ListView(
      children: <Widget>[
        Text("checking"),
        Container(
        height: 300.0
        child: GridView.count(
          crossAxisCount: 3,
          childAspectRatio: .6,
          children: _list.map((p) => ProductManagment(p)).toList(),
        ),
      ) 
      ],
    )

在容器中设置高度:300.0。 (您可以根据需要设置高度/宽度或尝试使用 Expanded 小部件)

【讨论】:

我是 Flutter 新手 如何通过替换listview来制作滚动视图 列表视图它自己作为滚动视图工作......不需要改变。看看flutter.io/docs/get-started/flutter-for/android-devs 但在我的情况下,我有一个横幅视图,然后我添加了网格视图,现在它只滚动网格项目,横幅视图固定在顶部,当我们尝试滚动横幅视图时,它正在移动,但我们需要的是当网格移动横幅视图时也需要滚动 我是一名 android java 开发者在这种情况下我们使用 nextedscooling 视图什么是 Flutter 的等价物?

以上是关于如何在单页#flutter中显示网格视图和其他视图的主要内容,如果未能解决你的问题,请参考以下文章

Flutter 在列表视图中显示网格视图

Cordova iOS 在单页上将屏幕方向更改为横向

在 Flutter 中使用交错网格视图创建瀑布流布局#yyds干货盘点#

flutter - 网格视图不显示在展开的小部件中。

Flutter:列表视图显示空白或白屏?

如何从 Flutter 中的网格视图计数访问生成列表中的特定单元格?