我把UITextView放在UIView中。UIView随着用户在UITextView中键入内容而扩展,但问题是,如果用户在下一行键入内容,则在用户在第三行键入内容之前,它不会显示正在键入的文本,然后显示打印在第二行的文本。三四线等也一样。
我该怎么解决?

func textViewDidChange(_ textView: UITextView) {
    print(textView.text)
    let size = CGSize(width: prayerRequest.frame.width, height: .infinity)

    let estimatedSize = textView.sizeThatFits(size)
    textView.constraints.forEach { (constraints) in
        if constraints.firstAttribute == .height {
            constraints.constant = estimatedSize.height

        }

        viewContainer.constraints.forEach({ (constraints) in
            if constraints.firstAttribute == .height {
                constraints.constant = estimatedSize.height
                viewContainer.layoutIfNeeded()
            }
        })
    }

}

最佳答案

如果正在使用界面生成器,请尝试将行数设置为0。
或来自代码textView.textContainer.maximumNumberOfLines = 10

关于ios - UITextView不在nextLine上打印文本吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/56154486/

10-12 05:13