Ich versuche, zwei vertikale UIStackView
s zu skalieren, so dass sie den Inhalt so anzeigen würden, wie ich es möchte. Die beiden vertikalen UIStackViews
sind innerhalb einer anderen horizontalen UIStackView
, die innerhalb einer UITableViewCell
ist. Es gibt drei UILabel
s in jeder vertikalen UIStackView
. Hier ist die aktuelle Ansicht Hierarchie ich habe:UILabels in verschachtelten UIStackViews abgeschnitten?
Die Bildansicht hat ihre Breite und Höhe begrenzt zu gleichen Anteilen haben. Die horizontale Stapelansicht hat eine Ausrichtung von .Center
und eine Verteilung von .Fill
. Die vertikale Stapelansicht 1 hat eine Ausrichtung von .Leading
und eine Verteilung von .EqualSpacing
. Die vertikale Stapelansicht 2 hat eine Ausrichtung von .Trailing
und eine Verteilung von .EqualSpacing
. Alle Beschriftungen haben nur eine Zeile und der Inhalt in der Stapelansicht 2 ist optional - ich setze die Eigenschaft text
auf nil
, wenn ich in der Stapelansicht 2 in tableView:cellForRowAtIndexPath:
nichts anzeigen muss.
Ich habe versucht, das Label in Stapelansicht 2 zu erhalten, um Text ohne Abschneiden richtig anzuzeigen. Es ist in Ordnung, den Text in der vertikalen Stapelansicht 1 zu kürzen, aber es scheint, als würde die Stapelansicht 1 sich selbst anpassen, um den größten Teil der Breite zu übernehmen. Noch seltsamer, das passiert nicht die ganze Zeit. Es scheint häufiger zu passieren, wenn die Etiketten in der vertikalen Stapelansicht 1 sehr kurz sind. Es scheint auch, dass die vertikale Ansicht 2 in der Größe geändert wird, so dass es nur so breit ist wie das allerletzte Etikett, das normalerweise das kürzeste unter den drei Etiketten ist.
Hier ist, was ich ohne Erfolg versucht haben:
- Einstellung vertikalen Stapel Ansicht 1 einen Inhalt umarmt Priorität hoher
- haben 2 Einstellung vertikalen Stapel Ansicht, die einen Inhalt Kompressionswiderstand Priorität erforderlich haben
- Subclassing
UIStackView
so gibt sie einenintrinsicContentSize
mitwidth
so groß wie seine EtikettenintrinsicContentSize.width
- rekursiv die angeordnet Subviews in vertikaler Stapel Ansicht Einstellung 2 um eine Inhaltskompressionswiderstandspriorität von erforderlich zu haben
Jede Hilfe würde geschätzt werden.