swift键盘处理方式

    //MARK:属性列表
    var toolBarCons: NSLayoutConstraint? 

  //MARK:视图生命周期

    override func viewDidLoad() {
        super.viewDidLoad()

        //注册通知
        NSNotificationCenter.defaultCenter().addObserver(self, selector: "keyboardChangeAction:", name: UIKeyboardWillChangeFrameNotification, object: nil)
    }

    override func viewDidAppear(animated: Bool) {
        super.viewDidAppear(animated)
        //弹出键盘
        textView.becomeFirstResponder()
    }
    
    deinit{
        //移除通知
        NSNotificationCenter.defaultCenter().removeObserver(self)
    }
    
    //MARK:自定义方法
    //通知调用方法
    @objc private func keyboardChangeAction(notification: NSNotification){

        let keyboardRect = notification.userInfo![UIKeyboardFrameEndUserInfoKey]!.CGRectValue
        let duration = notification.userInfo![UIKeyboardAnimationDurationUserInfoKey]!.doubleValue

       

       //取到你自己toolBar的约束

        toolBarCons?.constant = -UIScreen.mainScreen().bounds.size.height + keyboardRect.origin.y
        
        UIView.animateWithDuration(duration) { () -> Void in
            self.view.layoutIfNeeded()
        }
        
    }


  //懒加载 -- 工具栏
    private lazy var toolBar:UIToolbar = {
      let toolBar =  UIToolbar()
      toolBar.backgroundColor = UIColor(white: 0.8, alpha: 1)
        return toolBar
    }()

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值