我正在尝试使用用于InteractiveViewer平移/缩放的游戏地图,然后使用
GridView用于生成行和列的网格。这是我的build功能:
@override
Widget build(BuildContext context) {
return InteractiveViewer(
constrained: false,
transformationController: _transformationController,
child: GridView.count(
crossAxisCount: widget.map.columns,
shrinkWrap: true,
physics: NeverScrollableScrollPhysics(),
children:
List.generate(widget.map.rows * widget.map.columns, (index) {
return Container(
width: 100,
height: 100,
decoration: BoxDecoration(
border: Border.all(width: 1, color: Colors.white)),
child: Text(index.toString()));
}),
));
}
Run Code Online (Sandbox Code Playgroud)
但是,当运行此代码时,我不断收到错误,例如:
在 PerformLayout() 期间抛出以下断言:'package:flutter/src/rendering/viewport.dart': 断言失败:第 1753 行 pos 16: 'constraints.hasBoundedWidth': 不正确。该断言要么表明框架本身存在错误,要么我们应该在此错误消息中提供更多信息,以帮助您确定并修复根本原因。无论哪种情况,请通过在 GitHub 上提交错误来报告此断言: https: //github.com/flutter/flutter/issues/new ?template=BUG.md 相关的导致错误的小部件是:GridView
RenderBox 未布局: RenderCustomPaint#078ce relayoutBoundary=up3 NEEDS-PAINT NEEDS-COMPOSITING-BITS-UPDATE 'package:flutter/src/rendering/box.dart': 断言失败:第 1702 行 pos 12: 'hasSize' 相关错误-导致小部件是GridView
RenderBox 未布局: RenderRepaintBoundary#07bb5 relayoutBoundary=up2 NEEDS-PAINT 'package:flutter/src/rendering/box.dart': 断言失败:第 1702 行 pos 12: 'hasSize' 相关导致错误的小部件是 InteractiveViewer
我认为设置shrinkWrap: true和删除滚动可以解决这个问题,但事实并非如此。在这个例子中使用 a Tablelike是可行的,但我想使用 a,因为在我看来它更干净、更容易使用。GridView
我怎样才能解决这个问题?
| 归档时间: |
|
| 查看次数: |
500 次 |
| 最近记录: |