我在颤振异常错误中遇到错误

问题描述 投票:0回答:1

发生异常。 FlutterError(在构建期间调用 setState() 或 markNeedsBuild())。 此 _ModalScope 小部件无法标记为需要构建,因为框架已经在构建小部件的过程中。仅当小部件的祖先之一当前正在构建时,才可以将其标记为需要在构建阶段构建。允许此异常,因为框架在子窗口之前构建父窗口小部件,这意味着将始终构建脏后代。否则,框架可能不会在此构建阶段访问此小部件。 调用 setState() 或 markNeedsBuild() 的小部件是: _ModalScope-[LabeledGlobalKey<_ModalScopeState>#96ae3] 发出有问题的调用时当前正在构建的小部件是: 有帐户或没有帐户)

代码是: @覆盖 小部件构建(BuildContext 上下文){

返回支架(

  resizeToAvoidBottomInset: false ,
  key: scaffold,
backgroundColor: Color(0xfff8f8f8),
  body: SafeArea(

    child: Container(
      padding: EdgeInsets.symmetric(horizontal: 20),
      child: Column(
        mainAxisAlignment: MainAxisAlignment.spaceEvenly,
        children: [
          TopTitle(
            subsTitle: "Welcome To FoodZone", 
            title: "Login"),
          Center(
            child: Container(
              height: 200,
              width: double.infinity,
              child: Column(
                mainAxisAlignment: MainAxisAlignment.center,
                children: [
                  MyTextFormField(title: "Email", controller: email,),
                  SizedBox(
                    height: 10,
                  ),

                  MyPasswordTextFormField(title: "Password", controller: password,),

MyButton(名称: "登录", onPressed: (){ 验证();

          },
          ),         

HaveAccountOrNot(onTap: () {

          Navigator.of(context).pushReplacement(
  
            MaterialPageRoute(
              builder: (ctx) => SignUp(),
              )
          );
        },
          
          title: "I don't have an Account", subsTitle: "SignUp"),
       
          
                 
                ],
              ),
            ),
          ),
          
          
        ],
      ),
    ),
  ),
);

} }

ios flutter
1个回答
0
投票

setState() or markNeedsBuild() called during build
错误通常是由 initState 调用的某些函数引起的。你可以尝试将
addPostFrameCallback
添加到你的 initState 代码中:

  @override
  void initState() {
    WidgetsBinding.instance.addPostFrameCallback((_) {
      // your code
    });
    super.initState();
  }

您提供的示例代码似乎很好,为了了解更多上下文,您可以在此处共享整个文件代码,以便我们找出主要问题是什么。

© www.soinside.com 2019 - 2024. All rights reserved.