Frage

Hallo nur, ich habe meinen Begrüßungsbildschirm, den ich im Landschaftsmodus und im gesamten anderen Bildschirm im Potrait -Modus zeigen möchte. Mein Root View Controller fungiert als Begrüßungsbildschirm Ich schreibe diesen Code in der ViewDIDLoad -Methode

[[UIDevice currentDevice] setOrientation:UIInterfaceOrientationLandscapeRight]; 

Dieser Code funktioniert jedoch nicht und zeigt mir, dass Uidevice möglicherweise nicht auf Setorentation reagiert. Bitte führen

War es hilfreich?

Lösung

UIDeviceOrientation bezieht sich auf die physische Ausrichtung des Geräts, während UIInterfaceOrientation Bezieht sich auf die Ausrichtung der Benutzeroberfläche. Sie können die physische Ausrichtung des Geräts nicht ändern, können jedoch die Art und Weise ändern [UIApplication sharedApplication].statusBarOrientation

Andere Tipps

Kannst du nicht einfach einen Begrüßungsbildschirm haben, der seitwärts angezeigt wird?

Der Benutzer interpretiert dies als "Landschaft" -spritzer und passt entsprechend an, ob Ihre Anwendung tatsächlich der Meinung ist, dass dies der Fall ist oder nicht. Stellen Sie einfach sicher, dass Sie zurückkehren NO in shouldAutorotateToInterfaceOrientation: Es dreht sich also nicht weg, wenn der Benutzer es dreht.

Aber a Warnung: Es lohnt sich wahrscheinlich, Ihren Begrüßungsbildschirm zu optimieren, damit es in der Porträtausrichtung ist, da es möglicherweise ärgerlich ist, dem Benutzer vorzuschlagen, dass Ihre App Landschaft mag und dann auf Porträt wechselt, sobald sie tatsächlich beginnt.

Wenn Sie wirklich wollen, können Sie verwenden setStatusBarorientation: Animated: auf der UIApplication die Orientierung erzwingen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top