您的位置:首页 > 其它

系统通知中心 键盘的高度 在底部 随着键盘的高度 上升 输入框 在键盘的上面

2016-02-28 19:20 260 查看
#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
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: