2011-08-01 3 views
0

로컬 밴드 용 앱을 제작 중입니다. 한 화면에서 두 개의 ImageButton을 클릭하면 서로 다른 오디오 클립을 재생해야합니다. 상단 ImageButton은 클립을 훌륭하게 재생합니다. 하단 ImageButton은 상단 ImageButton이 재생중인 노래를 재생하지만. 나는 코드에서 어떤 오류도 발생하지 않으므로 나는 올바르게 형식화되지 않았다고 생각한다. 감사합니다.Android, 오디오 클립을 재생하는 다중 ImageButton

public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.screen2); 

    ImageButton btn = (ImageButton)findViewById(R.id.placeyouknow); 
    btn.setOnClickListener(this); 


    ImageButton btn1 = (ImageButton)findViewById(R.id.fallen); 
    btn1.setOnClickListener(this); 

} 
public void onClick(View v) { 
    // TODO Auto-generated method stub 

    mp = MediaPlayer.create(this, R.raw.thatplaceyouknow); 
    mp.start(); 


} 
public void onClick1(View v) { 
    // TODO Auto-generated method stub 

    mp = MediaPlayer.create(this, R.raw.fallen); 
    mp.start(); 


} 

답변

1

왜 onClick1이 불려지나요? 하하,이 같은 시도 :

public void onClick (View v) { 
    switch v.getId() { 
    case R.id.placeyouknow: 
    mp = MediaPlayer.create(this, R.raw.thatplaceyouknow); 
    mp.start(); 
    break; 
    case R.id.fallen: 
    mp = MediaPlayer.create(this, R.raw.fallen); 
    mp.start(); 
    break; 
    } 
} 

환호

+0

감사합니다,하지만 왜 변수에 해결 될 수없는 나에게 그 BTN 및 인 btn1을 말하고있다? – joshriccio

+0

레이아웃 ID와 마찬가지로'R.id.placeyouknow'와'R.id.fallen'을 의미하는 것처럼 보입니다. 로컬 범위 변수'btn'와'btn1'은 아니며, onClick의 호출. – Ribose

+0

@ 리보스가 옳다. 내 실수. 나는 서둘러 코드를 작성했다. btn과 btn1을 각각의 XML ID로 바꿔야합니다. –

관련 문제