iOS——UIKeyboardWillShowNotification 监听键盘高度变化
- (void)viewDidLoad {
[super viewDidLoad];
UITextField *textField = [[UITextField alloc]initWithFrame:CGRectMake(100, 100, 100, 50)];
textField.backgroundColor = [UIColor blueColor];
[self.view addSubview:textField];
//出现键盘
[[NSNotificationCenter defaultCenter]addObserver:self selector:@selector(keyboardWillShow:) name:UIKeyboardWillShowNotification object:nil];
//键盘隐藏
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(keyboardWillHidden:)
name:UIKeyboardWillHideNotification
object:self.view.window];
};
-(void)keyboardWillShow:(NSNotification*)notification{
NSDictionary*info=[notification userInfo];
CGSize kbSize=[[info objectForKey:UIKeyboardFrameEndUserInfoKey]CGRectValue].size;
NSLog(@"keyboard changed, keyboard width = %f, height = %f",
kbSize.width,kbSize.height);
//在这里调整UI位置
}
//键盘将要消失
-(void)keyboardWillHidden:(NSNotification*)notification
{
NSDictionary*info=[notification userInfo];
CGSize kbSize=[[info objectForKey:UIKeyboardFrameEndUserInfoKey]CGRectValue].size;
NSLog(@"keyboard changed, keyboard width = %f, height = %f",
kbSize.width,kbSize.height);
}