Настройте UITableView, чтобы разрешить использование клавиатуры

Что за волшебное заклинание для регулировки высоты UITableView, когда клавиатура отображается на экране ДЛЯ ВСЕХ УСТРОЙСТВ? В уведомлении keyboardDidShow я делаю

tableView.contentInset = UIEdgeInsets(top: 0, left: 0, bottom: keyboardSize.height - view.safeAreaInsets.bottom, right: 0)
tableView.scrollIndicatorInsets = tableView.contentInset

где нижнее ограничение моего табличного представления равно Align Bottom to: Safe Area.

Это прекрасно работает на всех устройствах типа iPhone 5|6|7|8, но НЕ на устройствах iPhone X*; регулировка недостаточна для того, чтобы сдвинуть нижнюю часть стола вверх до верхней части клавиатуры. Это примерно ~ 58 пикселей.

Наверняка должен быть какой-то способ заставить это работать повсеместно, а? Что мне не хватает?


person randallmeadows    schedule 02.06.2019    source источник


Ответы (1)


Это происходит потому, что у айфонов, кроме iPhone X, нет нижней безопасной зоны. Попробуйте удалить view.safeAreaInsets.bottom.

person Nick    schedule 05.06.2019