首页 > 解决方案 > TextField 的 obscureText 选项问题

问题描述

我正在使用自定义 TextField 小部件,当我将其与 obscureText 一起使用时,true它会跳过一帧。如果我通过了false它就不会发生。基本上,如果obscureText通过不同的小部件进行更改,它会做这件奇怪的事情。这是该问题的一个示例:

https://media.giphy.com/media/zbqxBPA0lyVdkXWzeY/giphy.gif

小部件代码:

return TextField(
      controller: controller,
      onChanged: onChanged,
      obscureText: obscureText,
      cursorColor: Global.primaryColor,
      style: TextStyle(
        color: Global.primaryColor,
        fontSize: 14.0,
      ),
      decoration: InputDecoration(
          labelStyle: TextStyle(color: Global.primaryColor),
          focusColor: Global.primaryColor,
          filled: true,
          enabledBorder: UnderlineInputBorder(
            borderRadius: BorderRadius.circular(10),
            borderSide: BorderSide(color: Global.white),
          ),
          focusedBorder: OutlineInputBorder(
            borderRadius: BorderRadius.circular(10),
            borderSide: BorderSide(color: Global.primaryColor),
          ),
          labelText: labelText,
          prefixIcon: Icon(
            prefixIconData,
            size: 18,
            color: Global.primaryColor,
          ),
          suffixIcon: GestureDetector(
            onTap: () {
              //model.isVisible = !model.isVisible;
            },
            child: Icon(
              suffixIconData,
              size: 18,
              color: Global.primaryColor,
            ),
          )),
    );

标签: flutter

解决方案


我实际上找到了发生这种情况的原因:

使用obscureText键盘时没有单词建议enabled,因此解决方法是通过使用禁用它autocorrect: false


推荐阅读