问题是当文本大于输入大小时,文本就会消失,我不知道为什么。
这是我的代码:
TextField(
focusNode: _focusEmailNode,
controller: _emailController,
decoration: InputDecoration(
border: OutlineInputBorder(),
enabledBorder: OutlineInputBorder(
borderSide: BorderSide(color: txtEmailBoder),
),
hintText: 'Email',
),
Run Code Online (Sandbox Code Playgroud)
小智 8
你需要添加
contentPadding: EdgeInsets.zero
Run Code Online (Sandbox Code Playgroud)
给你的InputDecoration
查了很多网站,终于找到了解决办法。您可以通过decoration and maxlines在文本字段中给出来解决此问题。isDense as true举例说明InputDecoration
:
Container(
height: 20,
width: 100,
child: TextFormField(
maxLines: 1,
decoration: InputDecoration(
isDense: true,
contentPadding: EdgeInsets.fromLTRB(5.0, 1.0, 5.0, 1.0),
),
onChanged: (value) {
print(value);
},
),
);
Run Code Online (Sandbox Code Playgroud)
如果您不提供内容填充,那么您的文本将从中间被剪切,如下所示。

提供填充时要小心,您应该根据文本字段的高度需要提供填充。如果您提供了错误的填充,那么您的文本也将不可见。
Widget build(BuildContext context) {
return Scaffold(
body: Container(
padding: EdgeInsets.fromLTRB(5.0, 50, 5.0, 10.0),
alignment: Alignment.center,
child: TextField(
decoration: InputDecoration(
border: OutlineInputBorder(),
enabledBorder: OutlineInputBorder(
borderSide: BorderSide(color: Colors.blueAccent),
),
hintText: 'Email',
),
)));
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1475 次 |
| 最近记录: |