Flutter获取全局context

通过navigatorKey的方式

void main() {
  runApp(MyApp());
}
 
final GlobalKey navigatorKey = new GlobalKey();
 
class MyApp extends StatelessWidget {
  MyApp() {
  }
 
  // This widget is the view.common.root of your application.
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      navigatorKey: navigatorKey,
    );
  }
}
获取context:

BuildContext context = navigatorKey.currentState.overlay.context

注意:通过这种方式获取的context在某些情况下需要放在
Future.delayed(Duration(seconds: 0)).then((onValue) { });

你可能感兴趣的:(Flutter获取全局context)