Flutter
class MyCard extends StatelessWidget {
Widget ?title;
Widget ?icon;
MyCard({Key? key, this.title, this.icon});
@ override
Widget build(BuildContext context) {
return Container(
child: Card(
child: Column(
children: <Widget>[
title,
icon
],
),
),
);
}
}
I get the following error: A value of type 'Widget?' can't be assigned to a variable of type 'Widget' because 'Widget?' is nullable and 'Widget' isn't.
How can I resolve this issue?
CodePudding user response:
Because your title and icon can be null at runtime but Column() does not allow you to add Widgets in children that are going to be null.
You can add a null check on your title like this title! and the same for icon to icon! or you can give a constant Widget to your title and icon when they comes as null at runtime. Something like this
Column(
children: <Widget>[
title ?? const Offstage(),
icon ?? const Offstage(),
],
),
