Flutter最新版本获得MaterialApp的context
在Flutter最新版本中,MaterialApp的context可以通过以下方式获得:
- 使用Navigator的of方法
在MaterialApp中,可以使用Navigator.of(context)方法获取context,例如:
MaterialApp(
home: Builder(
builder: (context) => RaisedButton(
onPressed: () {
Navigator.of(context).push(
MaterialPageRoute(
builder: (context) => MyPage(),
),
);
},
child: Text('Go to MyPage'),
),
),
);
在这个例子中,我们在MaterialApp中嵌套了一个Builder,然后在Builder的builder函数中获取了context,通过这个context调用了Navigator.of方法。
- 使用Builder
另一种方法是使用Builder,例如:
MaterialApp(
home: Builder(
builder: (context) {
return RaisedButton(
onPressed: () {
Navigator.push(
context,
MaterialPageRoute(
builder: (context) => MyPage(),
),
);
},
child: Text('Go to MyPage'),
);
},
),
);
在这个例子中,我们在MaterialApp中嵌套了一个Builder,然后在Builder的builder函数中直接使用context来调用Navigator.push方法。
总结:在Flutter最新版本中,获取MaterialApp的context可以使用Navigator的of方法或者Builder。
原文地址: https://www.cveoy.top/t/topic/bhA9 著作权归作者所有。请勿转载和采集!