Android VideoView进度回调
我正在寻找一种在播放Android VideoView进度回调,android,listener,android-videoview,Android,Listener,Android Videoview,我正在寻找一种在播放VideoView时获得回调的方法,以指示视频进度。类似于描述的内容,但适用于视频视图。每隔固定时间轮询当前进度似乎是一个糟糕的解决方案 是否存在任何我错过的侦听器?您可以使用线程获取进度 mRunnable = new Runnable() { public void run() { Log.i(TAG, "::run: getCurrentPosition = " + mVideoView.getCurrentPosition());
VideoView
时获得回调的方法,以指示视频进度。类似于描述的内容,但适用于视频视图
。每隔固定时间轮询当前进度似乎是一个糟糕的解决方案
是否存在任何我错过的侦听器?您可以使用线程获取进度
mRunnable = new Runnable() {
public void run() {
Log.i(TAG, "::run: getCurrentPosition = " + mVideoView.getCurrentPosition());
if(mVideoView.isPlaying()){
mHandler1.postDelayed(this, 250);
}
}
};
mHandler1.post(mRunnable);
不,你没有错过任何东西。轮询有什么问题吗?好吧,它感觉不符合逻辑,组件应该通知其他人其状态更改,而不是相反……请参阅我对类似问题的解决方案:@Nolesh好吧,这与近两年来接受的答案几乎相同;-)
Runnable onEverySecond=new Runnable() {
public void run() {
if(seekbar != null) {
seekbar.setProgress(mPlayer.getCurrentPosition());
}
if(mPlayer.isPlaying()) {
System.out.println("inside runnable :::::: is playing ");
seekbar.postDelayed(onEverySecond, 10);
}
}
};
seekbar.postDelayed(onEverySecond, 10);