繁体   English   中英

SnackBar 不显示 Flutter

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM