有人可以解释一下如何遍历 Widget Tree 的子级,以便我可以根据其类型获取特定子级的 RenderObject 吗?
我目前的实际用例是,我需要获取 Scaffold AppBar 的尺寸(因为我有一个通用小部件,需要通过 PopupMenu 进行定位,位于 AppBar 的下方,该小部件可能有也可能没有底部)。
由于AppBar没有公开它的AppBarState,给它一个键是没有用的,我需要遍历Scaffold子级才能找到它。
非常感谢
最佳答案
我所做的就是通过获取 RenderObject 进行类似的操作。为了访问该对象,我正在转换我打算使用的 Widget。例如
RenderBox renderBox = key.currentContext.findRenderObject() as RenderBox;
从此示例中,我能够通过转换 RenderBox 来访问对象的属性。
关于Flutter:如何遍历一个Widget child ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50317609/