Frage

Ich habe eine Liste der Ansichten dynamisch aufgefüllt und dann zu einem festen UIView hinzugefügt. Jetzt möchte ich ein Verhalten, so dass alle diese Ansichten horizontal bekommen oder vertikal gestapelt, das heißt, alle CGRects erhalten ausgerichtet Rücken an Rücken.

Ich weiß, dass ich einfach durch alle Subviews gehe und sie den Rahmen basierend ihre früheren Geschwister ausrichten, aber gibt es einen besseren Weg, es zu tun?

for(UIView *view of [self view].subviews)
{
//code to align
}

Außerdem, wenn ich eine Ansicht aus der Warteschlange löschen, soll der Rest der Ansichten neu auszurichten (Schwerkraft-Effekt), dass der Raum zu füllen. Irgendwelche Ideen?

War es hilfreich?

Lösung

Leider gibt es keine Container oder Kontrolle, die diese Funktionalität aufweist. Auf anderen Plattformen gibt es so etwas wie einen Container, in dem Sie Steuerelemente platzieren und es wird diese Kontrollen horizontal oder vertikal und Verpackung sie in der nächsten Zeile / Spalte, aber es gibt nichts Vergleichbares auf dem iPhone auszurichten. Allerdings können Sie leicht eine UIView Unterklasse erstellen, die diese Funktionalität schafft ...

Andere Tipps

Haben Sie versucht, die Ebene Schwere Eigenschaft?

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top