美文网首页
如何防止输入框被弹出虚拟键盘覆盖方法

如何防止输入框被弹出虚拟键盘覆盖方法

作者: 若水V_V | 来源:发表于2015-12-02 16:44 被阅读290次

1、添加键盘高度变化监听事件

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyBoardHeightChange:) name:UIKeyboardWillChangeFrameNotification object:nil];

其中,name参数就是设置监听状态。

2、实现selector方法

- (void)keyBoardHeightChange:(NSNotification*)notification
{
  //获取用户信息字典
NSDictionary* info = [notification userInfo];
//获取高度方法
NSValue* value = [info objectForKey:@"UIKeyboardBoundsUserInfoKey"];
CGSize keyBoardSize = [value CGRectValue].size;
CGFloat keyBoardHeight = keyBoardSize.height;    //高度
/*以下可以根据高度调整输入框控件(一般放在一个视图里面,调整视图位置即可)的位置*/
 自己添加的代码。
} 

3、虚拟键盘消失后,想让改变位置的控件回到原来的位置,可以通过以下方法。

//响应输入键盘消失事件
UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(keyboardHide:)];
[self.view addGestureRecognizer:tap];
 //实现键盘消失事件并处理控件位置
- (void)keyboardHide:(id)sender {
[inputComment resignFirstResponder];//输入框
writeView.frame = CGRectMake(0, self.view2.frame.size.height - 50, DEVW, 50);//视图位置改变。

}

相关文章

网友评论

      本文标题:如何防止输入框被弹出虚拟键盘覆盖方法

      本文链接:https://www.haomeiwen.com/subject/hbtshttx.html