微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在颤振中显示小吃店消息

如何解决如何在颤振中显示小吃店消息

我试图在用户单击按钮时显示小吃栏,但我不能这样做。

我没有收到警告或错误,我不知道我错过了什么

这是我的代码

RaisedButton(
   onpressed: () {
     if (formKey.currentState.validate()) {
       formKey.currentState.save();
       dbHelper
         .addNote(Notes(categoryID,notBaslik,notIcerik,"",selectedOncelik))
         .then((savednoteID) {
       if (savednoteID != 0) {
         _scaffoldKey.currentState
             .showSnackBar(SnackBar(
         content: Text("Not Eklendi"),duration: Duration(seconds: 2),));
        } else {}
        Navigator.pop(context);
       });
      }
     },child: Text("Kaydet"),color: Colors.red),

解决方法

确保您在小部件树中定义了一个 Scaffold,您试图在其中显示小吃栏,并且将 _scaffoldKey 作为属性添加到您的脚手架中,即

final GlobalKey<ScaffoldState> _scaffoldKey = new GlobalKey<ScaffoldState>();

Scaffold(key: _scaffoldKey,body: ...)

或者您可以使用 Scaffold.of(context)

Scaffold.of(context).showSnackBar(SnackBar(content: Text("Not Eklendi"),duration: Duration(seconds: 2));

喜欢:

RaisedButton(
   onPressed: () {
     if (formKey.currentState.validate()) {
       formKey.currentState.save();
       dbHelper
         .addNote(Notes(categoryID,notBaslik,notIcerik,"",selectedOncelik))
         .then((savedNoteID) {
       if (savedNoteID != 0) {
         Scaffold.of(context).showSnackBar(SnackBar(
         content: Text("Not Eklendi"),duration: Duration(seconds: 2),));
        } else {}
        Navigator.pop(context);
       });
      }
     },child: Text("Kaydet"),color: Colors.red),

在某些情况下,您需要将其包装在 Builder 小部件中才能获得正确的 context。如果仍然无法正常工作,您可以尝试使用

,

初始化一个变量

final _scaffoldKey = GlobalKey<ScaffoldState>();

_scaffoldKey 添加到脚手架

Scaffold(
key: _scaffoldKey,)

代码

RaisedButton(
   onPressed: () {
     if (formKey.currentState.validate()) {
       formKey.currentState.save();
       dbHelper
         .addNote(Notes(categoryID,selectedOncelik))
         .then((savedNoteID) {
       if (savedNoteID != 0) {
        final snackBar = SnackBar(content: Text("Test"));
        _scaffoldKey.currentState.showSnackBar(snackBar);
       
        } else {}
        Navigator.pop(context);
       });
      }
     },child: Text("Name"),

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。