2011-01-05 14 views
1

Ich habe eine Liste von Ansichten dynamisch bevölkert und dann zu einer festen UIView hinzugefügt. Jetzt möchte ich ein Verhalten derart, dass all diese Ansichten horizontal oder vertikal gestapelt werden, d. H. Alle CGRects werden Rücken an Rücken ausgerichtet.Align UIView's Subviews

Ich weiß, ich kann einfach alle Teilansichten durchgehen und sie basierend auf dem vorherigen Geschwisterrahmen 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 gelöscht werden, der Rest der Ansichten soll (Schwerkraftwirkung) neu auszurichten, dass der Raum zu füllen. Irgendwelche Ideen?

Antwort

0

Leider gibt es keinen Container oder Steuerelement, die diese Funktionalität hat. Auf anderen Plattformen gibt es so etwas wie einen Container, in dem Sie Steuerelemente platzieren und diese Steuerelemente horizontal oder vertikal ausrichten und in der nächsten Zeile/Spalte umschließen, aber auf dem iPhone gibt es nichts dergleichen. Sie können jedoch leicht eine UIView-Unterklasse erstellen, die diese Funktionalität erstellt ...

0

Haben Sie die Layer-Gravity-Eigenschaft versucht?