2011-11-01 18 views
10

Estoy tratando de cambiar el color de fondo de mi MPMoviePlayerController, y no puedo conseguir que se adhiera.MPMoviePlayerController color de fondo no se pegará

que estoy usando:

moviePlayer.view.backgroundColor = [UIColor redColor]; 

puedo ver el fondo rojo flash mientras el video se está cargando. Tan pronto como se carga, el fondo se vuelve negro nuevamente. Intenté configurar el color una vez que comenzó la reproducción, pero eso no tiene ningún efecto.

estoy usando iOS 5.

Editar: En realidad estoy tratando de establecer el fondo a [UIColor clearColor], no rojo. Debería haber hecho mi pregunta correctamente desde el principio.

+0

El hecho de que no funcione con un color claro parece indicar que hay una subvista que las respuestas a continuación no explican, o hay algún dibujo personalizado en curso. ¿Alguna razón en particular por la que te gustaría que fuera algo más que negro? – FeifanZ

+0

¿Estás tratando de obtener un fondo claro para mostrar detrás de la película? No estoy seguro si el hardware de decodificación admite transparencia ... –

+0

No, solo el borde alrededor de la película (en los lados con película 4: 3, arriba/abajo con 16: 9). Es negro por defecto, cuando se utiliza el color rojo, muestra un borde rojo correctamente. El reproductor de películas está sentado sobre una imagen de fondo, y el cliente realmente quiere que esa imagen sea visible, en lugar de simplemente negra. –

Respuesta

20

backgroundColor en MPMoviePlayerController está obsoleto y view está documentado como de solo lectura. Ver: Deprecated MPMoviePlayerController Methods

backgroundColor
El color del área de fondo detrás de la película. (Disponible en iOS 2.0 a través de IOS 3.1. Obtener la vista desde la propiedad backgroundView y establecer directamente su color.)

@property (no atómica, retener) UIColor * backgroundColor

Así que me gustaría probar usando:

moviePlayer.backgroundView.backgroundColor = [UIColor redColor]; 
+0

Esto funciona muy bien, y lo había intentado una vez, pero mi objetivo original era usar [UIColor clearColor]. Cuando eso no funcionó, comencé a juguetear con el rojo para hacer las cosas más obvias. Desafortunadamente, clearColor no funciona con el código que publicaste. ¿Pensamientos? –

+0

@EricReid ¿intentó también establecer 'moviePlayer.backgroundView.opaque = NO'? – stigi

Cuestiones relacionadas