您的位置:首页 > 其它

动态获取键盘高度

2015-09-09 17:24 330 查看
动态获取键盘高度:

//需要手动调用 registerForKeyboardNotifications 方法,其他两个会自动调用,弹出的键盘高 216(输入英文时候),ios 5 系统的

@implementation ViewController

- (void)viewDidLoad

{

[super viewDidLoad];

[self registerForKeyboardNotifications];

UITextView *tv = [[UITextView alloc] initWithFrame:CGRectMake(100, 100, 100, 50)];

[self.view addSubview:tv];

[tv release];

}

- (void) registerForKeyboardNotifications

{

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWasShown:) name:UIKeyboardDidShowNotification object:nil];

[[NSNotificationCenter defaultCenter]  addObserver:self selector:@selector(keyboardWasHidden:) name:UIKeyboardDidHideNotification object:nil];

}

- (void) keyboardWasShown:(NSNotification *) notif

{

NSDictionary *info = [notif userInfo];

NSValue *value = [info objectForKey:UIKeyboardFrameBeginUserInfoKey];

CGSize keyboardSize = [value CGRectValue].size;

NSLog(@"keyBoard:%f", keyboardSize.height);  //216

///keyboardWasShown = YES;

}

- (void) keyboardWasHidden:(NSNotification *) notif

{

NSDictionary *info = [notif userInfo];

NSValue *value = [info objectForKey:UIKeyboardFrameBeginUserInfoKey];

CGSize keyboardSize = [value CGRectValue].size;

NSLog(@"keyboardWasHidden keyBoard:%f", keyboardSize.height);

// keyboardWasShown = NO;

}

- (void)didReceiveMemoryWarning

{

[super didReceiveMemoryWarning];

// Dispose of any resources that can be recreated.

}

@end
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: