Einblenden / Ausblenden von Elementen der iPhone-Benutzeroberfläche basierend auf den Einstellungen - wie geht das?

Ich habe ein einfaches Formular in meiner iPhone-App. Das Formular wird über IB und die typische Verkabelung erstellt und verwaltet (d. H. Ich erstelle dieses Formular nicht programmgesteuert).

Eines der Felder (und die zugehörige Bezeichnung) sollte nur angezeigt werden, wenn eine bestimmte Voreinstellung festgelegt ist.

I könnte setze das Feld und die Beschriftung alpha auf 0 und deaktiviere sie in diesem Fall. Das Problem ist, dass die Felderunte dieses jetzt unsichtbare Feld würde an der gleichen Stelle bleiben und es würde einen großen leeren Bereich geben. Mein Ziel ist es, dass der Bildschirm in beiden Zuständen normal aussieht.

Gibt es eine Möglichkeit, Benutzeroberflächenelemente programmgesteuert zu entfernen (oder hinzuzufügen) und die darunter liegenden Elemente nach oben oder unten zu verschieben, um Platz zu schaffen? Oder sollte ich in Betracht ziehen, eine andere NIB-Datei für diesen zweiten Fall zu erstellen? (und wenn ich das tue, gibt es eine einfache Möglichkeit, die gemeinsamen Elemente zu teilen?)

Aktuelle Benutzeroberfläche mit beiden Steuerelementen angezeigt

Mit beiden http://img.skitch.com/20100704-bm41w6wtqkdgh1da99ihb7g32d.jp

UI mit optionaler Steuerung versteckt über alpha == 0

Verstecken mit Alpha http://img.skitch.com/20100704-q2sxrj3nf6ya68wp6ubn86n2pa.jp

Gewünschte Benutzeroberfläche mit optionalem Steuerelement ausgeblendet

Desired when hidden http://img.skitch.com/20100704-82r876pgctee8gb51ujg1dwj7k.jp

Antworten auf die Frage(6)

Ihre Antwort auf die Frage