2012-11-05 128 views
3

我想知道當用戶嘗試退出應用程序時如何顯示警告?所以這包括如果他們也按下後退按鈕。什麼是最好的方法來做到這一點?當用戶點擊後退按鈕退出應用程序時顯示警告

我在某些主流遊戲中看到了這一點。

+1

http://developer.android.com/training/basics/activity-lifecycle/index.html請參閱本:) – 2012-11-05 07:12:42

回答

7

您可以在您的Application子類截獲後退按鈕添加onBackPressed()

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'沒有幫助 –

相關問題