[英]SnackBar doesn't show Flutter
有一个问题, SnackBar
应该显示在教程视频中,但它没有。
我正在尝试使用 GlobalKey 创建 _scaffoldKey,但它不起作用。
这是我的代码:
void main() {
runApp(ProviderScope(
child: MyHomePage(),
));
}
final counterStateProvider = StateProvider<int>((ref) {
return 0;
});
class MyHomePage extends ConsumerWidget {
@override
Widget build(BuildContext context, ScopedReader watch) {
final counter = watch(counterStateProvider);
return ProviderListener<StateController<int>>(
provider: counterStateProvider,
onChange: (context, counterState) {
ScaffoldMessenger.of(context).showSnackBar(
SnackBar(
content: Text('Value is ${counterState.state}'),
),
);
},
child: MaterialApp(
debugShowCheckedModeBanner: false,
home: Scaffold(
floatingActionButton: FloatingActionButton(
onPressed: () => context.read(counterStateProvider).state++,
child: Icon(Icons.ios_share_sharp),
),
body: Center(
child: Text(
'value: ${counter.state}',
style: Theme.of(context).textTheme.headline6,
),
),
),
),
);
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.