2011-12-12 13 views

Respuesta

16

En iOS5 debe restablecer los límites de las capas después de configurar el videoGravity.

Esto funcionó para mí:

((AVPlayerLayer *)[self layer]).videoGravity = AVLayerVideoGravityResizeAspectFill; 
((AVPlayerLayer *)[self layer]).bounds = ((AVPlayerLayer *)[self layer]).bounds; 

EDITADO: puntos "auto" a un PlayerView (subclase de UIView) objeto del ejemplo "Poner todos juntos": https://developer.apple.com/library/ios/#documentation/AudioVideo/Conceptual/AVFoundationPG/Articles/02_Playback.html

+0

¡¡Gran respuesta !!! Thk. –

+0

¿qué quieres decir con reiniciar? lo que estás haciendo no es nada. Los dos lados de la última línea son iguales. Como era de esperar, esto no tiene ningún efecto en iOS 8. – SpaceDog

3

que pudimos para resolver su problema con la sugerencia de miham ?. Mi pregunta ha sido prohibida por este moderador de "BoltClock", solo quiero saber si esa sugerencia ha funcionado para usted, ya que no fue para mí.

Por favor, BoltClock, no elimine mi pregunta. Creo que es legítimo preguntar qué tipo de 'yo' es el objeto. miham dice que esa solución funcionó para él, bueno, no funcionó para mí, así que creo que cuestionar lo que "yo" señala me puede dar pistas sobre qué tipo de objeto debería usar. La documentación dice que establecer la gravedad en AVLayerVideoGravityResizeAspectFill recortará el video en la vista AVPlayerLayer, pero no lo hace, y probé esto en iOS 4.3.2 e iOS 5, por lo que deja la respuesta de miham como una respuesta negativa a la pregunta original de Soumya Das y a la mía (¿a qué se refiere el "yo"?) también. ¿Tal vez tiene la respuesta? Si es así, publíquela aquí y no solo elimine mi pregunta.

EDITADO: Encontrado la solución a este problema. Marque la casilla "Subvistas de clips" en IB para la vista con la capa a la que va a conectar el reproductor de video. Luego, configure AVLayerVideoGravityResizeAspectFill de su objeto AVPlayerLayer. Si no tiene la vista en IB pero la está creando mediante programación, establezca su propiedad clipsToBounds en SÍ.

Cuestiones relacionadas