在flutter中使用initialRoute标签

时间:2018-08-28 08:27:22

标签: firebase dart flutter

我正在尝试基于flutter的firebase。在文档中找到此 initialRoute 属性。我正在这样使用它:

 @override
Widget build(BuildContext context) {
// TODO: implement build
return new MaterialApp(
  color: Colors.yellow,
  routes: <String, WidgetBuilder>{
    "/login":(BuildContext context) => new SignIn(),
  },
  initialRoute: "/login",
  home: DefaultTabController(
    length: 4,
...

此登录活动是GoogleLogin,我最初使用Navigator在两个活动之间进行切换。我想知道在SignIn活动中将使用哪些触发器在屏幕之间进行切换?我仍然使用导航器吗?

在“登录”活动中,我有一个“继续”按钮来执行此切换:

         new MaterialButton(onPressed: (){
                    Navigator.pop(context);
                    Navigator.push(context,
 MaterialPageRoute(builder: (context)=> TabLayoutDemo.fromTabLayoutDemo(_auth, _googleSignIn)));
                  },
                    color: Colors.green,
                    splashColor: Colors.greenAccent,
                    child: const Text("Proceed"),
                  ),

但这是在登录完成后再次启动“登录”屏幕。

1 个答案:

答案 0 :(得分:0)

您仍然可以在登录活动中使用 Navigator 在屏幕之间导航。但是,您可能需要检查是否有用户已登录以跳过登录页面。要查看当前登录的用户,您可以使用 FirebaseAuth.instance.currentUser