2012-08-03 1 views
0

내 응용 프로그램에서 뒤로 버튼을 클릭 할 때 응용 프로그램을 종료하고 싶습니다.이 화면에서 처음 클릭하면 응용 프로그램에 처음 들어가면 exiting입니다. 그러나 다음 화면으로 돌아와 다시 돌아 오면 이 화면 미리 이전 화면으로하지 exiting.Thanks가는 다시 클릭 수단 ..응용 프로그램 종료

내 코드 : 나는 그런 기능을 구현에 대해 조언을 할

public boolean onKeyDown(int keyCode, KeyEvent event) 
     {  

      if (keyCode == KeyEvent.KEYCODE_BACK) 
      {   
       finish(); 
       java.lang.System.exit(0); 

      } 
      return super.onKeyDown(keyCode, event); 
     } 
+1

당신은 할 필요가 없습니다 앱을 종료하십시오. 'System.exit()'를 호출 할 필요는 없습니다. Android의 일반적인 동작은 사용자가 "뒤로"키를 누를 때 활동을 완료하는 것입니다. 왜 다른 것을해야한다고 생각하니? –

+1

[응용 프로그램 종료 - frowned가 되는가?] (http://stackoverflow.com/questions/2033914/quitting-an-application-is-that-frowned-upon/2034238) – cyroxx

답변

1

. 뒤로 단추는 대부분의 응용 프로그램에서 동일한 방식으로 작동하며 사용자는 뒤로 단추가 결국 항상 홈 화면으로 다시 돌아 간다는 것을 알고 안전하게 느끼게됩니다. 어쩌면 TabView 두 가지 작업 사이를 전환하는 더 나은 방법이 될 수 있을까요?

+0

감사합니다. ekholm.but 있습니다. 몇 가지 다른 기능 .. 내가 다시 양식 화면 (어떤 앱이 종료되어야하는지)을 클릭하면 이전 화면으로 이동합니다. –

0

런처 활동에서 뒤로 버튼을 눌러 앱을 종료하려면 다음을 사용하여 앱을 다시 누르는 것으로 앱이 종료되도록 싱글 레ask로 만들 수 있습니다. 안드로이드 매니페스트 파일에서

: android:launchMode="singleTask" startActivity를()를 이용하여이 작업을 지시하지만, 그러기 intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);

0

하나 나은 방법

startActivityForResult(); 

다음 때 사용자가 사용하는 제 활동을 시작하는 것이다 뒤로 버튼을 클릭하여 재정의하여 결과를 확인하십시오.

onActivityResult(){} 

첫 번째 활동.

0

통화 moveTaskToBack 당신의 활동에 (사실) (이 앱을 죽일하지만 화면에서 제거되지 않습니다)

0

당신은 사용해야합니다

if (keyCode == KeyEvent.KEYCODE_BACK) 
{   
     finishAffinity(); 
}