//监听当键盘将要出现时
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(keyboardWillShow:)
name:UIKeyboardWillShowNotification
object:nil];
//监听当键将要退出时
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(keyboardWillHide:)
name:UIKeyboardWillHideNotification
object:nil];
//当键盘出现
- (void)keyboardWillShow:(NSNotification*)notification
{
//获取键盘的高度
NSDictionary*userInfo = [notificationuserInfo];
NSValue *value = [userInfo objectForKey:UIKeyboardFrameEndUserInfoKey];
// 1,取出键盘动画的时间
CGFloat duration = [userInfo[UIKeyboardAnimationDurationUserInfoKey] doubleValue];
CGRectkeyboardRect = [valueCGRectValue];
intheight = keyboardRect.size.height;
[UIView animateWithDuration:duration animations:^{
self.bottomBar.frame = CGRectMake(0, BAScreenHeight -TABBARHEIGHT-height+2, BAScreenWidth, TABBARHEIGHT-2);
}];
}
//当键退出
- (void)keyboardWillHide:(NSNotification*)notification
{
//获取键盘的高度
NSDictionary*userInfo = [notificationuserInfo];
NSValue *value = [userInfo objectForKey:UIKeyboardFrameEndUserInfoKey];
CGRectkeyboardRect = [valueCGRectValue];
CGFloat duration = [userInfo[UIKeyboardAnimationDurationUserInfoKey] doubleValue];
intheight = keyboardRect.size.height;
[UIView animateWithDuration:duration animations:^{
self.bottomBar.frame = CGRectMake(0, BAScreenHeight -TABBARHEIGHT, BAScreenWidth, TABBARHEIGHT-2);
}];
}
网友评论