TextView的自动高度,在tableView的单元格中使用autolayout

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了TextView的自动高度,在tableView的单元格中使用autolayout相关的知识,希望对你有一定的参考价值。

我想根据tableview的单元格中的内容设置TextView的高度。

enter image description here

我将文本视图的顶部固定到作业标题UILabel,并将其固定在内容视图(父级)的底部,但它不起作用。有这种布局定位的教程吗?

我如何添加约束来修复自动高度问题?

目前的限制enter image description here

答案

我可以看到你在单元格中也有其他设置。支持动态高度

  1. 你可以给UITextView提供修复高度约束。
  2. 采取这种约束的出路。
  3. 在从cellForRowAt方法返回单元格之前更新它。

所以,你的cellForRowAt方法最终会像

tableCell.textViewHeightConstraint = textView.contentSize.height
tableCell.setNeedsUpdateConstraints()
tableCell.setNeedsLayout()
return tableCell
另一答案

解决了这个问题。将TextView更改为UILabel,然后将属性检查器中的Lines属性设置为0。

在viewDidLoad上

    tableview.rowHeight = UITableView.automaticDimension
    tableview.estimatedRowHeight = 229.0

有用。

更多https://www.raywenderlich.com/8549-self-sizing-table-view-cells

另一答案

您可以通过添加两行来应用自调整表格视图单元格:

tableView.estimatedRowHeight = 85.0
tableView.rowHeight = UITableViewAutomaticDimension

您应该从Apple阅读本文档:https://developer.apple.com/library/archive/documentation/UserExperience/Conceptual/AutolayoutPG/WorkingwithSelf-SizingTableViewCells.html

以上是关于TextView的自动高度,在tableView的单元格中使用autolayout的主要内容,如果未能解决你的问题,请参考以下文章

iOS tableview上textView在编辑状态时,tableview自动上移的功能

textView放在自定义cell里面-自适应高度

ios swift在textView单元格中显示/隐藏元素并清除其空间

如何修改 heightForRowAtIndexPath 使其调整到其中的 textview 的高度,同时在 textview 为空时保持最小高度?

如何在tableview Cell内设置tableView的自动高度?

通过单元格内 textView 的内容更改单元格高度