user-interface - 验证错误上的两个内联 TextFormField 错误空格
问题描述
我创建了一个表单,其中我有两个并排的 TextFormField,问题是当验证错误消息显示时,一个 TextFormField 正在上升,让另一个有点下降。我该如何纠正这个小小的设计错误
这是我得到的截图
这是我设计的方式
Row(
children: <Widget>[
Expanded(
child: GestureDetector(
onTap: () => utils.selectDate(context, _dateCtrl),
child: AbsorbPointer(
child: TextFormField(
readOnly: true,
controller: _dateCtrl,
validator: (value) => Validate.getMsg('date', value),
decoration: buildInputDecoration(
false,
'Date',
iconData: Icons.calendar_today,
),
),
),
),
),
SizedBox(width: 5),
Expanded(
child: GestureDetector(
onTap: () => utils.selectTime(context, _timeCtrl),
child: AbsorbPointer(
child: TextFormField(
readOnly: true,
controller: _timeCtrl,
validator: (value) => Validate.getDateTimeMsg(
'time',
value,
),
decoration: buildInputDecoration(
false,
'Time',
iconData: Icons.access_time,
),
),
),
),
),
],
),
这是 buildInputDecoration 方法的代码
InputDecoration buildInputDecoration(bool isTextArea, String hintText,
{IconData iconData}) =>
InputDecoration(
contentPadding: isTextArea ? EdgeInsets.all(15.0) : null,
enabledBorder: OutlineInputBorder(
borderSide: BorderSide(color: Colors.transparent),
),
focusedBorder: OutlineInputBorder(
borderSide: BorderSide(color: Colors.transparent),
),
errorBorder: OutlineInputBorder(
borderSide: BorderSide(color: Colors.red),
),
focusedErrorBorder: OutlineInputBorder(
borderSide: BorderSide(color: Colors.red),
),
hintText: hintText,
prefixIcon: isTextArea ? null : Icon(iconData),
filled: true,
fillColor: Colors.grey[100],
);
解决方案
推荐阅读
- android - 当我使用 admob 颤振时位置参数太多
- html - Angular Material mat-card-content 和 mat-card-actions:如何更改这两者之间的间距?
- reactjs - 在名为 Cb 的 React JS 中出现错误从未调用过!错误并尝试了互联网上所有可用的解决方案,但没有奏效
- css - 无论使用哪种移动设备,我该如何管理,至少有 2 张图像彼此相邻?
- android - 更改已编译共享库的导出函数名称
- jenkins - Jenkins 中的卷曲用法
- reactjs - 如何在突变和重新获取期间显示微调器?
- reactjs - 使用 React js 和 Firebase 进行表单验证
- flutter - 使用 setState 时流分析不起作用
- java - 当具有属性子集的对象访问项目时,DynamoDB 返回的对象类型是什么?