안드로이드 개발 질문/답변
(글 수 45,052)
안녕하세요. 안드로이드개발 왕왕왕왕초보입니다;;
제가 이번에 뭣도 모르고 안드로이드 프로그래밍 수업을 수강신청해서
과제를 하고있는데 정말 혼자 아무것도 모르는 상태에서 하니까 너무 힘드네요...ㅠㅠ
제가 지금 만들고 있는건 버튼이 네개가 있으면 하나하나 눌렀을때마다 다른노래들이 나오는건데
플레이어도 아니고 그냥 버튼누르면 노래 짧게 나오는거거든요?
그래서 버튼 누를때마다 각자 노래 나오는건 성공했는데요... (이거하는데 이틀걸렸어요;;)
문제는 1번버튼을 누르고 2번버튼을 눌렀을때 1번 노래가 멈추고 2번노래가 나와야하는데
둘다 겹쳐서 나오네요...
이것만 해결하면 되는데 해결방법을 찾다찾다 안돼서 질문합니다...ㅜㅜ
어디에 무엇을 추가를 해야 겹쳐서 안나올까요?;;;ㅠㅠ
제가 작업하는거 소스 올려볼게요... 정말 힘드네요 이거 ㅠㅠ
import android.app.Activity; import android.media.MediaPlayer; import android.os.Bundle; import android.view.View;
public class AdfgefewtActivity extends Activity {
MediaPlayer mPlayer, mPlayer1, mPlayer2, mPlayer3;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);mPlayer = MediaPlayer.create(this, R.raw.sample4); mPlayer1 = MediaPlayer.create(this, R.raw.sample1); mPlayer2 = MediaPlayer.create(this, R.raw.sample2); mPlayer3 = MediaPlayer.create(this, R.raw.sample3);
}
public void mOnClick(View v) {
switch (v.getId()) {case R.id.btn1: mPlayer.seekTo(0); mPlayer.start(); break; case R.id.btn2: mPlayer1.seekTo(0); mPlayer1.start(); break; case R.id.btn3: mPlayer2.seekTo(0); mPlayer2.start(); break; case R.id.btn4: mPlayer3.seekTo(0); mPlayer3.start(); break; } }
public void onDestroy() {
super.onDestroy();
if (mPlayer != null) {
mPlayer.release();
mPlayer = null;
}
if (mPlayer1 != null) {
mPlayer1.release();
mPlayer1 = null;
}
if (mPlayer2 != null) {
mPlayer2.release();
mPlayer2 = null;
}
if (mPlayer3 != null) {
mPlayer3.release();
mPlayer3 = null;
}
}
}



미디어 플레이어 4개를 해놓고 쓰시니까 문제가 되겠지요...
각 미디어 플레이어를 안쓰실때는 stop 이나 reset 시키시면될거고요
무조건 하나만 쓰신다면 미디어플레이어 객체하나로 쓰시면 될거 같네요