Ich möchte ein ähnliches Verhalten haben wie das <Table>
HTML-Tag, in dem Sinne, dass der Rahmen nach seinem Inhalt sortiert ist.
In meinem Kontext verwende ich eine UIStackView als Inhaltsansicht einer UITableViewCell. Da Elemente in der Zelle verschiedene Informationen sind, sollte die resultierende Höhe der Zelle variabel sein.
Meine Strategie besteht darin, eine Zelle programmatisch als UIStackView mit einer vertikalen Achse zu erstellen, wie im Code-Snippet wie folgt:
%Vor%Leider passt sich die Zellengröße nicht an den Inhalt an, und deshalb muss ich die Zellenhöhe selbst wie folgt einstellen:
%Vor%Wie könnte ich das beheben?
UIStackView
wurde entwickelt, um seine Größe entsprechend dem Inhalt zu vergrößern. Damit das funktioniert, müssen Sie die Einschränkungen zwischen UIStackView
und UITableViewCell
festlegen. So sehen beispielsweise die Einschränkungen im Interface Builder aus:
Wenn Sie Constraints im Code einrichten möchten, sollte das auch funktionieren.
Um zu zeigen, dass das funktioniert, habe ich das für die Funktion cellForRowAt
. Im Grunde legt es eine Anzahl von UILabel
in die UIStackView
und die Anzahl der Etiketten hängt von der Zeilennummer ab.
Hier ist das Endergebnis:
Tags und Links uitableview ios height swift2 uistackview