У меня есть вид таблицы на экране, где клавиатура появляется и исчезает.Если рядом с основанием есть ряды, которые должна покрывать клавиатура, я бы хотел, чтобы представление таблицы двигалось вверх настолько, чтобы строки были видны.
Прямо сейчас я могу заставить весь просмотр таблицы двигаться вверх, когдаклавиатура появляется.Это работает, потому что представление таблицы ограничено сверху и снизу вплоть до полей.
Однако, если сверху всего несколько строк, когда появляется клавиатура и поднимает представление таблицы вверх, эти строкибольше не видныПоэтому я думаю, что мне нужно сместить движение табличного представления на расстояние между нижней строкой и нижней частью табличного представления.
Я могу получить высоту клавиатуры, используя следующий код:
var heightKeyboard : CGFloat?
func keyboardShown(notification: NSNotification) {
if let infoKey = notification.userInfo?[UIKeyboardFrameEndUserInfoKey],
let rawFrame = (infoKey as AnyObject).cgRectValue {
let keyboardFrame = view.convert(rawFrame, from: nil)
self.heightKeyboard = keyboardFrame.size.height
// Now is stored in your heightKeyboard variable
}
}
Однако я не знаю, как получить координаты самой нижней строки строки таблицы.(Ячейки табличного представления саморазмеряются в зависимости от содержимого, поэтому я не могу просто умножить количество строк на константу.)
Заранее благодарен за любые предложения о том, как это сделать.