0
Я не могу иметь дело с автозапуском, мне нужно реализовать аналогичную страницу входа в facebook/instagram. То есть, когда вы нажимаете на логин ввода или пароль, клавиатура и все представления адаптируются к новому размеру окна.Автоматическое выравнивание представлений, если появляется клавиатура
После появления клавиатуры, это выглядит следующим образом:
func updateBottomLayoutConstraintWithNotification(_ notification: Notification) {
let userInfo = notification.userInfo!
let animationDuration = (userInfo[UIKeyboardAnimationDurationUserInfoKey] as! NSNumber).doubleValue
let keyboardEndFrame = (userInfo[UIKeyboardFrameEndUserInfoKey] as! NSValue).cgRectValue
let convertedKeyboardEndFrame = view.convert(keyboardEndFrame, from: view.window)
let rawAnimationCurve = (notification.userInfo![UIKeyboardAnimationCurveUserInfoKey] as! NSNumber).uint32Value << 16
let animationCurve = UIViewAnimationOptions.init(rawValue: UInt(rawAnimationCurve))
bottomLayoutConstraint.constant = (view.bounds).maxY - convertedKeyboardEndFrame.minY
UIView.animate(withDuration: animationDuration, delay: 0.0, options: animationCurve, animations: {
self.view.layoutIfNeeded()
}, completion: nil)
}
кое-что Instagram запустить и посмотреть, как она реализуется. Нажав на поле ввода, все элементы сдвинуты вверх. – Feanon