美文网首页
IQKeyboardManager 多次调用textFieldS

IQKeyboardManager 多次调用textFieldS

作者: Summer_YJL | 来源:发表于2017-09-04 14:50 被阅读0次

在集成了IQKeyboard之后,就会有一个问题,当一个页面有多个textField之后,点击任意一个textfield,IQKeyboard都会强制执行textFieldShouldBeginEditing这个代理方法,而且是多次执行,执行的次数取决于你有多少个textfield添加了delegate。所以就会出现一个很尴尬的情况:
我第二个textfield有一个点击事件,添加代理,放在代理方法内判断执行,但是第一个textfield并没有添加代理,当我点击第一个textfield的时候,就会强制执行shouldBegin这个方法,方法的参数是添加带来的第二个textfield

- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField {
      if (textField == myTextField1) {
           if (textField.isAskingCanBecomeFirstResponder == NO) {
                NSLog(@"do something...");
           }
           return NO;
      }else if (textField == myTextField2) {
           if (textField.isAskingCanBecomeFirstResponder == NO) {
                 NSLog(@"do another something...");
           }
           return NO;
      }else {
          return YES;
      }
 }

相关文章

网友评论

      本文标题:IQKeyboardManager 多次调用textFieldS

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