码迷,mamicode.com
首页 > 编程语言 > 详细

UITableView 键盘覆盖UITableViewCell的输入框解决方法(swift)

时间:2017-05-25 11:51:32      阅读:175      评论:0      收藏:0      [点我收藏+]

标签:selector   select   ble   rdd   bsp   edit   tableview   name   content   

extension UITableView {

    func addNotifications() {

        NotificationCenter.default.addObserver(self, selector: #selector(boardWillShow(not:)), name: NSNotification.Name.UIKeyboardWillShow, object: nil)

        NotificationCenter.default.addObserver(self, selector: #selector(boardDidHide(not:)), name: NSNotification.Name.UIKeyboardDidHide, object: nil)

    }

 

    func boardWillShow(not: NSNotification) {

            if let userInfo = not.userInfo {

            if let keyBoardRect = userInfo[UIKeyboardFrameEndUserInfoKey] as? CGRect {

                UIView.animate(withDuration: 0.25) {

                    self.contentInset = UIEdgeInsetsMake(0, 0, keyBoardRect.size.height, 0)

                }

            }

        }

    }

    

    func boardDidHide(not: NSNotification) {

        UIView.animate(withDuration: 0.25) { 

            self.contentInset = .zero

        }

    }

    func `deinit`() {

       NotificationCenter.default.removeObserver(self)

    }

}

 

 

在所用的类中直接使用

self.tableView.addNotifications()

 

func scrollViewWillBeginDragging(_ scrollView: UIScrollView) {

        self.view.endEditing(true)

}

 

UITableView 键盘覆盖UITableViewCell的输入框解决方法(swift)

标签:selector   select   ble   rdd   bsp   edit   tableview   name   content   

原文地址:http://www.cnblogs.com/huangbiyong/p/6902204.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!