Быстрый просмотр текста не находится в верхней части текста

#swift #uiscrollview #textview

#swift #uiscrollview #textview

Вопрос:

У меня проблема с моим TextView. Когда я открываю контроллер с помощью TextView, текст находится не в верхней части, а в конце. Как я могу устранить эту ошибку в Xcode 10?

Я пробовал с этим кодом

 extension UIScrollView {
    func scrollToTop() {
        let desiredOffset = CGPoint(x: 0, y: -contentInset.top)
        setContentOffset(desiredOffset, animated: true)
    }
}
  

Комментарии:

1. Вы звоните scrollToTop ? Если да, то где?

2. Я поставил перед расширением это «myScrollView.scrollToTop()»…. вы думаете, я назвал это хорошим?

3. Я думал, вы используете UITextView ? Является myScrollView вашим UITextView ? Можете ли вы показать какой-нибудь код?

4. Да, я использую UITextView….in в коде у меня ничего нет, только некоторый текст для UITexView и расширения ….. Я думаю, что расширение wrong…do у вас есть какое-то представление о том, как я могу это решить?

5. Расширение правильное. Вам нужно вызвать его, вероятно, в viewDidLoad . Вы должны сделать myTextView.scrollToTop() в viewDidLoad , где myTextView это имя вашего текстового представления.

Ответ №1:

Я отключаю прокрутку UITextView перед загрузкой представления, а затем снова включаю его:

 override func viewWillAppear(_ animated: Bool) {
        myTextView.isScrollEnabled = false
    }

    override func viewDidAppear(_ animated: Bool) {
        myTextView.isScrollEnabled = true
    }
  

Надеюсь, это сработает для вас!