将firebase连接到我的文本字段/材料登录页代码

将firebase连接到我的文本字段/材料登录页代码,firebase,flutter,dart,Firebase,Flutter,Dart,我对应用程序开发非常陌生,对Firebase也非常陌生,我很难在网上找到适合我专门编写的代码的源代码。我已经编辑了所需的页面(如pubsepc文件、build.gradle文件等),编辑实际代码时遇到问题。对于我的登录页面,我使用了多个文本字段和材质按钮。此代码是类的一部分_HomePageState扩展了代码的状态部分 谁能帮我找出一种技术或给我一个提示,让firebase与此连接?我在网上见过其他例子,但没有一个像我的代码那样专门使用文本字段。很多都有附加功能,我不确定是否需要它们。我更喜欢

我对应用程序开发非常陌生,对Firebase也非常陌生,我很难在网上找到适合我专门编写的代码的源代码。我已经编辑了所需的页面(如pubsepc文件、build.gradle文件等),编辑实际代码时遇到问题。对于我的登录页面,我使用了多个文本字段和材质按钮。此代码是类的一部分_HomePageState扩展了代码的状态部分

谁能帮我找出一种技术或给我一个提示,让firebase与此连接?我在网上见过其他例子,但没有一个像我的代码那样专门使用文本字段。很多都有附加功能,我不确定是否需要它们。我更喜欢使用TextField,但是使用TextField可能吗?多谢各位

@覆盖
小部件构建(构建上下文){
最终电子邮件=文本字段(
模糊文本:false,
风格:风格,
装饰:输入装饰(
内容填充:来自LTRB(20.0,15.0,20.0,15.0)的EdgeInsets,
hintText:“电子邮件”,
边界:
OutlineInputBorder(borderRadius:borderRadius.circular(32.0)),
);
最终密码=文本字段(
蒙昧文字:对,
风格:风格,
装饰:输入装饰(
内容填充:来自LTRB(20.0,15.0,20.0,15.0)的EdgeInsets,
hintText:“密码”,
边界:
OutlineInputBorder(borderRadius:borderRadius.circular(32.0)),
);
最终登录按钮=物料(
标高:5.0,
边界半径:边界半径。圆形(30.0),
颜色:颜色(0xff01A0C7),
子:材质按钮(
minWidth:MediaQuery.of(context).size.width,
填充:来自LTRB(20.0,15.0,20.0,15.0)的边缘设置,
按下:(){},
子:文本(“登录”,
textAlign:textAlign.center,
style:style.copyWith(
颜色:Colors.white,fontwweight:fontwweight.bold),
),

)
这是您可以做的,这是用于登录按钮的代码 userEmail和userPassword是从两个文本字段中获取的字符串

onPressed: () async {
                    try {
                      AuthResult result = await FirebaseAuth.instance
                          .signInWithEmailAndPassword(
                              email: userEmail, password: userPassword);
                      print(result.user.email : userEmail);//#debug statement
                      setState(() {});
                    //navigator push here, to go to next page, if login is successfull
                    } catch (e) {
                      print('error during login is $e'); // #debug
                    }
                  },
在init状态下,您可以使用此功能检查是否有人登录,以便下次用户启动应用程序时,他们将自动登录

@override
  void initState() {
    isUserLoggedIn();
    // TODO: implement initState
    super.initState();
  }

  isUserLoggedIn() async {
    var x = await FirebaseAuth.instance.currentUser();
    if (x != null) {
      // code to be execute if someone is already logged in, take him to next page
    }
  }

我已经从中删除了android studio和xcode标记,因为问题不是直接引用这些产品中的任何一个。这些标记应该只用于与这些软件相关的特定问题。如果您只是使用这些工具来构建应用程序,则它们不适用。我很抱歉,感谢您让我知道!哇!效果很好,非常感谢你,你帮了我很多忙!我在兜圈子想弄明白:)