Align UIView des Subviews
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?
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?