Flutter-DropdownButton onChanged不调用函数

时间:2019-09-23 20:38:37

标签: flutter dart

我有一个简单的DropdownButton元素和onChange事件。

onChanged: (String newValue) {
    if (newValue == "Log out") {
        print("Inside IF");
        setState(){
            user.navigateToPreviousPage(Login(), context, false);
        }
    }
},

但是从这里我只能得到这个print(“ Inside IF”)...它没有调用应该删除用户令牌并导航到登录页面的函数。 此外,没有错误或警告...

这是怎么了?我的全班都是无状态小部件。我应该将其更改为“有状态”吗?

1 个答案:

答案 0 :(得分:1)

您以错误的方式调用setState:

setState(){
            user.navigateToPreviousPage(Login(), context, false);
        }

正确的方法:

setState(() {
  user.navigateToPreviousPage(Login(), context, false);
});

您应该从您要关闭的小部件中调用Navigator.pop