增加键盘显示和隐藏事件监听

NotificationCenter.default.addObserver(self, selector: #selector(keyboardWillShow(notification:)), name: UIResponder.keyboardWillShowNotification, object: nil)

NotificationCenter.default.addObserver(self, selector: #selector(keyboardWillHide(notification:)), name: UIResponder.keyboardWillHideNotification, object: nil)
@objc func keyboardWillShow(notification:Notification){
let userinfo:Dictionary = notification.userInfo!
let frame = (userinfo[UIResponder.keyboardFrameEndUserInfoKey] as! NSValue).cgRectValue
UIView.animate(withDuration: 0.4, animations: {
self.view.frame.origin.y = 0 - frame.height
})
} @objc func keyboardWillHide(notification:Notification){
UIView.animate(withDuration: 0.4, animations: {
self.view.frame.origin.y = 0
})
}

  删除事件监听

NotificationCenter.default.removeObserver(self, name: UIResponder.keyboardWillShowNotification, object: nil)
NotificationCenter.default.removeObserver(self, name: UIResponder.keyboardWillHideNotification, object: nil)

  

最新文章

  1. Replication的犄角旮旯(四)--关于事务复制的监控
  2. Nginx日志切割,以及脚本上传nginx的切割日志
  3. 简单OS(ucos超级精简版)——裸调度器【worldsing笔记】
  4. kafka 消息服务
  5. Unity3D-第一视角射击游戏
  6. HTML5 简介、浏览器支持、新元素
  7. Mysql中设置默认时间为当前值
  8. 关于写作那些事之利用 js 统计各大博客阅读量
  9. 音频格式RAW和PCM区别和联系
  10. Ocelot简易教程(一)之Ocelot是什么
  11. 学习:D3
  12. 数据库日志——mysql与Oracle的日志
  13. 运行java飞行记录器JFR(java flight recorder)
  14. 20155302 Exp2 后门原理与实践
  15. 委托、Lambda表达式、事件系列07,使用EventHandler委托
  16. redis配置文件相关
  17. springMVC学习(9)-全局异常处理
  18. sass问题
  19. deepin linux手工更新系统
  20. (转)WPF学习资源整理

热门文章

  1. mybaits入门学习
  2. 51nod 1287: 加农炮 好题啊好题
  3. Egret Engine 2D - 显示对象
  4. Linux终端命令行的常用快捷键
  5. springboot整合mybatis与thymeleaf
  6. ACM蒟蒻防bug专用 ( •̀ ω •́ )✧
  7. 第一章,初识C语言
  8. ACM&OI 基础数论算法专题
  9. Multiarmed Bandit Algorithm在股票中的应用
  10. POJ - 3977 Subset(二分+折半枚举)