2010-12-09 9 views
0

Ich bin in viele Probleme nur Umgang mit der Geräteausrichtung in iPhone. Ich muss hinzufügen/entfernen Verstecken/Sichtbar machen vor allem in der Symbolleiste des Navigation, wenn die Ausrichtung des GerätswillRotateToInterfaceOrientation-Methode nicht aufgerufen, wenn von einer anderen Ansicht zurückgegeben

Das Szenario geändert wird:

[Gerät in Hochformat].

DetailViewController startet .. legt seine Ansicht entsprechend der Ausrichtung Querformat oder Hochformat fest. (Jetzt Portrait) in der Methode "toRotateToInterfaceOrientation".

Wenn Sie auf eine Schaltfläche tippen, wird die Ansicht an einen NewViewController übertragen. Das unterstützt auch Hoch- und Querformat. Jetzt wird das Gerät in NewViewController auf Querformat gesetzt. Alles ist gut. Heres das Problem, wenn "Back" auf DetailViewController klopft (das zuletzt in Portrait gesehen wurde) macht diese Änderungen nicht sichtbar, wenn es in Querformat ist. Weil, wirdRotateToInterface überhaupt nicht aufgerufen. Und es ist irgendwie keine gute Möglichkeit, eine Funktion in "ViewWillAppear" hinzuzufügen.

recape: DetailVeiwController (Portrait) -> PUSHED -> NewViewController (Portrait) -> Drehen -> NewVewController (Landschaft) ---> ZURÜCK PUSHED -> DetailViewController (Landschaft) (willRotate ist nicht in DetailViewController genannt.

in einem solchen Fall, was ist der richtige Weg ?? der richtige Weg. mit Fußabdruck minimalen Speicher.

Thanks :)

Antwort

Verwandte Themen