Я пытаюсь построить экран ввода для iPhone. На экране есть несколько полей ввода. Большинство из них вверху экрана, но два поля находятся внизу. Когда пользователь пытается отредактировать текст в нижней части экрана, клавиатура выскочит и закроет экран. Я нашел простое решение для перемещения экрана вверх, когда это происходит, но в результате экран всегда перемещается вверх, а поля в верхней части экрана становятся недоступными, когда пользователь пытается их редактировать.
Есть ли способ заставить экран двигаться только при редактировании нижних полей?
Я использовал этот код, который нашел здесь:
override func viewDidLoad() {
super.viewDidLoad()
NSNotificationCenter.defaultCenter().addObserver(self, selector: Selector("keyboardWillShow:"), name: UIKeyboardWillShowNotification, object: nil)
NSNotificationCenter.defaultCenter().addObserver(self, selector: Selector("keyboardWillHide:"), name: UIKeyboardWillHideNotification, object: nil)
}
func keyboardWillShow(sender: NSNotification) {
self.view.frame.origin.y -= 150
}
func keyboardWillHide(sender: NSNotification) {
self.view.frame.origin.y += 150
}