Wenn ich eine UIView nehme, die ein Element einer vertikalen Stapelansicht ist und die "versteckte" Eigenschaft dieses Elements von true in false ändert, wird die Änderung automatisch animiert, und das Element bewegt sich nach unten, wenn es sichtbar wird. Ich möchte, dass es sich stattdessen nach oben bewegt. Gibt es eine Möglichkeit, das zu tun?
Der UIStackViewDistribution
enum in der UIStackView-Header-Datei wird von folgendem Kommentar für den fill
-Fall begleitet:
Wenn Elemente nicht passen (Überlauf) oder füllen (Unterlauf), erfolgen die verfügbaren Anpassungen nach compressureResistance oder umarmen Prioritäten von Elementen, oder wenn das mehrdeutig ist, je nach Reihenfolge der Anordnung.
Sie können die Darstellung von Elementanimationen beeinflussen, indem Sie die Inhaltskomprimierungsbeständigkeit und die inhaltlichen Prioritäten der Elemente festlegen.
Wenn Sie z. B. Beschriftungen in einer vertikalen Stapelansicht mit einer fill
-Distribution ausblenden und anzeigen, können Sie jede Beschriftung von ihrer Position in arrangedSubviews
verkleinern und vergrößern, indem Sie sicherstellen, dass sie eine erforderliche inhaltliche Priorität hat die vertikale Achse:
Ich habe gerade auf eine ähnliche Frage hier geantwortet: Versteckte Eigenschaft auf UILabels in UIStackView animieren verursacht verschiedene Animationen
Das Festlegen der Eigenschaft UIView
contentMode
scheint die Art und Weise zu beeinflussen, in der die UIView
Animation in UIStackView
ausgeführt wird.
Tags und Links ios animation uistackview