2
我遇到了一个非常奇怪的现象。我在我的tableview中使用了AutomaticDimension函数,并且出于某种奇怪的原因,它适用于除3之外的所有单元格。我所有的单元格都具有完全相同的约束,这是奇怪的部分。我试图改变对单元格的约束,但似乎它们被忽略。任何见解都会很棒。我一定要在viewdidload中调用auto维度函数。UITableView上的某些单元格不会自动调整大小
override func viewDidLoad() {
super.viewDidLoad()
self.TableView.dataSource = self
TableView.estimatedRowHeight = 200.0
TableView.rowHeight = UITableViewAutomaticDimension
}
这里是不工作的一类:
class foursleepCell: UITableViewCell {
@IBOutlet weak var foursleepLabel: UILabel!
@IBOutlet weak var foursleepScale: UISegmentedControl!
var delegate: foursleepCellToController?
@IBAction func foursleepValueChanged(_ sender: UISegmentedControl) {
if let delegate = delegate {
let indexPath = delegate.indexOfChangedfoursleepCell(at: self)
delegate.savefoursleepCellResponse(at: indexPath, response: foursleepScale.selectedSegmentIndex)
}
}
}
附上约束和输出的图像:
我一直有可能是相同的问题(问几天前类似的问题,但没有得到答案)。根据你的图片,一些约束在运行时不存在。我猜这是问题的根源 - 没有从上到下的限制,自动调整大小无法工作。 – John
你可以尝试设置estimatedRowHeight = 40吗? –
我试过了。没有修复任何东西 –