Пытаясь получить UITextView для перемещения контента, когда клавиатура расположена поверх самой себя

У меня есть UITextView

    @IBOutlet weak var note: UITextView!
note.delegate = self

Текстовый вид находится внутри UIScrolLView

@IBOutlet weak var scrollView: UIScrollView!

Я пытаюсь ответить на это:

// move the scrollView when the keyboard is presented
    NotificationCenter.default.addObserver(self, selector: #selector(Keyboard), name: Notification.Name.UIKeyboardWillHide, object: nil)
    NotificationCenter.default.addObserver(self, selector: #selector(Keyboard), name: Notification.Name.UIKeyboardWillChangeFrame, object: nil)

что при нажатии эта функция называется:

@objc func adjustForKeyboard(_ notification: Notification) {
    let userInfo = notification.userInfo!

    let keyboardScreenEndFrame = (userInfo[UIKeyboardFrameEndUserInfoKey] as! NSValue).cgRectValue
    let keyboardViewEndFrame = view.convert(keyboardScreenEndFrame, from: view.window)

    if notification.name == NSNotification.Name.UIKeyboardWillHide {
        scrollView.contentInset = UIEdgeInsets.zero
    } else {
        scrollView.contentInset = UIEdgeInsets(top: 0, left: 0, bottom: keyboardViewEndFrame.height, right: 0)
    }
    scrollView.scrollIndicatorInsets = scrollView.contentInset
}

Я хочу, чтобы это произошло, когда вы нажимаете на UITextView, если клавиатура скрывает текстовое представление, содержимое прокручивается, так что TextView всегда отображается. Этот метод отлично подходит для моих UITextFields, но он не работает для UITextView.

Последовал этот урок и все еще не работал на меня. Я не уверен, что он использует UITextView или UITextFields в видео, я думаю, Fields.

OW TO AUTO ADJUST UISCROLLVIEW, КОГДА КЛАВИАТУРА ВВЕРХ (SWIFT-4, XCODE-9)

Как настроить UIScrollView в соответствии с клавиатурой

0
источник поделиться

Посмотрите другие вопросы по меткам или Задайте вопрос