ios 键盘遮挡输入框解决方法

原创 2015年11月20日 14:51:05

- (void)viewDidLoad {

    [super viewDidLoad];

    // Do any additional setup after loading the view, typically from a nib.

    //注册键盘弹起与收起通知

    [[NSNotificationCenter defaultCenteraddObserver:self

                                             selector:@selector(keyboardWillShow:)

                                                 name:UIKeyboardWillShowNotification

                                               object:nil];

    

}

-(void)keyboardWillShow:(NSNotification *)note

{

    NSDictionary *info = [note userInfo];

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

    _keyBoardHeight = keyboardSize.height;

    

    

    CGRect frame = _userNameTextfield.frame;

    int offset = frame.origin.y + 32 - (self.view.frame.size.height -_keyBoardHeight);

    NSTimeInterval animationDuration = 0.30f;

    [UIView beginAnimations:@"ResizeForKeyboard" context:nil];

    [UIView setAnimationDuration:animationDuration];

        //将视图的Y坐标向上移动offset个单位,以使下面腾出地方用于软键盘的显示

    if(offset > 0)

        self.view.frame = CGRectMake(0.0f, -offset, self.view.frame.size.width,self.view.frame.size.height);

    [UIView commitAnimations];

}  

//当用户按下return键或者按回车键,keyboard消失

-(BOOL)textFieldShouldReturn:(UITextField *)textField

{

    [textField resignFirstResponder];

    return YES;

}

//输入框编辑完成以后,将视图恢复到原始状态

-(void)textFieldDidEndEditing:(UITextField *)textField

{

    NSTimeInterval animationDuration = 0.30f;

    [UIView beginAnimations:@"ResizeForKeyboard" context:nil];

    [UIView setAnimationDuration:animationDuration];

    self.view.frame =CGRectMake(00self.view.frame.size.widthself.view.frame.size.height);

    [UIView commitAnimations];

}


版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

iOS之键盘挡住输入框的解决方法

看过很多解决此类问题的方法,感觉都很棒,我这里做个简单的总结和推荐方法。 输入框是继承UITextFiled的控件,他有两个代理方法,能够解决上述问题,并且很简单,很适用,是本人极力推荐的方法。 ...

iOS解决键盘弹出遮挡输入框问题

1、错误:                 键盘遮挡输入框最常见的可能就是在登录界面了,无论有多少个textFiled,不论是在VC的任何位置。都有可能造成键盘弹出来时,把输入框挡住了。...

IOS中输入框被软键盘遮挡的解决办法

做IOS开发时,难免会遇到输入框被键盘遮掩的问题。上网上搜索了很多相关的解决方案,看了很多,但是由衷的觉得太麻烦了。有的解决方案是将视图上的所有的东西都添加到一个滚动视图对象( UIScrollVie...

IOS中输入框被软键盘遮挡的解决办法

做IOS开发时,难免会遇到输入框被键盘遮掩的问题。上网上搜索了很多相关的解决方案,看了很多,但是由衷的觉得太麻烦了。     有的解决方案是将视图上的所有的东西都添加到一个滚动视图对象( UIS...

IOS中输入框被软键盘遮挡的解决办法

做IOS开发时,难免会遇到输入框被键盘遮掩的问题。上网上搜索了很多相关的解决方案,看了很多,但是由衷的觉得太麻烦了。     有的解决方案是将视图上的所有的东西都添加到一个滚动视图对象( UIScr...

IOS中输入框被软键盘遮挡的解决办法

做IOS开发时,难免会遇到输入框被键盘遮掩的问题。上网上搜索了很多相关的解决方案,看了很多,但是由衷的觉得太麻烦了。     有的解决方案是将视图上的所有的东西都添加到一个滚动视图对象( UIScr...
  • enuola
  • enuola
  • 2012-08-28 18:30
  • 45097

ios解决软键盘遮挡输入框问题

//尝试了好长时间,终于测试搞定!这里screenHeight,textFieldFromButtomHeigth需要具体情况具体分析,和视图布局有关 //解决因屏幕旋转而产生的问题。这下无论竖屏还...

关于手机端IOS系统微信中虚拟键盘遮挡input输入框问题的解决方案

手机端IOS系统微信中虚拟键盘遮挡input输入框问题解决方案

手机输入法遮挡输入框解决方法

一、参考资料 RunJs:http://runjs.cn/code/pigebxdj 二、HTML keyboard <meta name="viewport" ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)