cómo crear una interfaz de usuario personalizada para Android MediaController

Quiero personalizar los controles en el MediaController para mi reproductor de video. Quiero cambiar la imagen para el botón de reproducción, cambiar la máscara, cambiar el color, etc.

¿Hay una forma conocida de hacer esto?

Gracias

Tuve el mismo problema en un proyecto reciente y terminé creando una implementación personalizada basada en el stock MediaController. Agrega un botón de pantalla completa en el extremo derecho, pero incluso si eso no es lo que quieres, esta clase debería ser un buen punto de partida.


Código:

Recursos de imagen:

  • enter image description here
  • http://imgur.com/JYJGN
  • http://imgur.com/R0txq
  • http://imgur.com/dQ6wA

Gotchas:

  • La clase asume que la vista de anclaje es un FrameLayout para posicionarse en la parte inferior.
  • La clase no usa una ventana para garantizar que el control flota sobre el ancla. Sin embargo, esto no ha sido un problema para mí ya que el método show () hace mAnchor.addView () cada vez.
  • La clase usa su propio protocolo MediaPlayerControl. Esto permite personalizaciones como toggleFullScreen ()

EDITAR (2013) : Consulte este tutorial para obtener más información: http://www.brightec.co.uk/blog/custom-android-media-controller

EDITAR (2018) : ahora puede usar el maravilloso ExoPlayer y personalizar completamente su UI de jugador simplemente anulando un archivo de diseño.

Lo probé y funciona muy bien en 4.4 kitkat, pero al igual que KAPLANDROID, dijo que la pantalla negra apareció en Android 2.3.6 pero la música y el videocontrolador funcionan bien,

Has encontrado una solución, solo pon este código

 videoHolder.setType( SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS ); 

después de este

 videoHolder.addCallback( this ); 

y estás listo para ir