//監聽鍵盤
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWillShow:) name:UIKeyboardWillShowNotification object:nil];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWillHide:) name:UIKeyboardWillHideNotification object:nil];
//移除消息監聽
[[NSNotificationCenter defaultCenter] removeObserver:self name:UIKeyboardWillShowNotification object:nil];
[[NSNotificationCenter defaultCenter] removeObserver:self name:UIKeyboardWillHideNotification object:nil];
- (void)keyboardWillShow:(NSNotification *)noti
{
//鍵盤尺寸
NSValue *frameValue = [noti.userInfo objectForKey:UIKeyboardFrameEndUserInfoKey];
CGRect frameRect = [frameValue CGRectValue];
//動畫時間
NSValue *durationValue = [noti.userInfo objectForKey:UIKeyboardAnimationDurationUserInfoKey];
NSTimeInterval animationDuration;
[durationValue getValue:&animationDuration];
NSLog(@"鍵盤出現%@-----%f", NSStringFromCGRect(frameRect), animationDuration);
[_personV updateInputViewFrameWithKeyboardRect:frameRect animationDuration:animationDuration];
}
- (void)keyboardWillHide:(NSNotification *)noti
{
NSValue *frameValue = [noti.userInfo objectForKey:UIKeyboardFrameEndUserInfoKey];
CGRect frameRect = [frameValue CGRectValue];
NSValue *durationValue = [noti.userInfo objectForKey:UIKeyboardAnimationDurationUserInfoKey];
NSTimeInterval animationDuration;
[durationValue getValue:&animationDuration];
NSLog(@"鍵盤消失%@-----%f", NSStringFromCGRect(frameRect), animationDuration);
[_personV updateInputViewFrameWithKeyboardRect:frameRect animationDuration:animationDuration];
}