构造函数的函数参数为null#颤振



我有一个类可以在SignInPage和SignUpPage之间更改UI。

class Authenticate extends StatefulWidget {
@override
_AuthenticateState createState() => _AuthenticateState();
}
class _AuthenticateState extends State<Authenticate> {
bool showSignIn = true;
toggleView() {
setState(() {
showSignIn = !showSignIn;
});
}
@override
Widget build(BuildContext context) {
if (showSignIn) {
return SignIn(
toggleView(),
);
} else
return SignUp(
toggle: toggleView(),
);
;
}
}

这是我在SignInPage 的创建者

Function toogle;
@override
SignIn(Function fun) {
this.toogle = fun;
}

toogle总是空的,我不知道为什么:(

如果要传递函数,则应通过引用传递。现在,您正在执行该函数并传递其结果。

更改此项:

return SignIn(
toggleView(),
);

到此:

return SignIn(
toggleView,
);

此外,不确定构造函数是否需要@override,可能可以将其删除。

相关内容

最新更新