1.Создайте IBOutlet
для нижнего ограничения UITableview
:
@IBOutlet weak var tableviewBottomConstaint: NSLayoutConstraint!
Это позволит нам программно изменить нижнее ограничение.
2. Установите наблюдателя напрослушивание событий клавиатуры:
// listen to keyboard show event
NotificationCenter.default.addObserver(self, selector: #selector(keyboardWillShow), name: NSNotification.Name.UIKeyboardWillShow, object: nil)
// listen to keyboard hide event
NotificationCenter.default.addObserver(self, selector: #selector(keyboardWillHide), name: NSNotification.Name.UIKeyboardWillHide, object: nil)
3. Определите 2 функции, которые будут вызываться при отображении / скрытии клавиатуры:
// keyboard shown
@objc func keyboardWillShow(notification: NSNotification) {
tableviewBottomConstaint.constant = newValue
}
// keyboard hidden
@objc func keyboardWillHide(notification: NSNotification) {
tableviewBottomConstaint.constant = newValue
}