Когда я щелкаю по текстовому полю, клавиатура перемещается вверх, но как только я щелкаю по другому текстовому полю, оно еще больше перемещается.Спасибо за вашу помощь.
func keyboardStates() {
NotificationCenter.default.addObserver(self, selector:
#selector(keyboardWillChange(notification:)), name:
UIResponder.keyboardWillShowNotification, object: nil)
NotificationCenter.default.addObserver(self, selector:
#selector(keyboardWillChange(notification:)), name:
UIResponder.keyboardWillHideNotification, object: nil)
}
deinit {
NotificationCenter.default.removeObserver(self, name: UIResponder.keyboardWillShowNotification, object: nil)
NotificationCenter.default.removeObserver(self, name: UIResponder.keyboardWillHideNotification, object: nil)
}
@objc func keyboardWillChange(notification: Notification){
guard let keyboardRect = (notification.userInfo?[UIResponder.keyboardFrameEndUserInfoKey] as? NSValue)?.cgRectValue else {
return
}
if notification.name == UIResponder.keyboardWillShowNotification {
view.frame.origin.y = -keyboardRect.height/3
} else {
view.frame.origin.y = 0
}
}