动态获取键盘高度:
//需要手动调用 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
本文介绍了一种在iOS应用中动态获取键盘高度的方法。通过监听键盘显示和隐藏的通知,可以捕获到键盘的高度信息(例如,在iOS 5系统中英文输入时键盘高度为216)。这种方法有助于改善用户体验,特别是在文本输入频繁的应用场景中。
3732

被折叠的 条评论
为什么被折叠?



