2013-07-06 6 views
0

Android에서 미디어 플레이어를 구현하고 있습니다. 응용 프로그램을 실행하면 음악이 재생되고 뒤로 버튼을 클릭하면 활동이 종료됩니다. 하지만 뒤로 버튼을 클릭하면 음악이 일시 중지 상태가되고 작업이 끝나기를 원하며 응용 프로그램을 다시 시작하면 음악이 다시 시작됩니다. 나는 onBackPressed()를 사용했고, 단 하나의 활동은 음악을 끝내고 멈추지 않았습니다. 어떻게해야합니까?Android에서 onBackPresee 메소드를 사용하는 방법은 무엇입니까?

여기 내 코드입니다.

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


      mp=MediaPlayer.create(Audio_Activity.this,R.raw.ennamo_yadho); 
      Log.e("Song is playing","in Mediya Player "); 
      mp.setLooping(false); 
      mp.start(); 
      System.out.println("B4 button Click!!!!"); 

      if(mp.isPlaying()) 
      { 
       if(mp!=null) 
       { 


        length=mp.getCurrentPosition(); 
        mp.seekTo(length); 
        mp.start(); 
       } 

      } 


      mp.setOnCompletionListener(new MediaPlayer.OnCompletionListener() 
      { 

       @Override 
       public void onCompletion(MediaPlayer mp) 
       { 
        // TODO Auto-generated method stub 
        //finish(); Activity is exist 
        mp.stop(); 
        mp.release(); 
        btnChapter.setEnabled(true); 
        System.out.println("Music is over and Button is enable !!!!!!"); 
       } 
      }); 



    public void onBackPress() 
     { 
      super.onBackPressed(); 
      if(mp.isPlaying()) 
      { 
       if(mp!=null) 
       { 
        mp.pause(); 
        finish(); 
        System.out.println("Back Button Is Call and Audio Is on Pause state "); 

       } 
      } 

     } 

    } 
+0

무엇을 달성 하시겠습니까? – Blackbelt

답변

0

당신은) (

super.onBackPressed을 제거해야합니다;

하고 자신을 당신의 활동을 마무리하고 음악을 일시 정지 ...

편집 : 당신이 onBackPressed을 (오버라이드 (override) 할 필요가 있습니다)하지 onBackPress() 아래에이 코드를 시도하고 확인 mp.pause 얻는 경우 중단 점이있는 뒤로 버튼을 누를 때 호출 :

@Override 
public void onBackPressed() 
{ 
     if(mp.isPlaying()) 
     { 
      if(mp!=null) 
      { 
       mp.pause(); 
       this.finish(); 
       System.out.println("Back Button Is Call and Audio Is on Pause state "); 

      } 
     } 
} 
+0

나는 무슨 말을하는 걸 이해하지 못하니 ??? – tazeen

+0

그냥 super.onBackPressed()를 제거하고 버튼을 눌러서 다시 버튼을 눌러서 작업을 마치고 싶다면 this.finish() –

+0

하지만 내 활동이 끝나면 바로 오디오 파일도 상태를 일시 중지합니다. 활동은 끝났지 만 내 음악은 일시 정지 상태가되지 않습니다. 음악은 여전히 ​​활동 중이므로 종료됩니다. – tazeen

관련 문제