关于android的VideoVIew问题

时间:2010-11-02 13:27:43

标签: android android-videoview

我正在研究Android中的视频播放器。当我在创建方法中创建表面持有者时,它没有创建。但是当我在按钮onclick方法中创建表面持有者时,它创建了

我的编码是,

preview=(VideoView)findViewById(R.id.surface);
    preview.setEnabled(true);
    preview.bringToFront();
    holder=preview.getHolder();
    holder.setFixedSize(400, 400);

    mp=new MediaPlayer(); 
    mp.setDataSource("path");
    mp.setDisplay(holder);
    mp.setAudioStreamType(AudioManager.STREAM_MUSIC);
    mp.setOnBufferingUpdateListener(playerActivity.this);
    mp.setOnPreparedListener(playerActivity.this);
    mp.prepare();
    mp.start();

1 个答案:

答案 0 :(得分:1)

mp.prepare();
mp.start();

prepare()是异步的,这意味着,当你已经调用了mp.start时,它可能还没有完成。 “表面未创建”是什么意思?你只是说视频不播放? 无论如何,您应该使用MediaPlayer.OnPreparedListener并在onPrepared()中启动媒体。