OC textField键盘弹起事件
2016-06-07 18:06
417 查看
OC textField键盘弹起事件
经常用到点击textFiled时弹起键盘,然后 textField工具条也要随之上升,自己做了个简单的例子1. 监听键盘弹起收回事件
//监听键盘弹出事件 [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWillShow:) name:UIKeyboardWillShowNotification object:nil]; //监听键盘隐藏事件 [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWillHide:) name:UIKeyboardWillHideNotification object:nil];
2. 实现对应方法
获取键盘的高度时一定要用* objectForKey:UIKeyboardFrameEndUserInfoKey*,切记#pragma mark - 键盘即将弹出事件处理 - (void)keyboardWillShow:(NSNotification *)notification { //获取键盘信息 NSDictionary *keyBoardInfo = [notification userInfo]; //获取动画时间 CGFloat duration = [[keyBoardInfo objectForKey:UIKeyboardAnimationDurationUserInfoKey] floatValue]; //获取键盘的frame信息 NSValue *value = [keyBoardInfo objectForKey:UIKeyboardFrameEndUserInfoKey]; CGSize keyboardSize = [value CGRectValue].size; [UIView animateWithDuration:duration animations:^{ CGRect frame = _chatBar.frame; frame.origin.y = SCREENHEIGHT - keyboardSize.height - frame.size.height; _chatBar.frame = frame; } completion:nil]; } #pragma mark - 键盘即将隐藏事件 - (void)keyboardWillHide:(NSNotification *)notification { //获取键盘信息 NSDictionary *keyBoardInfo = [notification userInfo]; //获取动画时间 CGFloat duration = [[keyBoardInfo objectForKey:UIKeyboardAnimationDurationUserInfoKey] floatValue]; //获取键盘的frame信息 [UIView animateWithDuration:duration animations:^{ CGRect frame = _chatBar.frame; frame.origin.y = SCREENHEIGHT - _chatBar.height; _chatBar.frame = frame; } completion:nil]; }
相关文章推荐
- extjs form textfield的隐藏方法
- IOS textField限制字节长度
- extjs的textfield禁止输入某些字符
- 关于UITextField一些用法
- GUI 图形化用户界面 监听机制
- textfield详解 (转)
- TextField关键字
- iOS textField详细解析(转)
- ext文本框TextField的处理事件
- UITextField的文本特征属性
- 设置键盘Return Key点击不可用
- 设置TextField的圆角效果
- 设置TextField的圆角效果
- TextField知多少
- debug - UITextField 控制输入长度
- 请输入标题 请输入文本内容
- ViewController 删除 添加 输入
- iOS Newbie - Xcode 7 & iOS 9 UITextField & UITextView
- 一招解决全局键盘遮挡输入框问题
- UITextField属性大全