2012-09-27 3 views
1

4 개의 ToggleButton이있는보기가 있으며 각각은 각 상태마다 다른 사운드를 재생합니다. 그래서 총 8 개의 MediaPlayer 인스턴스가 있습니다. 사용자가 하나의 토글 버튼을 선택하면 토글 버튼의 ​​값에 따라 사운드가 재생됩니다. 다음은 ToggleButton에 대한 코드입니다. 내가 붙어 온Android MediaPlayer Stop

MediaPlayer pos = MediaPlayer.create(Set.this, R.raw.pos) 
MediaPlayer neg = MediaPlayer.create(Set.this, R.raw.neg); 

private void onPlayer1Clicked() { 
    if (((ToggleButton)Player1).isChecked()) 
    positive(); 
    else 
    negative(); 
} 

private void positive() { 
    pos.start(); 
} 

private void negative() { 
    neg.start(); 
} 

는 MediaPlayer를 정지하기 전에 다른 ToggleButton을 눌렀을 때의 MediaPlayer를 하나가 완료 주먹까지 모두 음악을 재생합니다. ToggleButton을 눌렀을 때 MediaPlayer를 멈출 수는 있지만 실제로는 Stop()에 일곱 개의 곡이 될 때마다 모든 버튼을 입력하고 싶지는 않습니다.

누구나 간단한 명령으로 모든 MediaPlayer 인스턴스를 중지하는 방법을 알고 있습니까?

+0

어떤 종류의 소리가나요 ?? – moDev

답변

1

SoundPool을 사용하십시오. 이 목적에 더 잘 맞습니다. 자세한 내용은 link을 확인하십시오.

+0

고마워요! 진짜 도움! –

+0

당신은 오신 것을 환영합니다. 기쁜 데 도움이됩니다. –

0

모두 MediaPlayersCollection에 넣습니다.

그런 다음 컬렉션을 반복하고 중지 할 수 있습니다.

+0

컬렉션 사용에 대한 훌륭한 자습서를 알고 있습니까? 인터넷 검색을 시도했지만 아무것도 찾을 수 없습니다. –

+0

나는이 세 가지는 컬렉션 [1] (http://www.vogella.com/blog/2009/08/04/collections-sort-java/), [2] (http : //)에 대한 좋은 예제 및 튜토리얼이라고 생각한다. www.tutorialspoint.com/javaexamples/collection_all.htm), [3] (http://www.tutorialspoint.com/javaexamples/java_collections.htm) –