1.监听键盘弹出的通知,调用改变输入框位置的方法
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWillChange:) name:UIKeyboardWillChangeFrameNotification object:nil];
2.实现改变输入框位置的方法
- (void)keyboardWillChange:(NSNotification *)note{
// 获得键盘的frameCGRect keyBoardFrame = [note.userInfo[UIKeyboardFrameEndUserInfoKey] CGRectValue];
CGRect newTextViewFrame = self.frame;
// 修改输入框frame
newTextViewFrame.origin.y = keyBoardFrame.origin.y - self.frame.size.height;
// 执行动画
CGFloat duration = [note.userInfo[UIKeyboardAnimationDurationUserInfoKey] floatValue];
[UIView animateWithDuration:duration animations:^{
self.frame = newTextViewFrame;
}];
}