我正在开发一个应用程序,在该应用程序中,我需要将远程服务器上的视频作为实况流播放。
我成功地做到了这一点。我管理我的应用程序中的每一件事。
但是当视频加载时,我需要通过VideoView显示一个进度对话框。
我试着用OnPreparedListener作为"how to show the progress bar before playing the video“
@Override
public void onPrepared(MediaPlayer mp) {
progressbar.setVisibility(View.GONE);
mp.start();
}
但视频播放后5-7秒的进度条消失了。我在谷歌上搜索了很多,但没有找到任何解决方案。
有人能帮帮我吗。
提前谢谢。
发布于 2013-08-29 03:13:10
看看这个解决了我的问题,希望对你也有帮助..
http://www.quicktips.in/how-to-show-progressbar-while-loading-a-video-in-android-videoview/
progressbar.setVisibility(View.VISIBLE);
videoView.setOnPreparedListener(new OnPreparedListener() {
@Override
public void onPrepared(MediaPlayer mp) {
mp.start();
mp.setOnVideoSizeChangedListener(new OnVideoSizeChangedListener() {
@Override
public void onVideoSizeChanged(MediaPlayer mp, int arg1, int arg2) {
// TODO Auto-generated method stub
Log.e(TAG, "Changed");
progressbar.setVisibility(View.GONE);
mp.start();
}
});
}
});
:)
发布于 2013-05-10 00:10:43
令人难忘的是,安卓没有公开OnStart侦听器。在准备好状态之后,一旦开始播放,MediaPlayer就会进入启动状态。
但只有在准备好的状态下,你才应该有足够的缓冲区来玩。你可以使用setOnBufferingUpdateListener (MediaPlayer.OnBufferingUpdateListener listener)和打印缓冲区百分比吗?所以你可以看到,在准备好的状态下,你是否有足够的缓冲区。
https://stackoverflow.com/questions/15972050
复制相似问题