When a row is in a parent that does not provide a finite width constraint, for example if it is in a

return Container(
      child: Row(
        mainAxisAlignment: MainAxisAlignment.center,
        children: [
          Container(
            child: CupertinoTextField(
              placeholder: '请输入手机号',
              placeholderStyle:
                  TextStyle(fontSize: 13, color: AppCustomColor.fontGreyColor),
              prefix: Container(
                width: 60,
                child: Text(
                  '手机号',
                  style: TextStyle(fontSize: 14),
                ),
              ),
              decoration: null,
            ),
          ),
          Container(
            child: FlatButton(
              onPressed: () {},
              child: Text('获取验证码'),
              textColor: AppCustomColor.themeGreenColor,
            ),
          ),
        ],
      ),
    );

这样写的flutter布局的时候,报出下面的错误

When a row is in a parent that does not provide a finite width constraint, for example if it is in a horizontal scrollable, it will try to shrink-wrap its children along the horizontal axis. Setting a flex on a child (e.g. using Expanded) indicates that the child is to expand to fill the remaining space in the horizontal direction.
These two directives are mutually exclusive. If a parent is to shrink-wrap its child, the child cannot simultaneously expand to fit its parent.

吧container改成flex类的布局控件就可以了

 _loginPasswordInput() {
    return Container(
      child: Row(
        mainAxisAlignment: MainAxisAlignment.spaceBetween,
        children: [
          Expanded(
            child: CupertinoTextField(
              placeholder: '请输入手机号',
              placeholderStyle:
                  TextStyle(fontSize: 13, color: AppCustomColor.fontGreyColor),
              prefix: Container(
                width: 60,
                child: Text(
                  '手机号',
                  style: TextStyle(fontSize: 14),
                ),
              ),
              decoration: null,
            ),
          ),
          Expanded(
            child: FlatButton(
              onPressed: () {},
              child: Text(
                '获取验证码',
                textAlign: TextAlign.right,
              ),
              textColor: AppCustomColor.themeGreenColor,
            ),
          ),
        ],
      ),
    );
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值