2012-04-11 8 views
0

Die Hauptansicht meiner App ist ein UImageView und ein NavigationController, der ausgeblendet ist. Ich verwende Monotouch.Dialog, um einen Einstellungsbildschirm zu erstellen, der gut funktioniert.Steuerelemente neu anordnen, nachdem die Navigationsleiste ausgeblendet wurde

Ich habe die UIImageView angeordnet, um den NavigationController zu überlappen, so dass es alle bis zum oberen Rand des sichtbaren Bereichs erreicht.

Mein Problem ist, dass, wenn ich zu meiner Hauptansicht komme und den NavigationController verberge, es so aussieht, als wäre das UIImageView automatisch "heruntergedrückt" worden, so dass es nicht mehr überlappt. Es sieht nicht so aus, als gäbe es irgendwelche Dock/Anchor-Eigenschaften für die visuellen Steuerelemente. Gibt es also einen programmatischen Weg, um die put UIImageView dahin zurückzubringen, wo sie ursprünglich war?

Sorry, wenn dies eine noob Frage ist, bin ich ein langjähriges C# -Programm, aber habe noch nie einen Mac irgendeiner Art bis diesen Monat gestartet, also finde ich die Monotouch-Lernkurve ein bisschen schwierig früh.

+1

Ich denke, wenn Sie einen Beispielcode gepostet haben, würde es helfen. Es klingt, als ob es wahrscheinlich einen besseren Weg gibt, um zu versuchen, was du versuchst zu tun. – jonathanpeppers

Antwort

0

Es gibt tatsächlich einige Dock/Anker-Eigenschaften für visuelle Kontrollen. Sie werden auch häufig verwendet, wenn Änderungen an der Geräteausrichtung vorgenommen werden.

In Xcode, klicken Sie auf das Bild, mit dem Sie Probleme haben und auf der rechten Seite sollten Sie das Eigenschaftenfenster sehen. Klicken Sie oben im Fenster auf die nächste Registerkarte (etwas, das wie ein Lineal aussieht), in dem Sie die Positionierung und dergleichen anpassen können.

Aber zurück zum Problem, es scheint, als ob Sie einen Navigationscontroller in der Hauptansicht verstecken, aber es erscheint, nachdem Sie etwas auf den View-Stack mit dem Navigationscontroller schieben (korrigieren Sie mich, wenn ich falsch liege) . Alles, was Sie tun müssen, um dies zu beheben, ist auf der XIB des jeweiligen Controllers die Eigenschaft "Simulierte Metriken" im Eigenschaftsfenster auf der rechten Seite in "Navigationsleiste" oder "Tableiste" zu ändern (falls Sie eine verwendet haben). Dies wird Ihnen helfen, die Dinge richtig zu positionieren, damit sie korrekt angezeigt werden. Beachten Sie, dass dies nicht tatsächlich eine Navigationsleiste erstellt, sondern Ihnen lediglich ermöglicht, zu sehen, wie es aussehen wird, wenn Sie die Ansicht programmgesteuert verschieben und es angezeigt wird.

Also zusammenfassend, ändern Sie einfach die beiden XIBs, um das Bild anders zu behandeln, und Ihr Problem sollte gelöst werden!

Verwandte Themen