如何解决我如何在用户状态颤动时更改抽屉项目
如何根据用户状态更改颤动上的抽屉项目 抽屉有 2 个项目登录和退出,当我按下退出时,用户退出但抽屉不会改变退出按钮仍然可见,我应该重新加载页面,使其消失并出现登录按钮
if (_auth.currentUser == null)
Column(
children: [
ListTile(
title: Text('Sign In'),onTap: () {
Navigator.push(
context,MaterialPageRoute(builder: (context) => SignIn()),);
},),],)
else
Column(
children: [
ListTile(
title: Text('My Cars'),MaterialPageRoute(builder: (context) => MyCars()),ListTile(
title: Text('Sign Out'),onTap: () {
signOut();
},
登录也有导航功能,可以导航到有抽屉的屏幕,但是当发生这种情况时,抽屉仍然显示登录按钮,我应该再次导航以更改它
解决方法
将 listile 包装到 visibility
小部件中,
Visibility (
visible: _visible
child: ListTile(...)
);
声明一个布尔变量 _visible
并设置它的值。您可以检查所有条件并在 setState
中将其设为 true 以隐藏和显示 ListTile
。
setState(() {
_visible = false;
});
setState(() {
_visible = true;
});
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。