简体   繁体   English

我如何停止声音

[英]How can i stop sound

When I click button, first sound start, then I click button again first sound stop and second sound start. 当我单击按钮时,第一个声音开始,然后再次单击按钮,第一个声音停止,第二个声音开始。 How can I do? 我能怎么做?

public void onClick(View v) {
            final MediaPlayer mp = MediaPlayer.create(getBaseContext(), R.raw.random); 
            final MediaPlayer mp2 = MediaPlayer.create(getBaseContext(), R.raw.stop);
            if(!mStarted) {
                // Start                                    
                mp2.stop();             

                mp.start();     

                Toast.makeText(finish.this, "Started!", Toast.LENGTH_SHORT).show();
                mStarted = true;
                mInterval = MIN_INTERVAL;
                mHandler.removeMessages(MESSAGE_RANDOM);               
                mHandler.sendEmptyMessage(MESSAGE_RANDOM);


            } else {
                // Stop
                generate.setEnabled(false);
                mp.stop();                          
                mp2.start();    

                mStarted = false;
                Toast.makeText(finish.this, "Stoping...", Toast.LENGTH_SHORT).show();                               
            }      
        }      
    };

Just add mp2.stop() before mp.start() and mp.stop() before mp2.start() . 只需添加mp2.stop()之前mp.start()mp.stop()之前mp2.start() Don't forget to check if MediaPlayers are initialized and playing via calling 不要忘记检查MediaPlayers是否已初始化并通过调用播放

if (mp != null && mp.isPlaying())

for every MediaPlayer instance. 对于每个MediaPlayer实例。

Hope this helps. 希望这可以帮助。

mp2.stop()
is code to stop MediaPlayer in general. 通常是用于停止MediaPlayer的代码。 But do you need to stop and start or this will do? 但是,您需要停止然后开始还是这样做?

instead of mp2.start(); 而不是mp2.start(); use mp2.stop(); 使用mp2.stop();

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM