1.在cell中添加UITextView或者UILabel,设置他们的约束
2.UITextView:设置Scrolling Enable为NO,也就是把默认的勾取消掉
UILabel:设置Lines为0
3.给tableView添加下面两行代码
tableView.estimatedRowHeight = 44.0
tableView.rowHeight = UITableViewAutomaticDimension
完成上面3个步骤高度自适应就已经完成了,但是我们会发现一个问题。虽然刚开始加载的cell可以自适应,但是不会随着UITextView内容的改变而改变,所以接下来我们还要继续完善。
4.实现UITextView代理方法。
class ViewController: UITableViewController,UITextViewDelegate{
override func viewDidLoad(){
remarkTextView.delegate = self
}
//每次内容变化时,调用tableView的刷新方法
func textViewDidChange(_ textView: UITextView) {
print("textViewDidChange")
tableView.beginUpdates()
tableView.endUpdates()
}
}
到此,自适应完成。