2013-12-23 2 views
3

그래서 안드로이드 용 사운드 응용 프로그램을 만들고 있는데, 1 개의 작은 문제에 갇혀 있습니다.미디어 플레이어 중지

button1을 클릭하면 소리가납니다. 그 부분은 잘 작동하고 있지만 button2를 클릭하면 현재 미디어 플레이어가 멈추고 Button 2 사운드는 재생되기를 원합니다.

final MediaPlayer mp = MediaPlayer.create(this, R.raw.kalas); 

    ImageButton sound1=(ImageButton) findViewById(R.id.sound1); 
    sound1.setOnClickListener(new View.OnClickListener() { 

    @Override 
    public void onClick(View v) { 
     // TODO Auto-generated method stub 
     if (mp.isPlaying()) { 
      mp.pause(); 
      mp.seekTo(0); 
     } 
     else { 

      mp.start(); 

     } 

    } 
}); 
+1

우리에게 관련 코드를 보여주십시오. – Avijit

답변

0

여기 mp.stop();

final MediaPlayer mp = MediaPlayer.create(this, R.raw.kalas); 
ImageButton sound1=(ImageButton) findViewById(R.id.sound1); 
ImageButton sound2=(ImageButton) findViewById(R.id.sound2); 

sound1.setOnClickListener(new View.OnClickListener() { 
    @Override public void onClick(View v) { 
     // TODO Auto-generated method stub 
     if (mp.isPlaying()) { 
      mp.pause(); 
      mp.seekTo(0); 
     } 
     else { 
      mp.start(); 
     } 
    } 
}); 

sound2.setOnClickListener(new View.OnClickListener() { 
    @Override public void onClick(View v) { 
     // TODO Auto-generated method stub 
     if (mp.isPlaying()) { 
      mp.stop 
     } 

    } 
}); 
+0

예, 지금까지 작동하지만이 버튼과 연결된 소리가 재생되지 않습니다. – user3094736

2
ImageButton sound2=(ImageButton) findViewById(R.id.sound2); 

sound2.setOnClickListener(new View.OnClickListener() { 
@Override public void onClick(View v) { 
// TODO Auto-generated method stub 
if (mp.isPlaying()) { 
    mp.pause(); 
    mp.seekTo(0); 
} 
mp.start(); 
} 
}); 
1

하여 MediaPlayer를 중지 한 후 새하여 ImageButton을 만들고 버튼에 onClickListener을 설정하고 확인이 재생되는 경우가 완료 코드를 사용하여 솔루션입니다 :)

final MediaPlayer mp = MediaPlayer.create(this, R.raw.kalas); 

    ImageButton sound1=(ImageButton) findViewById(R.id.sound1); 
    sound1.setOnClickListener(new View.OnClickListener() { 

    @Override 
    public void onClick(View v) { 
     // TODO Auto-generated method stub 
     if (mp.isPlaying()) { 
      mp.pause(); 
      mp.seekTo(0); 
     } 
     else { 

      mp.start(); 

     } 

    } 
}); 

    ImageButton sound2=(ImageButton) findViewById(R.id.sound2); 
    sound2.setOnClickListener(new View.OnClickListener() { 

    @Override 
    public void onClick(View v) { 
     // TODO Auto-generated method stub 
     if (mp.isPlaying()) { 
      mp.pause(); 
      mp.seekTo(0); 
     } 
     else { 

      mp.start(); 

     } 

    } 
}); 
0

통화 우선 노래를 재생할 때. 시도해보십시오. 도움이 될 수 있습니다.

public MediaPlayer StopMediaPlayer(MediaPlayer mediaPlayer) { 
    if (mediaPlayer != null) { 
     mediaPlayer.stop(); 
     mediaPlayer.release(); 
     mediaPlayer = null; 
    } 
    return mediaPlayer; 
} 
관련 문제