Como alterar a altura do TextView dinamicamente para um limite e permitir a rolagem?

Eu tenho um TextView que tem uma restrição de altura mínima de 33. O pergaminho está desativado no storyboard. O TextView deve aumentar em altura com base no conteúdo até atingir a altura máxima de 100. Em seguida, altero o scrollEnabled para true e a altura do TextView para a altura máxima de 100, mas a altura muda para 33. Como posso corrigir este problema?

import UIKit

class ViewController: UIViewController, UITextViewDelegate {

@IBOutlet weak var messageTextView: UITextView!
let messageTextViewMaxHeight: CGFloat = 100

override func viewDidLoad() {
    super.viewDidLoad()
    self.messageTextView.delegate = self
}

func textViewDidChange(textView: UITextView) {

    if textView.frame.size.height >= self.messageTextViewMaxHeight {
        textView.scrollEnabled = true
        textView.frame.size.height = self.messageTextViewMaxHeight
    } else {
        textView.scrollEnabled = false
    }
}
}

questionAnswers(5)

yourAnswerToTheQuestion