swift 监听键盘弹出的高度

Posted _水畔竹汐

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了swift 监听键盘弹出的高度相关的知识,希望对你有一定的参考价值。

      // 监听键盘通知
        NotificationCenter.default.addObserver(self, selector: #selector(ComposeViewController.keyboardWillChangeFrame(note:)), name: NSNotification.Name.UIKeyboardWillChangeFrame, object: nil)
    //监听键盘的事件
    func keyboardWillChangeFrame(note: Notification) {
        
        print(note.userInfo ?? "")
        // 1.获取动画执行的时间
        let duration = note.userInfo?[UIKeyboardAnimationDurationUserInfoKey] as! TimeInterval
        
        // 2.获取键盘最终 Y值
        let endFrame = (note.userInfo?[UIKeyboardFrameEndUserInfoKey] as! NSValue).cgRectValue
        let y = endFrame.origin.y
        
        //计算工具栏距离底部的间距
        let margin = UIScreen.main.bounds.height - y
        print(margin)
        // 更新约束,执行动画
        toolBarBottom.snp.updateConstraints { (make) in
            make.left.equalTo(0)
            make.right.equalTo(0)
            make.height.equalTo(44)
            make.bottom.equalTo(-margin)
        }
        UIView.animate(withDuration: duration) {
            self.view.layoutIfNeeded()
        }
    }

 

以上是关于swift 监听键盘弹出的高度的主要内容,如果未能解决你的问题,请参考以下文章

Android软键盘弹出和收回监听

关于swift3.0关于弹出键盘高度的问题

关于swift3.0关于弹出键盘高度的问题

android studio 点击布局文件隐藏弹出的键盘。

如何在Android中判断软键盘是不是弹出或隐藏

vue解决安卓手机软键盘弹出,页面高度被顶起