UITableView Inhalt Höhe
Ich habe eine UITableView, die eingestellt ist, dass keine Bildlauf aktivieren, und es existiert in einem UIScrollView. Ich mache es so, wie die design-Spezifikationen Aufruf für etwas, das aussieht wie eine Tabelle, Sicht, (eigentlich sind es zwei von Ihnen nebeneinander), und es wäre viel einfacher zu implementieren, tableviews eher als Zugabe eine ganze Reihe von Tasten, (gruppierte Tabellenansichten).
Frage ist, muss ich wissen, wie groß, um die container-Ansicht für den scrollview, also es scrollt die ganze Höhe der Tabelle Aussicht. Einmal geladen, gibt es eine Möglichkeit zu finden, die Höhe einer tableview? Es gibt keinen contentView Eigenschaft wie ein scroll-view -, frame-scheint statisch zu sein, etc...
Irgendwelche Gedanken?
- In der gleichen situation hier.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Verwenden
Dann können Sie die contentHeight-variable zu setzen, die contentSize für den scrollView.
Einer Allgemeinen Lösung, die funktioniert für mich:
Neben Andrei Lösung, es Konten für die leeren Abschnitte und Abschnitt Fußzeilen.
UITableView
ist eine Unterklasse vonUIScrollView
, so hat es einecontentSize
Eigenschaft, die Sie sollten in der Lage sein zu verwenden, kein problem:Jedoch, wie mehrere andere SO Fragen, haben darauf hingewiesen, wenn Sie ein update auf eine Tabelle anzeigen (wie das einfügen einer Zeile), seine
contentSize
nicht angezeigt werden sofort aktualisiert, wie es für die meisten anderen animierte Größenanpassung im UIKit. In diesem Fall müssen Sie möglicherweise zu greifen, um so etwas wie Michael Weise Antwort. (Obwohl ich denke, es macht mehr Sinn, implementiert als eine Kategorie aufUITableView
)Können Sie über die Abschnitte und verwenden Sie die
rectForSection
berechnen Sie die Gesamthöhe (diese enthalten-und Fußzeile, wie gut!). In swift verwende ich die folgende Erweiterung aufUITableView