2012-12-03 3 views
0

버튼을 눌렀을 때 MediaPlayer를 통해 임의로 재생되는 사운드 배열을 만들었습니다.이 기능은 문제가되지 않습니다. 테스트 할 때 버튼을 빠르게 누르면 사운드가 잘 들립니다. 멈추고 더 이상 연주하지 않을 것입니다. 시작 방법을 구현할 수있는 방법이 있습니까? butPress.stop()을 사용하여 onClick 메서드를 시작하려고했지만 내 안드로이드 에뮬레이터는 그것을 좋아하지 않았습니다. 코드는 다음과 같습니다 우리가 정확한 오류 보고서를 얻을 수 있도록버튼을 클릭했을 때 mediaplayer start()가 발생했습니다.

public void onClick(View arg0) { 


try{ 
    display.setText(pp.getText()); 
    int x = r.nextInt(sfx.length); 
    butPress = MediaPlayer.create(PitchMaker.this, sfx[x]); 
    butPress.start(); 
}catch(Exception e){ 
    display.setText("Whoops we had a problem. Please try again"); 
} 

}

+1

오류가있는 경우 구체적으로 기재하십시오. emu가 '좋아하지 않는다'고 말하면 도움이되지 않습니다. – Tim

답변

0

가 catch 블록에 코드 줄을 사용하십시오.

Toast.makeText(getApplicationContext(),e.toString(),Toast.LENGTH_SHORT).show(); 
+0

오류 코드가 생성되고 있지 않습니다. 문제는 사운드를 활성화하는 버튼을 빠르게 누르는 것만으로 발생하는 것 같습니다. 따라서 멈출 방법이 없을 수 있습니다. 미디어 플레이어에 과부하가 걸릴 수 있습니까? – Beefdude

+0

부울 재생 = 거짓을 선언하십시오. 그렇다면 public void onClick (View arg0) { try { display.setText (pp.getText()); INT X = r.nextInt (sfx.length) 경우 (재생) {butPress.stop()한다} else { butPress = MediaPlayer.create (PitchMaker.this, 특수 효과 [X])} butPress.start (); } catch (Exception e) { display.setText ("문제가 발생했습니다. 다시 시도하십시오."); } } – viks

관련 문제