iOS输入框自适应键盘高度,避免遮挡

//注册通知

- (void)regNotification

{

    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWillChangeFrame:) name:UIKeyboardWillChangeFrameNotification object:nil];

}


- (void)unregNotification

{

    [[NSNotificationCenter defaultCenter] removeObserver:self name:UIKeyboardWillChangeFrameNotification object:nil];

}


#pragma mark - notification handler

- (void)keyboardWillChangeFrame:(NSNotification *)notification

{

    NSDictionary *info = [notification userInfo];

    CGFloat duration = [[info objectForKey:UIKeyboardAnimationDurationUserInfoKey] floatValue];

    CGRect beginKeyboardRect = [[info objectForKey:UIKeyboardFrameBeginUserInfoKey] CGRectValue];

    CGRect endKeyboardRect = [[info objectForKey:UIKeyboardFrameEndUserInfoKey] CGRectValue];

    

    CGFloat yOffset = endKeyboardRect.origin.y - beginKeyboardRect.origin.y;

    

    CGRect inputFieldRect = self.TextField.frame;

    CGRect moreBtnRect = self.moreTypeBtn.frame;

    

    inputFieldRect.origin.y += yOffset;

    moreBtnRect.origin.y += yOffset;

    

    [UIView animateWithDuration:duration animations:^{

        self.inputTextField.frame = inputFieldRect;

        self.moreInputTypeBtn.frame = moreBtnRect;

    }];

}


你可能感兴趣的:(键盘,iOS输入框避免遮挡,iOS输入框自适应键盘高度,输入框避免遮挡,iOS输入框自适应键盘)