是否可以获得对 videoView 正在使用的 mediaPlayer 实例的引用,最好是在其 ctor 内部?如果是这样,怎么做?
由于 videoView 没有 mediaPlayer 那么多的侦听器,我希望能够访问 mediaPlayer 以获得额外的控制和更好的事件处理。
是否可以获得对 videoView 正在使用的 mediaPlayer 实例的引用,最好是在其 ctor 内部?如果是这样,怎么做?
由于 videoView 没有 mediaPlayer 那么多的侦听器,我希望能够访问 mediaPlayer 以获得额外的控制和更好的事件处理。
您可以从 VideoView 监听。
VideoView mVideoView=new VideoView();
mVideoView.setOnPreparedListener( new MediaPlayer.OnPreparedListener() {
@Override
public void onPrepared(MediaPlayer pMp) {
//use a global variable to get the object
}
});
或者,如果您只对媒体播放器事件感兴趣,您可以使用其中任何一个,并且这些事件在 VideoView 上实现,这些基本上是 MediaPlayer 事件。
void setOnCompletionListener(MediaPlayer.OnCompletionListener l)
void setOnErrorListener(MediaPlayer.OnErrorListener l)
void setOnInfoListener(MediaPlayer.OnInfoListener l)
void setOnPreparedListener(MediaPlayer.OnPreparedListener l)
所有这些函数也将提供一个媒体播放器实例。