asyncPrepare method
Widget rendering listener. Widget渲染监听. context: Widget context. isOnce: true,Continuous monitoring false,Listen only once. onCallBack: Widget Rect CallBack.
Implementation
void asyncPrepare(BuildContext context, bool isOnce, ValueChanged<Rect>? onCallBack) {
if (_hasMeasured) return;
WidgetsBinding.instance.addPostFrameCallback((Duration timeStamp) {
RenderBox? box = getRenderBox(context);
if (box != null) {
if (isOnce) _hasMeasured = true;
double width = box.semanticBounds.width;
double height = box.semanticBounds.height;
if (_width != width || _height != height) {
_width = width;
_height = height;
if (onCallBack != null) onCallBack(box.semanticBounds);
}
}
});
}