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嗎? –
我試過了。沒有修復任何東西 –