2016-09-28 3 views
1

Я прочитал другие сообщения, но я до сих пор не понимаю, как остановить звук, который играет, я хочу, чтобы, когда я нажимаю кнопку, будет воспроизводиться звук, а когда я нажимаю другую кнопку, я хочу, чтобы звук остановился играя, если бы кто-нибудь мог мне помочь, это было бы здорово.Soundpool, как остановить звук, который играет?

ответ

3

Вам нужно создать идентификатор потока и вызова метода остановки(), например так:

SoundPool soundPool = new SoundPool(5, AudioManager.STREAM_MUSIC, 0); 

static int StreamID; 
static int Sound; 

Sound = soundPool.load(this, R.raw.sndRes, 1); 
... 

btnStart.setOnClickListener(new View.OnClickListener() { 

    @Override 
    public void onClick(View view) { 
     StreamID = soundPool.play(Sound, 1, 1, 0, 0, 1); 
    } 
}); 

и как остановить звук:

btnStop.setOnClickListener(new View.OnClickListener() { 

    @Override 
    public void onClick(View view) { 
     soundPool.stop(StreamID); 
    } 
}); 
Смежные вопросы