iOS短信验证码控件,自动输入回调两次解决办法

2022-07-18  本文已影响0人  anny_4243

项目中的短信验证码输入使用了第三方控件,当收到短信之后点击验证码自动输入之后出现了执行两次回调方法的bug。

经排查问题出现在如下代码中:

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(textFieldDidChangeValue:) name:UITextFieldTextDidChangeNotification object:_textField];
-(void)textFieldDidChangeValue:(UITextField *)textField{

}

改为下面的代码之后bug消失:

[_textField addTarget:self action:@selector(valueChanged:) forControlEvents:UIControlEventEditingChanged];
-(void)valueChanged:(UITextField *)textField{
    UITextRange *selectedRange = textField.markedTextRange;//获取高亮部分
    if (selectedRange == nil || selectedRange.empty) {
        
    }else{
        return;
    }
}

参考链接:
https://blog.csdn.net/allanGold/article/details/93048978

上一篇下一篇

猜你喜欢

热点阅读