如何为Android MediaController创建自定义UI

时间:2012-09-18 17:40:55

标签: android android-video-player mediacontroller

我想为我的视频播放器自定义MediaController中的控件。 我想换掉播放按钮的图像,改变皮肤,改变颜色等等。

有没有已知的方法呢?

由于

2 个答案:

答案 0 :(得分:98)

我在最近的项目中遇到了同样的问题,最终创建了一个基于媒体MediaController的自定义实现。它在最右边添加了一个全屏按钮,但即使这不是你想要的,这个类应该是一个很好的起点。

代码:

图片资源:

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

陷阱:

  • 该类假定锚视图是一个FrameLayout,将自己定位在底部。
  • 该类不使用Window来确保控件浮动在锚点之上。但是,这对我来说不是问题,因为show()方法每次都会执行mAnchor.addView()。
  • 该类使用自己的MediaPlayerControl协议。这允许自定义,例如toggleFullScreen()

EDIT(2013):有关详细信息,请参阅本教程:http://www.brightec.co.uk/blog/custom-android-media-controller

编辑(2018):您现在可以使用精彩的ExoPlayer,只需覆盖布局文件即可完全自定义播放器用户界面。

答案 1 :(得分:-5)

我测试了它,它在4.4 kitkat上工作得很好,但是像KAPLANDROID一样说黑屏出现在android 2.3.6上,但音乐和视频控制器工作正常,

找到了解决方案,只需输入此代码

videoHolder.setType( SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS );

之后

videoHolder.addCallback( this );

你准备好了