BoxConstraints forces an infinite width

前端 未结 3 1242
無奈伤痛
無奈伤痛 2020-12-15 16:49

I am getting an error when I add a row in column. I am getting following error:

I/flutter ( 6449): ══╡ EXCEPTION CAUGHT BY RENDERING LIBRARY ╞═══════════════         


        
相关标签:
3条回答
  • 2020-12-15 17:10

    This happens only when you are trying to define an infinite width and height for a Row, Column or Container that is a parent of the TextField that wants to use all the space.

    To solve this, you should wrap your TextField with Flexible or Expanded.

    Do this to solve the issues above and beyond.

     Expanded(
       child: txtFirstName,
     ),
    
     Flexible(
       child: txtLastName,
     ),
    

    Full example

     Column(
        children: <Widget>[
          imgHeader,
          lblSignUp,
          txtEmail,
          Row(
            mainAxisAlignment: MainAxisAlignment.start,
            children: <Widget>[
              Expanded(
                child: txtFirstName,
              ),
              Flexible(
                child: txtLastName,
              ),
            ],
          ),
        ],
      )
    
    0 讨论(0)
  • 2020-12-15 17:12

    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.

    1. Use Expanded

       Row(
        children: <Widget>[
          Expanded(child: TextField()),
          // more widgets
        ],
      )
      
    2. Use Flexible

      Row(
        children: <Widget>[
          Flexible(child: TextField()),
          // more widgets
        ],
      )
      
    3. Wrap it in Container or SizedBox and provide width

      Row(
        children: <Widget>[
          SizedBox(width: 100, child: TextField()),
          // more widgets
        ],
      )       
      
    0 讨论(0)
  • 2020-12-15 17:13

    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

    0 讨论(0)
提交回复
热议问题