2017-01-07 3 views
0

ich eine harte Zeit, die Höhe meiner Zelle AnpassungUITableViewCell Höhe wird nicht aktualisiert, wenn ausgewählt. mit UITableViewAutomaticDimension

Ich habe eine regelmäßige UITableView, in dem das Rück i UITableViewAutomaticDimension sowohl für -tableView:heightForRowAtIndexPath: und -tableView:estimatedHeightForRowAtIndexPath:. In jeder Zelle habe ich ein normales UIlabel. Das funktioniert gut. Wenn ich jedoch eine Zelle auswähle, füge ich links neben der Zelle ein Bild hinzu und mache die Schrift größer. Dies kann manchmal dazu führen, dass eine Textzeile in die nächste Zeile übergeht.

Wenn jedoch der Zellentext auf 2 Zeilen überläuft (anstatt 1), wird die Höhe der Zelle nicht automatisch aktualisiert.

Wie aktualisiere ich automatisch die Höhe der Zelle entsprechend der Höhe des Inhalts?

+0

Können Sie zeigen Prototyp Zellendesign –

Antwort

1

Haben Sie nach dem Ändern des Layouts versucht, diese Zeile neu zu laden? Wenn nicht etwas passiert, das die Tabelle dazu veranlasst, die Größe Ihrer Zelle neu zu berechnen, ändert sich das Layout nicht.

So etwas wie

tableView.reloadRows(at: [indexPath], with: UITableViewRowAnimation.none) 
+0

diese Art von Arbeiten zum zweiten Mal i die Zelle auswählen, aber nicht das erste Mal. hmm .. wird das erwartet? Ich gehe davon aus, dass Sie meinen: etwas wie der erste Aufruf 'beginUpdates:', dann '' '' '' 'reloadRowsAtIndexPaths'' aufrufen und dann' 'endUpdates'' aufrufen? –

Verwandte Themen