美文网首页
解决flutter iOS验证码自动填充时被复制两遍的问题

解决flutter iOS验证码自动填充时被复制两遍的问题

作者: Shineyok | 来源:发表于2020-10-15 16:55 被阅读0次
  • 1、定义私有变量_controller和_codeText
TextEditingController _controller = TextEditingController();
 String _codeText = '';
  • 2、TextField处理,例如
child: TextField(
     controller: _controller,
     onChanged: (value) {
      if (_controller.value.composing == TextRange.empty  || _controller.value.composing == null) { 
           if ('$_codeText$_codeText' == value) {
             ///这里是自动填充时第二次调用onChanged方法的判断,此处value是重复验证码
             return;
           }else{
              ///这里就是正常输入时调用onChanged方法的判断
           }
         }else{
       ///这里是自动填充时第一次调用onChanged方法的判断,此处value是正确的验证码
               _codeText = value;
        }
     },
)

这里是自己琢磨的一个解决方案,如有更好方案欢迎留言讨论。
emmmmmmm...不要说设定最大位数,说不定哪天后台验证码位数变化怎么办,总不能因为这个发个版.....

相关文章

网友评论

      本文标题:解决flutter iOS验证码自动填充时被复制两遍的问题

      本文链接:https://www.haomeiwen.com/subject/ynropktx.html