Перемещение UITextField с клавиатуры - изменения в swift 4.2? - PullRequest
0 голосов
/ 31 октября 2018

У меня была эта функция для перемещения определенных текстовых полей вверх, когда клавиатуры блокировали бы их обзор - я уверен, что вы все знаете об этом:

override func viewDidLoad() {
    super.viewDidLoad()

    let center: NotificationCenter = NotificationCenter.default
    center.addObserver(self, selector: #selector(keyboardDidShow(notification:)), name: NSNotification.Name?.UIKeyboardDidShow, object: nil)
    center.addObserver(self, selector: #selector(keyboardWillHide(notification:)), name: NSNotification.Name?.UIKeyboardWillHide, object: nil)

}

Но когда я недавно обновился до swift 4.2, они перестали работать, и появились следующие предложения:

Заменить 'UIKeyboardDidShow' на 'UIResponder.keyboardDidShowNotification' &

Заменить 'UIKeyboardWillHide' на 'UIResponder.keyboardWillHideNotification

Но когда я нажимаю «исправить», я получаю сообщение об ошибке (x2):

Тип «NSNotification.Name» не имеет члена «UIResponder»

Это вроде как ошибка для меня? Что xCode не может принять свои собственные изменения ?? Кто-нибудь сталкивался с этим и знает что делать?

Спасибо!

1 Ответ

0 голосов
/ 31 октября 2018

Попробуйте это

let notificationCenter = NotificationCenter.default
notificationCenter.addObserver(self, selector: #selector(adjustForKeyboard), name: UIResponder.keyboardWillHideNotification, object: nil)
notificationCenter.addObserver(self, selector: #selector(adjustForKeyboard), name: UIResponder.keyboardWillChangeFrameNotification object: nil)

Подробнее используйте эту ссылку: - введите описание ссылки здесь

Надеюсь, это тебе поможет: D Спасибо

...