Ich habe ein sehr seltsames Phänomen. Ich verwende die AutomaticDimension-Funktion in meiner Tabellenansicht und aus irgendeinem seltsamen Grund funktioniert es auf allen meinen Zellen mit Ausnahme von 3. Alle meine Zellen haben genau die gleichen Einschränkungen, die der seltsame Teil ist. Ich habe versucht, die Beschränkungen auf den Zellen zu ändern, aber es scheint, dass sie ignoriert werden. Jede Einsicht wäre großartig. Ich vergewissere mich, dass ich die automatische Bemaßungsfunktion in viewdidload aufgerufen habe.Einige Zellen in UITableView werden nicht automatisch skaliert
override func viewDidLoad() {
super.viewDidLoad()
self.TableView.dataSource = self
TableView.estimatedRowHeight = 200.0
TableView.rowHeight = UITableViewAutomaticDimension
}
Hier ist einer der Klassen, die nicht funktioniert:
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)
}
}
}
Beigefügt sind Bilder von Einschränkungen und Ausgang:
Ich habe, was das gleiche Problem sein kann (eine ähnliche Frage von vor ein paar Tagen gestellt, aber habe keine Antwort bekommen). Aufgrund Ihrer Bilder existieren einige Einschränkungen zur Laufzeit nicht. Ich vermute, das ist die Ursache des Problems - ohne die Einschränkungen von oben nach unten funktioniert die automatische Größenanpassung nicht. – John
Können Sie versuchen, geschätztRowHeight = 40 zu setzen? –
Ich habe das versucht. Habe nichts repariert –