android - 如何循环我的媒体播放器文件?

标签 android loops media-player android-mediaplayer

基本上我有 3 首歌曲,我希望用户能够在 3 首歌曲的循环完成后循环回到第一首歌曲。为什么这行不通?它将播放所有 3 首歌曲,然后在第四次单击时,不会播放任何歌曲。

MediaPlayer song0, song1, song2;
Button play, next;
ArrayList<MediaPlayer> music = new ArrayList<MediaPlayer>();
int track = 0;

/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {


     super.onCreate(savedInstanceState);
     setContentView(R.layout.main);

     song0 = MediaPlayer.create(TheParty0Activity.this, R.raw.blacksunempire);
     song1 = MediaPlayer.create(TheParty0Activity.this, R.raw.blueskies);
     song2=  MediaPlayer.create(TheParty0Activity.this, R.raw.fuckingnoise);

     music.add(song0);
     music.add(song1);
     music.add(song2);

     play = (Button) findViewById(R.id.button0);
     next = (Button) findViewById(R.id.button1);

     play.setOnClickListener(new View.OnClickListener() {

        public void onClick(View v) {
            // TODO Auto-generated method stub
            music.get(track).start();

        }
    });

     next.setOnClickListener(new View.OnClickListener() {

        public void onClick(View v) {
            // TODO Auto-generated method stub
            music.get(track).stop();
            track++;
            if(track == 3)
                track = 0;

            music.get(track).start();

        }
    });
}

最佳答案

调用函数:

MediaPlayer.setLooping(true|false)

在调用 MediaPlayer.prepare() 之后的 mediaplayerObject 上

示例:

Uri mediaUri = createUri(context, R.raw.media); // Audiofile in raw folder
Mediaplayer mPlayer = new MediaPlayer();
mPlayer.setDataSource(context, mediaUri);
mPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
mPlayer.prepare();

mPlayer.setLooping(true);

mPlayer.start();

关于android - 如何循环我的媒体播放器文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11951420/

相关文章:

尝试播放某些流时,Android MediaPlayer 返回错误 (1, -1004)

java - 音频的停止和播放按钮 (Android)

android - 如何在webview中搜索文本

android - 如何在 Parse.com 中使用本地数据存储

java - 在相等标签处解析 xml 时出现 NullPointerException

jquery 循环创建具有保留值的元素

excel - For-Next 循环使用月末日期作为迭代

目录上的 Bash For 循环

android - 如何在android中对本地数据库进行语音识别检查?

android - MediaButtonIntentReceiver 不适用于 Android 4.0+