Das Einstellen von videoGravity auf AVLayerVideoGravityResizeAspectFill hat keine Auswirkungen auf iOS 5.0

8

Ich habe einen benutzerdefinierten Movie-Player mit AVPlayer implementiert. Wenn ich den Wert von videoGravity in AVPlayerLayer auf AVLayerVideoGravityResizeAspectFill setze, sehe ich den gewünschten Effekt in iOS 4.2, 4.3 . Aber irgendwie auf iOS 5.0 hat es keinen Effekt. Sieht jemand ein ähnliches Problem? Mache ich etwas falsch?

    
Soumya Das 12.12.2011, 12:22
quelle

2 Antworten

16

Unter iOS5 sollten Sie nach dem Einstellen von videoGravity Ebenengrenzen zurücksetzen.

Das hat für mich funktioniert:

%Vor%

EDITED: "self" verweist auf ein PlayerView-Objekt (Unterklasse von UIView) aus dem Beispiel "Alles zusammenfügen":   Ссылка

    
miham 02.02.2012, 12:41
quelle
3

Konnten Sie Ihr Problem mit mihams Vorschlag lösen? Meine Frage wurde von diesem "BoltClock" -Moderator gebannt, ich möchte nur wissen, ob dieser Vorschlag für Sie funktioniert hat, wie er es nicht für mich getan hat.

Bitte, BoltClock, lösche meine Frage nicht. Ich denke, es ist legitim zu fragen, welcher Typ "Selbst" -Objekt ist. miham sagt, dass diese Lösung für ihn funktionierte, nun, es funktionierte nicht für mich, also denke ich, dass die Frage, was "selbst" darauf hinweist, mir Hinweise geben könnte, welche Art von Objekt ich verwenden sollte. Dokumentation sagt Einstellung Gravity zu AVLayerVideoGravityResizeAspectFill wird das Video in die AVPlayerLayer Ansicht, aber es tut es nicht, und ich testete dies in iOS 4.3.2 und iOS 5, so dass Mihams Antwort als keine Antwort auf Soumya Das ursprüngliche Frage und zu minen (was "selbst" zeigt?) auch. Vielleicht hast du die Antwort? Wenn ja, poste es hier und lösche nicht einfach meine Frage.

BEARBEITET: Die Lösung für dieses Problem gefunden. Aktivieren Sie das Kontrollkästchen "Subviews blockieren" in IB für die Ansicht mit der Ebene, an die Sie den Videoplayer anhängen möchten. Legen Sie dann AVLayerVideoGravityResizeAspectFill Ihres AVPlayerLayer-Objekts fest. Wenn Sie die Ansicht nicht in IB haben, sie aber programmgesteuert erstellen, legen Sie die Eigenschaft clipsToBounds auf YES fest.

    
carlos_ms 06.02.2012 22:52
quelle

Tags und Links