2016-03-16 键盘的弹出与收起

1:通知

 [[NSNotificationCenter defaultCenter] addObserver:self

                                             selector:@selector(keyboardWasShown:)

                                                 name:UIKeyboardDidShowNotification object:nil];

    [[NSNotificationCenter defaultCenter] addObserver:self

                                             selector:@selector(keyboardWillBeHidden:)

                                                 name:UIKeyboardWillHideNotification object:nil];

2:方法:

//键盘显示,调整tableview的高度

- (void)keyboardWasShown:(NSNotification*)aNotification

{

   

    //获取通知传递过来的信息

    NSDictionary* info = [aNotification userInfo];

    //获取键盘的size

    CGSize kbSize = [[info objectForKey:UIKeyboardFrameEndUserInfoKey] CGRectValue].size;

    //得到UIEdgeInsets

    UIEdgeInsets contentInsets = UIEdgeInsetsMake(0.0, 0.0, kbSize.height, 0.0);

    

   

    

    //设置tableviewUIEdgeInsets

    self.tableView.contentInset = contentInsets;

    self.tableView.scrollIndicatorInsets = contentInsets;

    

    if (isYesName) {

        

        textFieldView.frame = CGRectMake(0, SCREEN_HEIGHT-kbSize.height-60-64, SCREEN_WIDTH, 60);

        

    }

    

}

 

//键盘收起,恢复tableviewUIEdgeInsets

- (void)keyboardWillBeHidden:(NSNotification*)aNotification

{

    

    UIEdgeInsets contentInsets = UIEdgeInsetsMake(0.0, 0.0,0.0 , 0.0);

    self.tableView.contentInset = contentInsets;

    self.tableView.scrollIndicatorInsets = contentInsets;

    

    

    if (isYesName) {

        

        textFieldView.frame = CGRectMake(0, SCREEN_HEIGHT-64, SCREEN_WIDTH, 60);

        

    }

    

   

}

posted @ 2016-03-16 14:10  zhen_zhen  阅读(180)  评论(0编辑  收藏  举报