这是代码。我要删除文本下方的黑色下划线,当前TextField处于编辑模式
TextField(
autofocus: true,
decoration: InputDecoration.collapsed(
hintText: "Search",
border: InputBorder.none,
),
maxLines: 1,
)
更新
有关说明,请参见不朽杜德的最后评论
答案 0 :(得分:9)
尝试将TextStyle赋予TextField小部件。您的TextField正在获取默认主题的TextStyle。
TextField(
autofocus: true,
style: TextStyle(color: Colors.white, fontSize: 30),
decoration: InputDecoration.collapsed(
hintText: "Search",
border: InputBorder.none,
),
maxLines: 1,
)
在TextField小部件的源代码中,它指出:
/// If null, defaults to the `subhead` text style from the current [Theme].
final TextStyle style;
答案 1 :(得分:6)
您应该在TextDecoration.none
属性中使用decoration
。
Text(
'your txt',
style: TextStyle( decoration: TextDecoration.none),
)
答案 2 :(得分:2)
我怀疑这与预测文本有关。当您按空格键结束正在输入的单词时,下划线消失;当您开始输入下一个单词时,它们会再次出现。按照建议 here,尝试设置 TextInputType.visiblePassword; - 这对我有用。
答案 3 :(得分:0)
如https://stackoverflow.com/a/57499189/445887
中所述这是可访问性功能(如果您在TextStyle
中禁用下划线后仍然看到下划线)。
答案 4 :(得分:0)
只需编码...
[
{
"id": 2,
"subcategoryType": "Mobile"
},
{
"id": 3,
"subcategoryType": "Tablet"
},
{
"id": 4,
"subcategoryType": "HardDisk"
}
]
答案 5 :(得分:-1)
您必须添加一个“ decoration:TextDecoration.none”,如下所示:
Text(
"Don't forget",
style: TextStyle(
decoration: TextDecoration.none
)
)
答案 6 :(得分:-3)
@Immortal Dude 是正确的,这不是文本字段的问题。因为当您在文本字段中键入内容后单击其他位置时,下划线会自动从文本中删除。
您只需要设置键盘类型:
keyboardType: TextInputType.visiblePassword,