我的RenderBox
抛出以下断言:
The following assertion was thrown during performLayout():
RenderBox does not meet its constraints.
Constraints: BoxConstraints(w=411.4, h=411.4)
Size: Size(411.4, 411.4)
看着失败的断言的实现,我发现isSatisfiedBy
实际上应该不会失败,因为大小等于约束。
因此,我想知道是什么原因造成的。
通过调试,我实际上发现size.height
大约是411.42857
,而constraints.maxHeight
大约是411.42855
。因此,我尝试设置大小的地板,但奇怪的是,这样做没有帮助。
答案 0 :(得分:0)
由于大小是固定的,我通过应用described here解决了它:
SizedBoxed(width: 411.2, height: 411.2, child: MyRenderObjectWidget())
为此,我删除了performLayout
的替代并将以下内容添加到我的RenderObject
:
@override
get sizedByParent => true;
@override
performResize() => size = constraints.smallest;