Flutter:失败的断言:'builder!= null主页!= null

时间:2019-01-03 08:02:28

标签: android dart flutter

我是一名新手,正在忙着研究StatelessWidget,代码出了什么问题,只创建了MaterialApp但显示了错误

  

断言失败:'builder!= null home!= null

import 'package:flutter/material.dart';

void main() {
  runApp(new MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return new MaterialApp(
      title: "Farhana naaz ansari",
      theme: new ThemeData(
        primarySwatch: Colors.red
      ) ,
    );
  }
}

2 个答案:

答案 0 :(得分:1)

MaterialApp桅杆上有一个家,MaterialApp包裹了您所有的应用程序,我添加了Scaffold,因为它包裹了您当前的页面,home: Text("This is the app")也可以使用,但是不推荐。

import 'package:flutter/material.dart';

void main() {
  runApp(new MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: "Farhana naaz ansari",
      theme: ThemeData(
          primarySwatch: Colors.red
      ) ,
      home: Scaffold(body: Text("This is the app"),),
    );
  }
}

答案 1 :(得分:1)

您必须将房屋设置为某些东西。 假设您将homescreen作为home.dart包含一些代码。

Home.dart

class Home extends StatefulWidget {
  @override
  _HomeState createState() => _HomeState();
}

class _HomeState extends State<Home> {
  @override
  Widget build(BuildContext context) {
    return Center(
      child : Text("Home")
    );
  }
}

现在,您必须在代码中将home设置为Home()。

import './home.dart';

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return new MaterialApp(
      title: "Farhana naaz ansari",
      theme: new ThemeData(
        primarySwatch: Colors.red
      ) ,
      home: Home()
    );
  }
}

如果在物料应用中未分配任何,则它会分配,这会导致您的情况出错。希望对您有所帮助:)