Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/elixir/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 带开/关开关的MediaPlayer_Android - Fatal编程技术网

Android 带开/关开关的MediaPlayer

Android 带开/关开关的MediaPlayer,android,Android,我无法使用开/关按钮使MediaPlayer正常工作 我实例化MediaPlayer和静音按钮: music = MediaPlayer.create(getApplicationContext(), R.raw.loop); music.setAudioStreamType(AudioManager.STREAM_MUSIC); ibVolume = (ImageButton) findViewById(R.id.btn_volume); ibVolume.setBackgroundResou

我无法使用开/关按钮使MediaPlayer正常工作

我实例化MediaPlayer和静音按钮:

music = MediaPlayer.create(getApplicationContext(), R.raw.loop);
music.setAudioStreamType(AudioManager.STREAM_MUSIC);
ibVolume = (ImageButton) findViewById(R.id.btn_volume);
ibVolume.setBackgroundResource(R.drawable.mute);
ibVolume.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        if (music.isPlaying() && (music != null)) {
            music.stop();
            music.release();
            ibVolume.setBackgroundResource(R.drawable.volumeon);
            return;
        }
        if (!music.isPlaying() && (music != null)) {
            ibVolume.setBackgroundResource(R.drawable.mute);
            music.start();
            return;
        }
    }
});
它只适用于1次迭代。打开声音,然后关闭,然后它就死了。我能做什么?我已经经历了大约20次MediaPlayer Tut。我已经从主线程加载了它,不管是什么…它都不工作:(

删除该行

music.release();
音乐过后,停下来


然后它应该会工作。

好的。只需要在发布后重新启动MediaPlayer。为什么不停止()停止?

没有发布()它不会停止。实际上发布是不必要的。重新实例化不是尝试调用pause()然后停止()pause()答案是这样的。为什么他们不在开发者网站上深入了解这个问题呢?它在开发者页面上。