博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【swift3.0】- 获取键盘通知
阅读量:5752 次
发布时间:2019-06-18

本文共 944 字,大约阅读时间需要 3 分钟。

  hot3.png

贡献作者 -【XJDomain】

博客XJ: 
GitHub

 注意⚠️:

在接受通知的时候需要移除通知:

// 移除通知
<通知移除是在发通知控制器中移除>
deinit { NotificationCenter.default.removeObserver(self) }

 

接受键盘通知方法

// 监听键盘通知        NotificationCenter.default.addObserver(self, selector: #selector(keyboardWillChangeFrame(note:)), name:.UIKeyboardWillChangeFrame , object: nil)
// 键盘通知监听    @objc fileprivate func keyboardWillChangeFrame(note : Notification) {        // 获取动画执行的时间        let duration = note.userInfo?["UIKeyboardAnimationDurationUserInfoKey"] as! TimeInterval                // 获取键盘最终Y值 不能转成NSRect        let endFrame = (note.userInfo?["UIKeyboardFrameEndUserInfoKey"] as! NSValue).cgRectValue        let y = endFrame.origin.y                // 计算工具栏距离底部的间距        let margin = kScreenH - y                toolBarCons.constant = margin        UIView.animate(withDuration: duration) {             self.view.layoutIfNeeded()        }    }

 

转载于:https://my.oschina.net/shengbingli/blog/792104

你可能感兴趣的文章
jquery要怎么写才能速度最快?(转)
查看>>
cisco设备IOS上传、备份、设置启动IOS
查看>>
打开Office报错
查看>>
我的友情链接
查看>>
AsyncTask简易使用
查看>>
关于PHP sessions的超时设置
查看>>
HAProxy负载均衡原理及企业级实例部署haproxy集群
查看>>
开源中国动弹客户端实践(三)
查看>>
Win 8创造颠覆性体验:预览版关键更新
查看>>
vim在多文件中复制粘贴内容
查看>>
Android ContentObserver
查看>>
文章“关于架构优化和设计,架构师必须知道的事情”
查看>>
疯狂java学习笔记1002---非静态内部类
查看>>
ISA2006实战系列之一:实战ISA三种客户端部署方案(上)
查看>>
TCP服务器
查看>>
OCS和GLPI 安装文档
查看>>
U-Mail邮件系统与泛微OA系统一体化操作指南
查看>>
AC旁挂三层交换机管理ap,二层接入ap心得
查看>>
DC/OS虚拟网络
查看>>
如何将Exchange 2010 CU15更新到CU26 - 解决CVE安全漏洞
查看>>