Android MediaPlayer“准备();”问题

Android MediaPlayer“准备();”问题,android,media-player,prepare,Android,Media Player,Prepare,当我使用prepare时;在我的mediaplayer上,会弹出一个黑色布局,直到mediaplayer准备就绪。。我想改变黑屏的布局,可能吗?在后台线程中执行所有这些操作,直到媒体播放器实例准备好资源播放并显示进度条为止 //progressDialog Thread th=new Thread(new Runnable() { @Override public void run() { MediaPlayer md=new M

当我使用prepare时;在我的mediaplayer上,会弹出一个黑色布局,直到mediaplayer准备就绪。。我想改变黑屏的布局,可能吗?

在后台线程中执行所有这些操作,直到媒体播放器实例准备好资源播放并显示进度条为止

 //progressDialog
    Thread th=new Thread(new Runnable() {
        @Override
        public void run() {
            MediaPlayer md=new MediaPlayer();
            try {
                md.setDataSource("Path");
                md.prepareAsync();
                md.start();
            } catch (Exception e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
            //send message to handler
        }
    });
    th.start();
    //and then dissmiss dialog in handler class
更新

了解媒体播放器何时准备

    md.setOnPreparedListener(new OnPreparedListener() {
        @Override
        public void onPrepared(MediaPlayer mp) {
        //Now your media player is ready to play    
        }
    });

在后台线程中执行所有这些操作,直到媒体播放器实例准备好要播放的资源并显示进度条为止

 //progressDialog
    Thread th=new Thread(new Runnable() {
        @Override
        public void run() {
            MediaPlayer md=new MediaPlayer();
            try {
                md.setDataSource("Path");
                md.prepareAsync();
                md.start();
            } catch (Exception e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
            //send message to handler
        }
    });
    th.start();
    //and then dissmiss dialog in handler class
更新

了解媒体播放器何时准备

    md.setOnPreparedListener(new OnPreparedListener() {
        @Override
        public void onPrepared(MediaPlayer mp) {
        //Now your media player is ready to play    
        }
    });
准备;是一个阻塞操作,如果你不想阻塞你的UI线程使用。 或者在另一个线程中使用prepare

prepare;是一个阻塞操作,如果你不想阻塞你的UI线程使用。
或者在另一个线程中使用prepare

thank alot。如何查看媒体播放器是否已准备好?如果您使用的是UI线程以外的其他线程,则不需要使用prepareAsync。在这种情况下,mp.prepare是可取的。Thank alot。如何查看媒体播放器是否已准备好?如果您使用的是UI线程以外的其他线程,则不需要使用prepareAsync。在这种情况下,mp.prepare是可取的。