2015-06-17 112 views
0

在本示例中,視頻在暫停時停留在最後一幀,永遠不會再次啓動。它永遠不會進入setOnPreparedListener內部。如何在videoview中暫停呼叫後恢復視頻android

public void pauseVideo(){ 
      videoPos=videoView.getCurrentPosition(); 
      Log.w("Video Position", Integer.toString(videoPos)); 
      isVideoPaused=true; 
      videoView.pause(); 
     } 
public void resumeVideo(){ 
     Log.w("Video Pos in resume", Integer.toString(videoPos)); 
     videoView.seekTo(videoPos); 
     videoView.setOnPreparedListener(new MediaPlayer.OnPreparedListener() { 
      @Override 
      public void onPrepared(MediaPlayer mp) { 
       Log.w("Inside on prepared","finally inside"); 
       mp.setOnSeekCompleteListener(new MediaPlayer.OnSeekCompleteListener() { 
        @Override 
        public void onSeekComplete(MediaPlayer mp) { 
         Log.w("Inside on seek complete","finally inside"); 
         videoView.start(); 
        } 
       }); 

      } 
     }); 

    } 
+0

你想實現與這段代碼是什麼? – hardartcore

+0

我想從暫停的位置恢復視頻。 – nick9999

回答

1

沒有必要設置setOnPreparedListener,只需使用下面的代碼:

videoView.seekTo(video_pos); 
videoView.start(); 
+0

videoView.seekto無法立即進入該確切位置,因此我只能在回電時啓動視頻 – nick9999

+0

因此,您可以在setOnPreparedListener中啓動視頻。 videoView.setOnPreparedListener(新OnPreparedListener(){ \t \t \t \t \t \t \t \t \t \t \t \t @Override \t \t \t \t \t \t公共無效onPrepared(MediaPlayer的熔點){ \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t videoView.start(); \t \t \t \t \t \t} \t \t \t \t \t}); –

+0

這就是我所做的,但它不起作用 – nick9999