I am getting an error when I add a row in a column. I am getting the following error:
I/flutter ( 6449): ══╡ EXCEPTION CAUGHT BY RENDERING LIBRARY ╞═════════════════════════════════════════════════════════ I/flutter ( 6449): The following assertion was thrown during performLayout(): I/flutter ( 6449): BoxConstraints forces an infinite width. I/flutter ( 6449): These invalid constraints were provided to RenderAnimatedOpacity's layout() function
Also for reference here is my code:
return new Scaffold( backgroundColor: whiteColor, body: new Column( children: <Widget>[ imgHeader, lblSignUp, txtEmail, Row( mainAxisAlignment: MainAxisAlignment.start, children: <Widget>[ txtFirstName, txtLastName ], ), ], ), );
An InputDecorator, which is typically created by a TextField, cannot have an unbounded width.
If you are using TextField
Inside a Row
then you need to use Flexible
or Expanded
.
More details are given here in this answer.
https://stackoverflow.com/a/45990477/4652688
Reason for the error:
TextField
expands in horizontal direction and so does the Row
, so we need to constrain the width of the TextField
, there are many ways of doing it.
Use Expanded
Row( children: <Widget>[ Expanded(child: TextField()), // more widgets ], )
Use Flexible
Row( children: <Widget>[ Flexible(child: TextField()), // more widgets ], )
Wrap it in Container
or SizedBox
and provide width
Row( children: <Widget>[ SizedBox(width: 100, child: TextField()), // more widgets ], )
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With