首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Android媒体播放器播放列表和重置

Android媒体播放器播放列表和重置
EN

Stack Overflow用户
提问于 2014-03-30 11:56:35
回答 2查看 2.3K关注 0票数 1
代码语言:javascript
复制
MediaPlayer mediaPlayer = Common.getMediaPlayer();
mediaPlayer.reset();
mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
mediaPlayer.setDataSource(this,Uri.parse(url));
mediaPlayer.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
    @Override
    public void onPrepared(MediaPlayer mediaPlayer) {
        mediaPlayer.start();
    }
});
mediaPlayer.prepareAsync();

这是我用过的代码。我点击一些音乐,我播放它。如果我单击另一种音乐,它就会关闭旧音乐,播放单击的新音乐。然而,我在想,如果我能做到,保持音乐1被播放,一旦一个人完成音乐2。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-03-30 12:04:51

添加oncomple侦听器,并将所有音乐都包含在任何数组列表中。继续回忆当前的游戏项目。当一个人完成播放列表中的下一个游戏时。

代码语言:javascript
复制
    mediaPlayer.setOnCompletionListener(new OnCompletionListener() {
    @Override
    public void onCompletion(MediaPlayer mp) {
        // play next.
    }
票数 -1
EN

Stack Overflow用户

发布于 2014-03-30 12:01:39

您可能想要维护一个歌曲列表并注册一个onCompletionListener来确定每首歌何时结束。在onCompletion()回调中,您会弹出列表中的下一首歌曲并播放它。

由于您最终将有几个MediaPlayer侦听器,所以最好避免匿名内部类带来的变量访问麻烦,只需让您的封闭类实现它们。

因此,您将使用以下内容来完成侦听器:

代码语言:javascript
复制
mediaPlayer.setOnCompletionListener(this);

并将implements OnCompletionListener添加到类定义中,并添加如下方法:

代码语言:javascript
复制
@Override
public void onCompletion(MediaPlayer mp) {
    // Pop next song from the list, prepare it, and play it.
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22743693

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档