- 注册监听键盘事件的通知
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWillShow:) name:UIKeyboardWillShowNotification object:nil]; [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardShow:) name:UIKeyboardDidShowNotification object:nil]; [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWillHide:) name:UIKeyboardWillHideNotification object:nil]; [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardHide:) name:UIKeyboardDidHideNotification object:nil];
- 在键盘将要出现和隐藏的回调中,加入动画。
- 监听键盘高度变化
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWasChange:) name:UIKeyboardDidChangeFrameNotification object:nil]; - (void)keyboardWasChange:(NSNotification *)aNotification { NSLog(@"Keyboard change"); NSString *str=[[UITextInputMode currentInputMode] primaryLanguage]; NSLog(@"shurufa--------------%@",str); // if ([str isEqualToString:@"zh-Hans"]) { // ReplayView.frame = CGRectMake(0, HEIGHT.height-216-125, 320, 45); // }else // { // ReplayView.frame = CGRectMake(0, HEIGHT.height-216-89, 320, 45); // // // } NSDictionary *info = [aNotification userInfo]; CGSize kbSize = [[info objectForKey:UIKeyboardFrameEndUserInfoKey] CGRectValue].size; // CGRect frame = self.search.frame; if (kbSize.height == 216) { NSLog(@"english"); ReplayView.frame = CGRectMake(0, HEIGHT.height-216-89, 320, 45); } else if(kbSize.height == 252){ NSLog(@"中文"); ReplayView.frame = CGRectMake(0, HEIGHT.height-216-125, 320, 45); } }