在_WidgetsAppState

时间:2019-11-18 06:37:19

标签: flutter dart

我正在编写一个Flutter应用(Kinda是这里的初学者)。这是我的代码。
main.dart

import 'package:flutter/material.dart';
import 'package:flutter_app_timer/helpers/constants.dart';

void main() => runApp(ContactApp());

class ContactApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      debugShowCheckedModeBanner: false,
      title: appTitle,
      theme: new ThemeData(
        primaryColor: appColor,
      ),
    );
  }

}  

constants.dart

import 'package:flutter/material.dart';

Color appColor = Color.fromRGBO(58, 66, 86, 1.0);

const appTitle = "Contact App";  

当我在模拟器中运行它时,出现以下异常消息。

  

I / flutter(7381):W小工具库引起的异常CA br
  I / flutter(7381):构建了IconTheme(IconThemeData#2abdc(color:
  I / flutter(7381):颜色(0xdd000000))):
  I / flutter(7381):在_WidgetsAppState中找不到路由RouteSettings(“ /”,null)的生成器。

我需要在Navigator中添加main.dart吗?我怎样才能解决这个问题?

2 个答案:

答案 0 :(得分:2)

您必须使用属性 home initialRoute 导航到初始屏幕才能向用户显示。

因此,只需在MaterialApp内部添加一个家庭属性

return MaterialApp(
      debugShowCheckedModeBanner: false,
      title: appTitle,
      theme: new ThemeData(
        primaryColor: appColor,
      ),
      home: TestPage ()
    );

创建一个屏幕或页面以如下方式显示给用户,

class TestPage extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: Center(child: Text("Hello World!!"),),
    );
  }
}

答案 1 :(得分:1)

这对我有用:

Navigator.pushAndRemoveUntil(context,
            MaterialPageRoute(builder: (context) => HomePage()), (r) => false);