Ich habe eine universelle iPad/iPhone App, mit der der Benutzer ein Video ansehen kann, das dann in den Vollbildmodus erweitert werden kann.Wie stelle ich sicher, dass meine Ansicht nach Vollbildvideo korrekt ausgerichtet ist?
Ich habe (void) willAnimateRotationToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation duration:(NSTimeInterval)duration
implementiert, und in dieser Methode führe ich verschiedene SetFrame-Aufrufe auf meine Ansichtselemente abhängig davon, ob sie im Querformat oder Hochformat sind.
Das scheint im normalen Gebrauch gut zu funktionieren, d.h. das Hin- und Herdrehen funktioniert gut.
Wenn der Benutzer jedoch im Hochformat startet, ein Video startet, in den Vollbildmodus wechselt, in Querformat wechselt und dann das Video stoppt - die Elemente werden oft nicht richtig skaliert. Sie scheinen immer noch so groß zu sein, als wären sie im Hochformat.
Wenn ich dann in den Hochformatmodus wechsle und dann zurück in den Querformatmodus wechsle, wird die Ansicht korrekt zurückgesetzt.
Der komische Teil ist, habe ich implementiert (void)exitedFullscreen:(NSNotification*)notification
und in dort drucke ich die Ausrichtung, und es ist richtig gesehen. Ich rufe auch meinen Code auf, um die Ansichtselemente basierend auf der aktuellen Ausrichtung zurückzusetzen, und ich habe immer noch dieses Problem.
Ein anderes verwandtes Problem ist manchmal, wenn es um Rotation geht, meine Ansichten werden zu weit oben auf dem Bildschirm enden, tatsächlich unter der Statusleiste an der Spitze des Geräts.
Bearbeiten Hier ist das neueste Beispiel. Ich drehe während der Videowiedergabe im Vollbildmodus in den Querformatmodus. Wenn ich dann das Vollbildvideo ausgeblendet habe, wird das Problem mit der Navigationsleiste oben in der Ansicht angezeigt.
Dies hat mir bei Rotationsproblemen geholfen, während mein Video inline abgespielt wird, aber es treten immer noch Probleme auf, wenn das Video im Vollbildmodus gedreht wird und den Vollbildmodus verlässt. Sehen Sie meine letzte Bearbeitung mit dem beigefügten Screenshot für ein Beispiel des Problems. –
Ich werde Ihnen die Antwort/Kopfgeld geben, weil es so aussieht, seit ich Ihre Änderungen vorgenommen habe, die Orientierungsprobleme haben sich definitiv verbessert. Ich glaube, mein einziges Problem ist, dass sich die Navigationsleiste nach dem Beenden des Vollbilds unterhalb der Statusleiste befindet, was ein ganz anderes Problem sein kann. –