Динамически изменять высоту родительского представления с изменением высоты нескольких текстовых представлений - PullRequest
0 голосов
/ 13 декабря 2018

У меня три вида текста в виде контейнера.Когда пользователь вводит несколько строк в каждом textView, мне нужно изменить высоту родительского контейнера View.Я нашел эту ссылку полезной, когда использовал только один textView внутри родительского представления.Я написал ограничения программно

func adjustTextViewHeight(textView: UITextView) {
    let fixedWidth = textView.frame.size.width
    let newSize = textView.sizeThatFits(CGSize(width: fixedWidth, height: CGFloat.greatestFiniteMagnitude))
    let difference = newSize.height - 32

    if textView == titleTextView{
        self.titleHeightConstraint?.constant = newSize.height
    }else if textView == ingredientsTextView{
        self.ingredientsHeightConstraint?.constant = newSize.height
    }else{
        self.directionsHeightConstraint?.constant = newSize.height
    }

    self.containerHeightConstraint?.constant = 280 + difference

    scrollContent = 812 + difference
    self.view.layoutIfNeeded()
}

func textViewDidChange(_ textView: UITextView) {
    if textView == titleTextView{
        adjustTextViewHeight(textView: titleTextView)
    }else if textView == ingredientsTextView{
        adjustTextViewHeight(textView: ingredientsTextView)
    }else if textView == directionTextView{
        adjustTextViewHeight(textView: directionTextView)
    }
}

Для трех текстовых представлений код, похоже, не работал.Где я делаю не так?Пожалуйста, помогите.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...