Flutter 颤振文本表单字段向错误文本添加填充
我有这样的表单元素Flutter 颤振文本表单字段向错误文本添加填充,flutter,Flutter,我有这样的表单元素 错误消息的堆栈如下所示 有没有办法在错误文本周围添加小填充? 这是小部件 Card( color: Colors.white.withOpacity(0.9), shadowColor: Colors.grey.withOpacity(0.2), elevation: 15,
错误消息的堆栈如下所示
有没有办法在错误文本周围添加小填充? 这是小部件
Card(
color: Colors.white.withOpacity(0.9),
shadowColor: Colors.grey.withOpacity(0.2),
elevation: 15,
child: TextFormField(
style: TextStyle(
fontSize: _screenFontSize,
),
decoration: InputDecoration(
border: InputBorder.none,
prefixIcon: Icon(
Icons.email_outlined,
color: Colors.grey,
),
hintText: "example@website.com",
labelText: "EMAIL",
labelStyle: TextStyle(color: Colors.grey)),
keyboardType: TextInputType.emailAddress,
// The validator receives the text that the user has entered.
validator: (value) {
if (value == null ||
value.isEmpty ||
!value.contains('@') ||
!value.contains('.')) {
return 'Please enter a valid Email';
}
return null;
},
),
),
更新: 如果你对黑客方法很在行,就用下面的错误字符串
return ' Please enter a valid Email\n';
实际解释: 根据当前的实施,这在
flatter
中是不可能的
说明:
如果您检查TextFormField
的源代码并找到负责呈现错误字符串的小部件
,您将看到以下文件
flutter/lib/src/material/input_decorator.dart
现在,如果您检查它如何呈现错误消息
if (widget.errorText != null) {
return Stack(
children: <Widget>[
Opacity(
opacity: 1.0 - _controller.value,
child: _helper,
),
_buildError(),
],
);
}
现在,如果您注意到正在构建的实际文本
小部件,您将发现它被包装在不透明
和分馏翻译
中
现在,分馏翻译
可能允许我们稍微改变文本
小部件的位置,但是如果您注意到,翻译
是硬编码的,可以在之间设置动画,因此不允许通过任何属性进行更改
不幸的是,这是不可能的。更新:
如果你对黑客方法很在行,就用下面的错误字符串
return ' Please enter a valid Email\n';
实际解释:
根据当前的实施,这在flatter
中是不可能的
说明:
如果您检查TextFormField
的源代码并找到负责呈现错误字符串的小部件
,您将看到以下文件
flutter/lib/src/material/input_decorator.dart
现在,如果您检查它如何呈现错误消息
if (widget.errorText != null) {
return Stack(
children: <Widget>[
Opacity(
opacity: 1.0 - _controller.value,
child: _helper,
),
_buildError(),
],
);
}
现在,如果您注意到正在构建的实际文本
小部件,您将发现它被包装在不透明
和分馏翻译
中
现在,分馏翻译
可能允许我们稍微改变文本
小部件的位置,但是如果您注意到,翻译
是硬编码的,可以在之间设置动画,因此不允许通过任何属性进行更改
不幸的是,这是不可能的。可能是我必须做一个自定义错误。谢谢你的回答我很高兴能帮上忙。我在回答中还添加了一种处理此问题的方法。看看,哦。可能是我必须做一个自定义错误。谢谢你的回答我很高兴能帮上忙。我在回答中还添加了一种处理此问题的方法。过来看。