如何使用脚手架键删除或隐藏当前的小吃店?

问题描述

下面的代码工作正常,但不会在用户注销时隐藏小吃店。 它调用代码 _scaffoldKey.currentState.hideCurrentSnackBar(); 但不隐藏小吃店。

如何删除或隐藏当前的小吃店?

class HomeScreen extends StatefulWidget {
  @override
  _HomeScreenState createState() => _HomeScreenState();
}

class _HomeScreenState extends State<HomeScreen>
    with AutomaticKeepAliveClientMixin {

  @override
  bool get wantKeepAlive => true;


@override
  Widget build(BuildContext context) {
    // need to call super method for AutomaticKeepAliveClientMixin
    super.build(context);

    print('Rebuild in Home Screen.....');

    return StreamBuilder<app.User>(
          stream: Provider.of<AuthProvider>(context,listen: true).user,builder: (context,snapshot) {
               return StreamBuilder<List<UserMovies>>(
                  stream: Provider.of<UserDetailsProvider>(context,listen: false)
                    .getUserFavouriteMovies(),snapshotMovies) {
                    Movies movies = snapshotMovies.hasData &&
                                snapshotMovies.data.length > 0
                            ? snapshotMovies.data[0]
                            : null;
  
                    _showSnackBar(context,movies);

                   return SizedBox(height: 2.0);
             },},),}

  void _showSnackBar(BuildContext ctx,Movies movies) {
    if (movies == null) {
      _scaffoldKey.currentState.hideCurrentSnackBar();
    } else {
      WidgetsBinding.instance.addPostFrameCallback(
        (_) => {
          print('showCurrentSnackBar'),_scaffoldKey.currentState.showSnackBar(
            SnackBar(
              backgroundColor: Colors.deepPurple.shade300,content: Text("Hello World!"),duration: const Duration(
                days: 1,behavior: SnackBarBehavior.floating,margin: EdgeInsets.zero,shape: const RoundedRectangleBorder(
                borderRadius: BorderRadius.all(
                  const Radius.circular(0.0),);
    }
  }
}

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...