如何在TextFormField的hintText中添加图标

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在TextFormField的hintText中添加图标相关的知识,希望对你有一定的参考价值。

我想将Icon添加到TextFormField的hintText字段中。我已经读过有关prefixIcons和SuffixIcons的信息,但它们会永久添加图标。我希望将Icon作为hintText,以便当用户单击时,它像hintText一样消失。如何在颤抖中实现此目的

答案

您无法使用TextFormField的属性来实现,但是您可以基于Field的控制器来更改Icon的可见性:

bool isVisible = true;
TextEditingController controller = TextEditingController();

@override
Widget build(BuildContext context) {
  return Scaffold(
    body: Center(
      child: TextFormField(
        controller: controller,
        onChanged: (text){
          setState(() {
            controller.text.isEmpty ? isVisible = true : isVisible = false;
          });
        },
        decoration: InputDecoration(
          hintText: 'hintText',
          prefixIcon: Visibility(
            visible: isVisible,
            child: Icon(Icons.person, color: Colors.grey,),
          ),
        ),
      ),
    ),
  );
}

@override
void dispose() {
  controller.dispose();
  super.dispose();
}

以上是关于如何在TextFormField的hintText中添加图标的主要内容,如果未能解决你的问题,请参考以下文章

在 Web 上,如何控制自动显示在焦点 TextFormField 上的可见性图标,该 TextFormField 的 obscureText 属性设置为 true?

如何重置 TextFormField 中的错误消息?

如何获取TextFormField的高度

如何在TextFormField下方的errorText中添加图标?

如何在 Flutter 中的 TextFormField 标签中添加红色星号

如何在textformfield onchange值上修剪文本