2012-11-05 7 views
3

사용자가 앱을 종료하려고 할 때 경고 메시지를 표시하는 방법이 궁금합니다. 그래서 그들이 다시 버튼을 누르면 포함됩니다. 이 작업을 수행하는 가장 좋은 방법은 무엇입니까?사용자가 뒤로 버튼을 클릭하여 앱을 종료 할 때 경고 표시

나는 이것을 몇몇 주류 게임에서 보았다. 당신이 다시 버튼을 가로 챌 당신의 Application 하위 클래스에서 onBackPressed()을 추가 할 수 있습니다

+1

http://developer.android.com/training/basics/activity-lifecycle/index.html 이것을 참조 :) –

답변

7

:

public static void onBackPressed(final Activity activity) { 
    AlertDialog.Builder builder = new AlertDialog.Builder(activity); 
    builder.setTitle(R.string.on_back_button_title); 
    builder.setMessage(R.string.on_back_button_message); 
    builder.setPositiveButton(R.string.yes, new OnClickListener() { 
     @Override 
     public void onClick(DialogInterface dialog, int which) { 
      activity.finish(); 
     } 
    }); 
    builder.setNegativeButton(R.string.no, new OnClickListener() { 
     @Override 
     public void onClick(DialogInterface dialog, int which) { 

     } 
    }); 
    builder.show(); 
} 
-1
@Override 
public boolean onKeyDown(int keyCode, KeyEvent event) { 
    /*if (keyCode == KeyEvent.KEYCODE_HOME) { 
     Log.i("Home Button", "Clicked"); 
     // Toast.makeText(this,"Home Button Clicked",Toast.LENGTH_LONG).show(); 
     return false; 
    }*/ // You cannot gain control over home button 

    if (keyCode == KeyEvent.KEYCODE_BACK) { 
     Toast.makeText(this, "Press back Button to pause Evaluation", 
       Toast.LENGTH_LONG).show(); 
     Log.i("Back Button", "Clicked"); 
     return false; 
     // finish(); 
    } 
    return false; 
} 
+1

홈 버튼과 작동하지 않습니까? 그것이 작동하려면 무엇을 더 포함시켜야합니까? – Nick

+0

이것은'KEYCODE_HOME'과 함께 작동하지 않습니다. –

관련 문제