自定义媒体控制器

问题描述:

我使用VideoView来显示视频。自定义媒体控制器

我的要求是MediaController WID play/Pause, Stop, & Volume Contoller .. 我试图

  MediaController mc = new MediaController(this); 
     View mMediaControllerView = (View)findViewById(R.id.mediaController1); 
     mc.setAnchorView(mMediaControllerView); 
     videoView.setMediaController(mc); 

添加imageviewlayout但这似乎对MediaController

没有效果需要一些指导/提示进行进一步...

谢谢。

+1

以下是MediaController自定义示例:http://stackoverflow.com/questions/12482203/how-to-create-custom-ui-for-android-mediacontroller/14323144#14323144 – Blago

这应该是足够了:

MediaController mc = new MediaController(this); 
mc.setMediaPlayer(videoView); 
videoView.setMediaController(mc); 
+0

MediaController默认具有fastFWD,倒带, &play/Pause ..我的要求是不同的,所以我想定制它 – Nital

+0

对不起,不明白你。如果你想定制它,你必须自己写。不幸的是,开发人员没有其他方法。但很简单,您可以使用MC的源代码并对其进行自定义(关于它的stackoverflow有很多主题)或编写自己的(主要使用videoview列表程序)。 – ania

+0

最初我想要的是我想要自定义MC的布局..我使用xml布局,wid代码指定,但MC的力度变化的外观和感觉..所以,如果你可以纠正... – Nital

你不得不一遍写的MediaController类延伸的FrameLayout .The布局,它采用的应该是定制。从MediaController Class的Android源代码获取副本,然后继续。

+1

它指的是不能导入的内部类PolicyManager ...如何解决这个问题? – Jasper

我的“解决方案”是不为VideoView设置MediaController。我只是创建了一个独立的MediaController类,它是它自己的类,并完成了所有的自定义绘图。这个类只是从真正的MediaController的源代码中复制而来。在我自定义MediaController的构造函数中,我传递VideoView并存储引用,以便与VideoView进行交互(VideoView具有与MediaPlayer进行交互所需的所有方法:getCurrentPosition(),getDuration(),resume(),pause( ), 寻求(), ...)。让我知道你是否需要更多帮助。

+1

嗨Joris。 你有没有一个功能性的例子,你是从XML这个自定义媒体控制器充气? 你的解决方案可以允许在布局中的自由位置?我需要设置在一个相对布局左对齐的视频视图内的位置。 – ClarkXP

+0

对不起,我没有早点回复你。你仍然需要这个信息?我没有给自定义控制器充气。我只是做了自己的媒体控制器类(它只是从Object继承而来)。如上所述,您将它传递给VideoView对象。没有涉及XML。 –

+0

@JorisWeimar我也想创建自己的MediaController类。请分享你的来源。谢谢! – Dhasneem