微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Flutter - 带有 MaskTextInputFormatter 的 TextField - 退格键删除所有字符而不是 1 个字符

如何解决Flutter - 带有 MaskTextInputFormatter 的 TextField - 退格键删除所有字符而不是 1 个字符

我正在尝试学习如何通过 MaskTextInputFormatter 正确使用 TextField。我还使用 控制器 为其设置初始值。但是当用户按下退格键时,所有文本都会被删除,而不仅仅是 1 个字符。

有人知道如何正确设置吗?我还尝试通过控制器更改“选择”属性,但没有任何改变。

有状态

// 将初始文本设置到 TextField 中

class _Errosstate extends State<Erros> 

{
var valorController = TextEditingController(
text: "(91) 12345-1234");

// __________________________________________________

// 无状态

class CadastroTelefonePage extends StatelessWidget {

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',home: Scaffold(
        body: 

TextField(
controller: _Errosstate().valorController,inputFormatters: [MaskTextInputFormatter(

mask: '(##) #####-####',filter: {"#": RegExp(r'[0-9 ]')})
],onChanged: (text) {
                    _Errosstate.input = text;
                  },obscureText: false,decoration: Inputdecoration(
                    border: OutlineInputBorder(),labelText: '(XX) XXXXX-XXXX',),

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。