Android studio 如何解决简易能见度试验颤振问题

Android studio 如何解决简易能见度试验颤振问题,android-studio,flutter,Android Studio,Flutter,我试图找出一种方法,根据登录页面中的条件设置主页上小部件的可见性。下面是我的登录页面 if(isSwitched == true){ if(nPassword == adminpin){ Navigator.push( context, MaterialPageRoute(builder: (conte

我试图找出一种方法,根据登录页面中的条件设置主页上小部件的可见性。下面是我的登录页面

if(isSwitched == true){
                      if(nPassword == adminpin){
                        Navigator.push(
                          context,
                          MaterialPageRoute(builder: (context) => HomePageClass()),
                        );
                        setState(() {
                          isAdminVar = 1;
                        });
                      }else{
                        Text('Wrong Password');
                      };
                    }else if (isSwitched == false){
                      if(nPassword == staffpin){
                        Navigator.push(
                          context,
                          MaterialPageRoute(builder: (context) => HomePageClass()),
                        );
                        setState(() {
                          isAdminVar = 2;
                        });
                      }
                      else{
                        return showAlert(context);
                      }
                    }
isSwitched是将开关按钮从on更改为off的bool。基于这一点,在我的登录屏幕上,我想在我的主页上隐藏或显示小部件。下面是我的主页

     Visibility(
                visible: VisibilityTest(),
                 ///my widget
              ),
  VisibilityTest() {
    if(isAdminVar == '1'){
      return _isVisible;
    }
    else{
      return !_isVisible;
    }
  }
}
_isVisible是一个bool。同样出于某种原因,我不得不在主页中为isAdminVar创建一个get和set

set isAdminVar(int isAdminVar) {}
get isAdminVar => null;

我在这里看到两个错误。一个是,您根本没有将isAdminVar从登录页面传递到主页。除非你这样做,否则你的主页根本不知道什么是
isAdminVar
。第二件事是在loginpage,
isAdminVar=1
中为状态分配一个int值,在Homepage中,您将与字符串进行比较
if(isAdminVar='1'){