flutter如何监听一个widget是否构建完毕
Flutter 提供了一个 WidgetsBindingObserver 接口,可以用来监听 widget 的生命周期。具体实现如下:
class MyWidget extends StatefulWidget {
@override
_MyWidgetState createState() => _MyWidgetState();
}
class _MyWidgetState extends State<MyWidget> with WidgetsBindingObserver {
@override
void initState() {
super.initState();
WidgetsBinding.instance.addObserver(this);
}
@override
void dispose() {
WidgetsBinding.instance.removeObserver(this);
super.dispose();
}
@override
void didChangeAppLifecycleState(AppLifecycleState state) {
if (state == AppLifecycleState.resumed) {
// widget 构建完毕
print('widget 构建完毕');
}
}
@override
Widget build(BuildContext context) {
return Container();
}
}
在这个例子中,我们使用 WidgetsBindingObserver 接口来监听 AppLifecycleState 的变化,当应用程序从后台切换到前台时,我们可以得知 widget 已经构建完毕。
原文地址: https://www.cveoy.top/t/topic/bec0 著作权归作者所有。请勿转载和采集!