ios-键盘回收

对输入的UITextField 控件设置完代理,然后粘上两种方法,即可。

#pragma mark- 键盘收回

-(void)textFieldDidEndEditing:(UITextField *)textField{

 

    [self.recordView.phoneTextField resignFirstResponder];

    [self.recordView.passWordTextField resignFirstResponder];

 

    NSTimeInterval animationDuration = 0.0f;

    [UIView beginAnimations:@"ResizeForKeyboard" context:nil];

    [UIView setAnimationDuration:animationDuration];

    CGRect rect = CGRectMake(self.view.frame.origin.x, (sysio7 ? 64 : 0), self.view.frame.size.width, self.view.frame.size.height);

    self.view.frame = rect;

    [UIView commitAnimations];

}

 

#pragma mark- 键盘弹起

- (void)textFieldDidBeginEditing:(UITextField *)textField {

    NSTimeInterval animationDuration = 0.0f;

    [UIView beginAnimations:@"ResizeForKeyBoard" context:nil];

    [UIView setAnimationDuration:animationDuration];

    float offset = textField.frame.origin.y + textField.frame.size.height + self.view.frame.origin.y - (sysio7 ? 64 : 0) + 255 - self.view.frame.size.height+230;

    if (offset > 0) {

        CGRect rect = CGRectMake(self.view.frame.origin.x, self.view.frame.origin.y - offset, self.view.frame.size.width, self.view.frame.size.height);

        self.view.frame = rect;

    }

    [UIView commitAnimations];

}
原文地址:https://www.cnblogs.com/xm5mao/p/4023884.html