在React Native中,我可以通过回调将onLayout属性添加到任何组件中,并且每次布局更改影响该组件时,都会使用该组件的位置和尺寸来调用该回调。
如何在Flutter中做同样的事情?
有些代码建议使用WidgetsBinding.instance.addPostFrameCallback(_callback);
,但这只是第一次调用,它似乎也不能保证我可以使用_key.currentContext.findRenderObject()
来获得小部件的大小。
答案 0 :(得分:2)
是的,有一个叫做LayoutBuilder
。它旨在在更改时重建窗口小部件树,因此您必须在一个单独的类中将要调整的窗口小部件分开,并实现LayoutBuilder
。可以在documentation上找到更多信息。