美文网首页
Swift 监听键盘:计算键盘弹出和隐藏时距离底部间距

Swift 监听键盘:计算键盘弹出和隐藏时距离底部间距

作者: 小黑技术 | 来源:发表于2023-03-08 15:09 被阅读0次

   //

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

        //

        NotificationCenter.default.addObserver(self, selector: #selector(keyboardWillHide(noti:)), name: UIResponder.keyboardWillHideNotification, object: nil)

        //

        NotificationCenter.default.addObserver(self, selector: #selector(keyboardWillChangeFrame(noti:)), name: UIResponder.keyboardWillChangeFrameNotification, object: nil)

    }

    //MARK: 键盘即将弹出

    @objc func  keyboardWillShow(noti:Notification){

    }

    //MARK: 键盘即将隐藏

    @objc func  keyboardWillHide(noti:Notification){

    }

    //MARK:计算键盘弹出和隐藏时距离底部间距

    @objc func  keyboardWillChangeFrame(noti:Notification){

        let endframe = (noti.userInfo?[UIResponder.keyboardFrameEndUserInfoKey] as! NSValue).cgRectValue

        lety = endframe.origin.y

        //计算工具栏距离底部距离

        letmargin =UIScreen.main.bounds.height- y

        //获取动画执行时间

        let duration = noti.userInfo?[UIResponder.keyboardAnimationDurationUserInfoKey] as! TimeInterval

        print("=======margin=\(margin)======duration=\(duration)")

        inputBackView.snp.remakeConstraints { makein

            make.top.equalTo( kSCREEN_HEIGHT - kChatInputViewHeight - margin)

            make.left.equalTo(self.view.snp.left)

            make.right.equalTo(self.view.snp.right)

            make.height.equalTo(kChatInputViewHeight)

        }

    }

相关文章

网友评论

      本文标题:Swift 监听键盘:计算键盘弹出和隐藏时距离底部间距

      本文链接:https://www.haomeiwen.com/subject/keroldtx.html