方法:通过通知监听键盘的动态

1.键盘的动态有四种:

 public static let UIKeyboardWillShow: NSNotification.Name

    public static let UIKeyboardDidShow: NSNotification.Name

    public static let UIKeyboardWillHide: NSNotification.Name

    public static let UIKeyboardDidHide: NSNotification.Name

2.下面监听下弹出之前,和回收之前的事件

//键盘弹起
@objc private func willShow(nottification:NSNotification){ let info:NSDictionary = nottification.userInfo as NSDictionary!
// print(info)
//通过输出看到下面的信息 /*
Optional([AnyHashable("UIKeyboardCenterBeginUserInfoKey"): NSPoint: {207, 849}, AnyHashable("UIKeyboardIsLocalUserInfoKey"): 1, AnyHashable("UIKeyboardCenterEndUserInfoKey"): NSPoint: {207, 623}, AnyHashable("UIKeyboardBoundsUserInfoKey"): NSRect: {{0, 0}, {414, 226}}, AnyHashable("UIKeyboardFrameEndUserInfoKey"): NSRect: {{0, 510}, {414, 226}}, AnyHashable("UIKeyboardAnimationCurveUserInfoKey"): 7, AnyHashable("UIKeyboardFrameBeginUserInfoKey"): NSRect: {{0, 736}, {414, 226}},

AnyHashable("UIKeyboardAnimationDurationUserInfoKey"): 0.25])
*/ //取出键盘的高度
let keyValue = info.object(forKey: "UIKeyboardFrameEndUserInfoKey")
let keyRect = (keyValue as AnyObject).cgRectValue
let height = keyRect?.size.height
print(height!) } //键盘收起
@objc private func willHide(nottification:NSNotification){ }

最新文章

  1. Vue.js 和 MVVM 小细节
  2. 【Hawk】高级教程——post参数采集万方医学网论文
  3. Win10 Migrate apps to the Universal Windows Platform (UWP)
  4. python中*args和**args的不同
  5. 从对SAE的一次授权安全评估浅谈云安全
  6. mahout中kmeans算法和Canopy算法实现原理
  7. IntelliJ IDEA常用快捷键
  8. HDU-1002(简单大数加法)
  9. Vs2010中rdlc报表绑定DataTable数据源
  10. 一封给“X教授”的回信(讨论Socket通信)
  11. PROCEDURE_监测系统_数据备份存储过程—备份原始数据,每十分钟一条,取平均值
  12. 协同过滤(CF)算法
  13. 深入浅出数据结构C语言版(6)——游标数组及其实现
  14. Java curator操作zookeeper获取kafka
  15. win10配置环境变量
  16. php扩展编译方法
  17. HDU1512 ZOJ2334 Monkey King 左偏树
  18. RN酷炫组件圆形加载
  19. SS、SP、BP寄存器
  20. ThinkPHP内置日志记录

热门文章

  1. gdb调试段错误及使用
  2. 基于EasyDarwin云平台实现的EasyClient客户端与EasyCamera摄像机之间的对讲与云台控制功能
  3. js 中常用的正则表达式
  4. React深入源码--了解Redux用法之Provider
  5. 代码空间项目 -- 获取当前时间之前的某一天-Calender类的使用
  6. html video api控件总结
  7. Gym - 100187A A - Potion of Immortality —— 贪心
  8. BluetoothLE-Multi-Library 一个能够连接多台蓝牙设备的库,它可以作为client端,也可以为server端。支持主机/从机,外围设备连接。
  9. Lucene小例子
  10. dyld: could not load inserted library '/Developer/usr/lib/libBacktraceRecording.dylib' because no suitable image found. Did find: