Я пытался добавить код, чтобы переместить мой взгляд вверх при появлении клавиатуры, однако у меня возникают проблемы с переводом примеров Objective-C в Swift. Я добился определенного прогресса, но застрял на одной линии.
Это два руководства / вопроса, которые я следил:
Как переместить содержимое UIViewController вверх по мере появления клавиатуры с помощью Swift http://www.ioscreator.com/tutorials/move-view-when-keyboard-appears
Вот код, который у меня сейчас есть:
override func viewWillAppear(animated: Bool) {
NSNotificationCenter.defaultCenter().addObserver(self, selector: "keyboardWillShow:", name: UIKeyboardWillShowNotification, object: nil)
NSNotificationCenter.defaultCenter().addObserver(self, selector: "keyboardWillHide:", name: UIKeyboardWillHideNotification, object: nil)
}
override func viewWillDisappear(animated: Bool) {
NSNotificationCenter.defaultCenter().removeObserver(self)
}
func keyboardWillShow(notification: NSNotification) {
var keyboardSize = notification.userInfo(valueForKey(UIKeyboardFrameBeginUserInfoKey))
UIEdgeInsets(top: 0, left: 0, bottom: keyboardSize.height, right: 0)
let frame = self.budgetEntryView.frame
frame.origin.y = frame.origin.y - keyboardSize
self.budgetEntryView.frame = frame
}
func keyboardWillHide(notification: NSNotification) {
//
}
На данный момент я получаю сообщение об ошибке в этой строке:
var keyboardSize = notification.userInfo(valueForKey(UIKeyboardFrameBeginUserInfoKey))
Если бы кто-то мог сообщить мне, какой должна быть эта строка кода, я бы сам смог разобраться в остальном.