键盘监听,高度获取

监听

-(void)viewWillAppear:(BOOL)animated{

[super viewWillAppear:animated]; 

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboarWillShow:) name:UIKeyboardWillShowNotification object:nil];

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWillBeHidden:) name:UIKeyboardWillHideNotification object:nil];

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboarWillShow:) name:UIKeyboardWillChangeFrameNotification object:nil];

}

-(void)viewWillDisappear:(BOOL)animated{

[super viewWillDisappear:animated];

[[NSNotificationCenter defaultCenter] removeObserver:self];

}

-(void)keyboarWillShow:(NSNotification*)obj{

//获取键盘的高度

NSDictionary *userInfo = [obj userInfo];

NSValue *aValue = [userInfo objectForKey:UIKeyboardFrameEndUserInfoKey];

CGRect keyboardRect = [aValue CGRectValue];

int height = keyboardRect.size.height;

// [UIView animateWithDuration:0.4f animations:^(){

// [m_ListView setFrame:CGRectMake(0, [Utility getNavBarHight], ScreenWidth, ScreenHeight - [Utility getNavBarHight] - height)];

// }];

//

// NSIndexPath *indexPath = nil;

// if (curEditTextField.tag == CreatView_Btn_Type) {

// indexPath = [NSIndexPath indexPathForRow:0 inSection:0];

// }

// else if (curEditTextField.tag == CreatView_Btn_owner) {

// indexPath = [NSIndexPath indexPathForRow:0 inSection:1];

// }

// else if (curEditTextField.tag == CreatView_Btn_Location) {

// indexPath = [NSIndexPath indexPathForRow:2 inSection:1];

// }

// else if (curEditTextField.tag == CreatView_Btn_maxPersonNum) {

// indexPath = [NSIndexPath indexPathForRow:3 inSection:1];

// }

//    else if (curEditTextField.tag == CreatView_Btn_Fee) {

// indexPath = [NSIndexPath indexPathForRow:4 inSection:1];

// }

// if (indexPath) {

// [m_ListView scrollToRowAtIndexPath:indexPath atScrollPosition:UITableViewScrollPositionNone animated:YES];

// }

}

-(void)keyboardWillBeHidden:(NSNotification*)obj{

// [UIView animateWithDuration:0.4f animations:^(){

// [m_ListView setFrame:CGRectMake(0, [Utility getNavBarHight], ScreenWidth, ScreenHeight - [Utility getNavBarHight])];

// }];

}

原文地址:https://www.cnblogs.com/ldc529/p/3862380.html