You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flutter 同Row内TextFormField显示错误信息时被折叠如何解决

你遇到的输入框折叠压缩问题,本质是Row下的两个TextFormField为自适应高度组件,错误提示出现时组件整体高度变化,Row的高度约束冲突导致的布局挤压,可按以下方案解决:

方案1:固定单个输入框高度(最常用,性能最优)

给每个TextFormField外层包裹固定高度的SizedBox,高度值设置为可容纳输入框+最多3行错误文本的大小即可,示例代码:

Row(
  children: <Widget>[
    Expanded(
      flex: 2,
      // 新增SizedBox固定高度,数值可自行调整
      child: SizedBox(
        height: 80,
        child: TextFormField(
          autovalidateMode: AutovalidateMode.onUserInteraction,
          keyboardType: TextInputType.number,
          controller: controller.plz,
          validator: ValidationBuilder(
                  localeName: localeLanguage)
              .digits()
              .minLength(5)
              .required()
              .build(),
          decoration: inputdecoration(),
        ),
      )
    ),
    SizedBox(width: 10.0),
    Expanded(
      flex: 3,
      // 同样套SizedBox固定高度,和第一个输入框高度保持一致
      child: SizedBox(
        height: 80,
        child: TextFormField(
          autovalidateMode: AutovalidateMode.onUserInteraction,
          validator: ValidationBuilder(
                  localeName: localeLanguage)
              .required()
              .build(),
          controller: controller.place,
          decoration: inputdecoration(),
        ),
      )
    )
  ],
),

方案2:通过InputDecoration约束固定高度

直接在你现有的InputDecoration配置里新增constraints属性固定高度,不需要修改外层布局:

InputDecoration(
  errorMaxLines: 3,
  helperText: '',
  // 新增高度约束,数值可自行调整
  constraints: BoxConstraints(minHeight: 80, maxHeight: 80),
  contentPadding: EdgeInsets.symmetric(vertical: 10.0, horizontal: 10.0),
  fillColor: AsianmastaColors.white,
  filled: true,
  border: OutlineInputBorder(
    borderSide: BorderSide(color: Colors.grey, width: 1.0)
  )
)

方案3:自适应等高布局(不需要固定高度)

如果希望两个输入框高度始终保持一致,跟随最高的子组件高度自适应,给Row外层套IntrinsicHeight组件即可:

IntrinsicHeight(
  child: Row(
    children: <Widget>[
      // 保留你原来的两个Expanded输入框代码即可
    ],
  ),
)

注意:这个方案性能略低于固定高度方案,复杂长列表页面不推荐使用,简单表单页可正常使用。

内容的提问来源于stack exchange,提问作者Dani

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 23:15:05