#import "ViewController.h"
@interface ViewController ()<UITextFieldDelegate>
{
UITextField *textfiled;
}
@end
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
1. UIKIT_EXTERNNSString *const UIKeyboardWillShowNotification;//键盘将要显示的时候
2. UIKIT_EXTERN NSString *constUIKeyboardDidShowNotification;//键盘显示完成的时候
3. UIKIT_EXTERN NSString *constUIKeyboardWillHideNotification;,//键盘将要隐藏
UIKIT_EXTERN NSString *const UIKeyboardDidHideNotification;
//键盘在显示 消失 的时候 都会发送两个通知(即将已经)
// UIKeyboardWillShowNotification 即将显示的时候显示通知的名字
[[NSNotificationCenter defaultCenter]addObserver:self selector:@selector(keyBordAction:) name:UIKeyboardWillShowNotification object:nil];
//通知 隐藏键盘
[[NSNotificationCenter defaultCenter]addObserver:self selector:@selector(keyBordAction:) name:UIKeyboardWillHideNotification object:nil];
textfiled = [[UITextField alloc]initWithFrame:CGRectMake(10, 686, 400, 50)];
textfiled.borderStyle = UITextBorderStyleRoundedRect;
textfiled.delegate= self;
[self.view addSubview:textfiled];
}
- (void)keyBordAction:(NSNotification*)not{
NSLog(@"%@",not.userInfo);
NSDictionary *dic = not.userInfo;
NSLog(@"%@",dic[UIKeyboardFrameEndUserInfoKey]);
//fram是 cgrect 类型(结构体)字典取出来的内容是id 类型-》CGRect(结构体)
CGRect fram =[dic[UIKeyboardFrameEndUserInfoKey]CGRectValue];
//获得 键盘起点的 y 的高度
CGFloat y = CGRectGetMinY(fram);
textfiled.frame= CGRectMake(10,y-50, 400,50);
}
- (BOOL)textFieldShouldReturn:(UITextField *)textField{
[textField resignFirstResponder];
return YES;
}
@end