ios开发之--键盘的监听

时间:2022-08-26 14:59:17

监听键盘的弹出,让整个页面向上移动,比较简单,仅做记录使用:

代码如下:

 // 监听键盘
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWillShowAction:) name:UIKeyboardWillShowNotification object:nil]; [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWillHideAction:) name:UIKeyboardWillHideNotification object:nil];

键盘处理:

#pragma mark - 键盘处理

/**
* 键盘即将隐藏
*/
- (void)keyboardWillHideAction:(NSNotification *)note
{ // 1.键盘弹出需要的时间
CGFloat duration = [note.userInfo[UIKeyboardAnimationDurationUserInfoKey] doubleValue]; // 2.动画
[UIView animateWithDuration:duration animations:^{
self.view.transform = CGAffineTransformIdentity;
}];
} /**
* 键盘即将弹出
*/
- (void)keyboardWillShowAction:(NSNotification *)note
{ // 1.键盘弹出需要的时间
CGFloat duration = [note.userInfo[UIKeyboardAnimationDurationUserInfoKey] doubleValue]; // 2.动画
[UIView animateWithDuration:duration animations:^{
// 取出键盘高度
CGRect keyboardF = [note.userInfo[UIKeyboardFrameEndUserInfoKey] CGRectValue];
CGFloat keyboardH = keyboardF.size.height - ;
if (_ThreeInch) {
self.view.transform = CGAffineTransformMakeTranslation(, - keyboardH);
} else {
self.view.transform = CGAffineTransformMakeTranslation(, - );
}
}];
}