简体   繁体   中英

Flutter exception caught by widgets library failed assertion

Flutter Widgets.dart

I am getting below exception. I am just learning Flutter.

Below is my code:

import 'package:flutter/material.dart';

void main() => runApp(new FriendlyChatApp());

const String _name = "Hammad Tariq";

class FriendlyChatApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return new MaterialApp(
  title: "Friendly Chat",
  home: new ChatScreen(),
);
}
}

class ChatScreen extends StatelessWidget {
ChatScreen({this.text});

final String text;

@override
Widget build(BuildContext context) {
return new Container(
  margin: const EdgeInsets.symmetric(vertical: 10.0),
  child: new Row(
    crossAxisAlignment: CrossAxisAlignment.center,
    children: <Widget>[
      new Container(
        margin: const EdgeInsets.only(right: 10.0),
        child: new CircleAvatar(
          child: new Text(_name),
        ),
      ),
      new Column(
        crossAxisAlignment: CrossAxisAlignment.start,
        children: <Widget>[
          new Text(_name, style: Theme.of(context).textTheme.subhead),
          new Container(
            margin: const EdgeInsets.only(top: 5.0),
            child: new Text(text),
          ),
        ],
      )
    ],
  ),
 );
  /*return new Scaffold(
  appBar: AppBar(
    title: new Text("Chat App"),
  ),
  );*/
  }
 }

The issue is in the line

child: new Text(text)

where String text is null.

You've defined text as an optional parameter and you are not passing it from FriendlyChatApp .

If you require some inputs from parent page for the child to work properly then you can define it with @required annotation because you won't miss it accidentally.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM