Ich stehe vor einem Layout-Problem mit einem UITableViewCell, das (von oben nach unten) aus (1) einem UIStackView, (2) einem UIView mit einer festen Höhe und (3) einem anderen UIStackView besteht. Im oberen UIStackView möchte ich einige Instanzen von UILabel abhängig von einer Datenstruktur vertikal platzieren. Diese Etiketten können in der Höhe variieren. Im unteren UIStackView möchte ich einige Instanzen von UIButton vertikal platzieren. Diese Zahl hängt auch von einigen Datenstrukturen ab.UITableViewCell mit zwei UIStackViews
Das Problem hat mit AutoLayout zu tun (zumindest denke ich, es tut). Wie würde ich die Einschränkungen so einrichten, dass das UITableViewCell sowohl genügend Platz für das obere UIStackView als auch das untere UIStackView schafft, wenn es auf dem Bildschirm platziert werden muss. Das Layout der Zelle wird in einer separaten XIB-Datei definiert.
Bisher habe ich eine Höhenbeschränkung auf dem oberen UIStackView. Abhängig von der Rahmenhöhe der Etiketten wird die Höhe der Stapelansicht angepasst. Aber es stellt sich heraus, dass die Höhe immer den gleichen Wert hat. Ich weiß das, weil ich zwei Instanzen dieser bestimmten UITableViewCell in meinem TableView brauche. Das untere UIStackView hat KEINE Höhenbeschränkung und hat immer ein korrektes Layout.
Muss ich die Eigenschaften für die vertikale Umarmungs-/Kompressionswiderstandspriorität anpassen?
Jede Hilfe wird sehr geschätzt.
Sie haben nicht missverstanden. Ich habe die Höhenbeschränkung hinzugefügt, um IB glücklich zu machen. Nach dem Entfernen dieses Constraint und dem Setzen der Intrinsic Size auf 'Placeholder' nur für das oberste StackView scheint alles gut zu funktionieren. Habe meinen Tag gerettet, vielen Dank! – Raoul
Toll, froh, dass ich helfen konnte! Vergiss nicht, die Antwort als akzeptiert zu markieren;) – AgentCorleone