Wie kann ich drehen Sie benutzerdefinierte splash-screen auf iOS?
Mein splash-screen funktioniert, aber meine app funktioniert auf landscape-Modus, und der splash-Bildschirm zeigt in der Standard-portrait-Modus.
Wie kann ich starten Sie die app so, dass der Startbildschirm dreht sich zwischen landscape Modi wie meine app?
Ich bin mit dem folgenden code:
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
//Overriden to allow any orientation.
if (interfaceOrientation == UIInterfaceOrientationLandscapeLeft ||
interfaceOrientation == UIInterfaceOrientationLandscapeRight)
return YES;
else {
return NO; }
}
und für den splash-screen
-(void)displayScreen {
UIViewController *displayViewController=[[UIViewController alloc] init];
displayViewController.view = displaySplashScreen;
[self presentModalViewController:displayViewController animated:NO];
[self performSelector:@selector(removeScreen) withObject:nil afterDelay:3.0];
}
-(void)removeScreen
{ [[self modalViewController] dismissModalViewControllerAnimated:YES];
}
Aber wie kann ich das drehen im inneren der Bildschirm?
- Dieser Beitrag hat wirklich nichts mit Xcode. So, ich habe entfernt das Wort aus Ihrem Titel.
- Hinzugefügt iphone & ipad-tags, wie viele Menschen haben diesen als fav ' s, und Sie erhalten eine bessere Sicht zählen
Du musst angemeldet sein, um einen Kommentar abzugeben.
@zoul - lieben diese Lösung, so weit. jedoch, wenn/wenn diese Ansicht hat Untersichten - Sie nicht zeigen, bis. irgendwelche Ideen?
update:
behoben, dieses Problem durch hinzufügen einer Untersicht auf das UIView erstellt in
-startupImageWithOrientation:
nicht selbst.Blick.Aha. Wenn Sie möchten, um Ihre eigenen splash-screen erstellen Sie eine spezielle view-controller für das, was Sie bereits haben. Ich glaube, Sie vereinfachen die autorotation-Abfrage-code:
Jetzt haben Sie zu denken, die splash-screens für verschiedene Ausrichtungen. Sie haben ein separaten splash-image für Landschaft und portrait? Wenn ja, können Sie etwas wie das hier tun:
Gibt es zwei Hilfsfunktionen aufgerufen haben, können Sie diese Sachen in eine separate Datei:
Es ist ein bisschen chaotisch, ich hätte Interesse an einfachere Lösung selber.
Die Auflösung Ihrer defult.png kann Wirkung Ihre apps Orientierung, wenn Sie gesperrt haben Orientierungen.
Zum Beispiel, wenn eine Auflösung von 1024x768 splash-Bild verwendet wird, und die erste Ansicht keine Unterstützung für Querformat anzeigen durch die Ausrichtung sperren, das kann die Ursache für visual UI-Objekte angezeigt werden außerhalb des Bildschirms (vor allem bei der animation beteiligt ist) als die Ansicht versuchen und präsentieren Sie sich in einem portrait-Konfiguration, obwohl das Gerät möglicherweise in der Landschaft.
Allgemein, 1024x768 Bilder implizieren hochformat 768 x 1024, während die Bilder implizieren Landschaft.
Wenn das nicht genug ist, oder Ihr zu wollen, gehen nahtlos von der ersten Standard-Bild in e.g ein login-Bildschirm, dann können Sie einen viewcontroller auf 'weiter' der splash .
Laden alle normalen viewControllers in das Fenster, dann stellen Sie Ihre 'splash' viewController in dann in Ihrer splashController verwenden
shouldAutorotateToInterfaceOrientation
Methode, um das richtige Bild (auf einem ImageViewController):Die Konfiguration der Bilder, die ich verwendet haben, möglicherweise nicht zu Ihnen passen, so dass einige Experimente notwendig sein könnte.
beachten Sie, dass Sie zurückkehren sollte JA die Methode
shouldAutorotateToInterfaceOrientation: