键盘基础
来源:互联网 发布:还有哪些办公软件 编辑:程序博客网 时间:2024/05/29 11:50
键盘
键盘处理在iOS开发中经常用到,尤其在经常性输入内容的应用中。
和键盘联系紧密的控件有:UITextfield、UITextView
。
键盘的监听通过通知来进行,监听的通知name如下:
//键盘将要出现UIKIT_EXTERN NSNotificationName const UIKeyboardWillShowNotification;//键盘出现UIKIT_EXTERN NSNotificationName const UIKeyboardDidShowNotification;//键盘将要隐藏UIKIT_EXTERN NSNotificationName const UIKeyboardWillHideNotification;//键盘隐藏UIKIT_EXTERN NSNotificationName const UIKeyboardDidHideNotification;//键盘将要改变frameUIKIT_EXTERN NSNotificationName const UIKeyboardWillChangeFrameNotification;//键盘改变frameUIKIT_EXTERN NSNotificationName const UIKeyboardDidChangeFrameNotification;
注册通知,传递NSNotification参数:
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardFrameChange:) name:UIKeyboardWillChangeFrameNotification object:nil];
监听通知:
在参数notification中存在一个字典userInfo,使用如下key获取通知字典内的内容:
//键盘的frameUIKIT_EXTERN NSString *const UIKeyboardFrameEndUserInfoKey; // NSValue of CGRect//键盘弹出的时间UIKIT_EXTERN NSString *const UIKeyboardAnimationDurationUserInfoKey; // NSNumber of double
在通知里获取键盘的frame和键盘弹出的时间
- (void)keyboardFrameChange:(NSNotification *)notification{ //键盘字典信息 NSDictionary *userInfo = notification.userInfo; //键盘frame CGRect keyboardFrame = [userInfo[UIKeyboardFrameEndUserInfoKey] CGRectValue]; //动画时间 CGFloat duration = [userInfo[UIKeyboardAnimationDurationUserInfoKey] doubleValue];}
键盘的弹出和消失,也可以注册两个通知来监听键盘的弹出和消失,不过在这两个方法中也是要取得键盘的frame。
可以直接监听键盘frame的改变,通过origin.y
就可以判断键盘的弹出和消失,这样通过一个方法就可解决。
0 0
- 键盘基础
- 键盘基础
- 键盘消息基础
- 键盘(键盘基础,按键消息)
- VC++基础 判断键盘消息
- 键盘钩子,游戏外挂基础
- 【java基础】键盘键入内容
- UI基础-01 隐藏键盘
- appium 基础之键盘处理
- appium 基础之键盘处理
- appium 基础之键盘处理
- appium 基础之键盘处理
- OpenGL键盘操作和动画基础
- IOS疯狂基础之隐藏系统键盘
- 【电子基础】矩阵键盘的读取
- UIInputViewController为基础的自定义键盘
- osgViewer应用基础之添加键盘事件
- javascript基础(键盘事件)(三十八)
- UML时序图总结
- c++ primer概念整理第四章 表达式
- javacc总结
- JAVA中创建对象的四种方式
- 下载android源码断后重新开始下载脚本
- 键盘基础
- ccf 2014.12 最优灌溉 裸最小生成树
- Python:ImportError大合集
- jQuery入门与使用
- 经典递归算法算法与排序算法
- CStringA、CStringW、string wstring之间转换
- Feature Pyramid Networks 文章阅读
- 二叉排序树的建立和遍历
- 北邮OJ-89. 统计时间间隔-13网研上机B