Ios 如何通过加载html字符串数据来了解textView内容高度?

Ios 如何通过加载html字符串数据来了解textView内容高度?,ios,swift,uiview,textview,Ios,Swift,Uiview,Textview,我有html字符串数据,并在文本视图中显示它。 但是我想知道我的html数据的文本视图内容高度。 因为我想添加textview作为UIScrollView的子视图来显示数据。 我还希望textview不滚动,并向用户显示所有数据。 所以,我需要知道textview的高度。 你有什么想法吗? 谢谢 尝试此函数获取标签的高度,然后将该高度传递给textView。希望这能解决你的问题 func heightForHtmlString(_ text: NSMutableAttributedString,

我有html字符串数据,并在文本视图中显示它。 但是我想知道我的html数据的文本视图内容高度。 因为我想添加textview作为UIScrollView的子视图来显示数据。 我还希望textview不滚动,并向用户显示所有数据。 所以,我需要知道textview的高度。 你有什么想法吗? 谢谢


尝试此函数获取标签的高度,然后将该高度传递给textView。希望这能解决你的问题

func heightForHtmlString(_ text: NSMutableAttributedString, font:UIFont) -> CGFloat {
  let label:UILabel = UILabel.init(frame: CGRect.init(x: 0, y: 0, width: 200, height: CGFloat.greatestFiniteMagnitude))
  label.numberOfLines = 0
  label.lineBreakMode = NSLineBreakMode.byWordWrapping
  label.font = font
  label.attributedText = text as NSAttributedString
  label.sizeToFit()
  return label.frame.height 
}

如果将textView.IsCrollenabled设置为false,并且不限制其高度,它将自动调整大小以适应内容。
func heightForHtmlString(_ text: NSMutableAttributedString, font:UIFont) -> CGFloat {
  let label:UILabel = UILabel.init(frame: CGRect.init(x: 0, y: 0, width: 200, height: CGFloat.greatestFiniteMagnitude))
  label.numberOfLines = 0
  label.lineBreakMode = NSLineBreakMode.byWordWrapping
  label.font = font
  label.attributedText = text as NSAttributedString
  label.sizeToFit()
  return label.frame.height 
}