2014-04-10 25 views
7

görünmüyor videomu oynatmak için aşağıdaki işlevi kullanın:VideoView - MediaController Şu anda</p> <p>... Ben, MediaController görünür olması gerektiğini düşünüyorum, ne kadar ... Ben videoya dokunun zaman, hiçbir şey happing ben ... o çalışma alınamıyor

private void playCachedVideo(final VideoView videoView, final Context c, File f) 
{ 
    //videoView.setZOrderOnTop(true);   
    videoView.setOnPreparedListener(new OnPreparedListener() 
    { 
     @Override 
     public void onPrepared(MediaPlayer mp) 
     { 
      mp.setOnVideoSizeChangedListener(new OnVideoSizeChangedListener() 
      { 
       @Override 
       public void onVideoSizeChanged(MediaPlayer mp, int width, int height) 
       { 
        MediaController mediaController = new MediaController(c); 
        mediaController.setMediaPlayer(videoView); 
        mediaController.setAnchorView(videoView); 
        videoView.setMediaController(mediaController); 
       } 
      }); 
     } 
    }); 
    videoView.setVideoURI(Uri.fromFile(f)); 
    videoView.start(); 
} 

Video iyi oynuyor, ama herhangi MediaController göstermek için alamıyorum ...

not: bir DialogFragment oynatıcıyı gösteriyorum

+1

benimle aynı sorun, Activity kullanırken ancak DialogFragment ile çalışmadığında çalışıyor –

cevap

0

bu deneyin:

mMediaController = new MediaController(getActivity()); 

getActivity() tarafından c değiştirin.

0

Denetleyiciyi VideoView'e bağlamanız ve ondan sonra onCrepared() geriçağırımında mediaController.show (timeInMillisec) öğesini çağırmanız gerekir. Bu, denetleyiciyi video görüntüsüne dokunduğunu gösterir ve denetleyiciyi belirtilen timeInMillisec'ten sonra gizler.

public class VideoViewActivity extends Activity implements MediaPlayer.OnPreparedListener{ 

    private VideoView mVideoView = null; 
    MediaController mediaController = null; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 

     setContentView(R.layout.videoview_layout); 

     mVideoView = (VideoView) findViewById(R.id.VideoView); 
     mVideoView.setOnPreparedListener(this); 

     mediaController = new MediaController(mVideoView.getContext()); 
     mediaController.setMediaPlayer(mVideoView); 
     mediaController.setAnchorView(mVideoView); 
     mVideoView.setMediaController(mediaController); 
     mVideoView.setVideoPath("URL"); 
    } 

    @Override 
    public void onPrepared(MediaPlayer mp) { 
     mVideoView.start(); 
     mediaController.show(2000); 
    } 
}