2011-03-10 23 views

回答

1

在我假設的家庭活動是在應用程序中的其他位置點擊主頁按鈕時顯示的,您可以捕獲後退按鈕並退出應用程序。以下將顯示一個詢問用戶是否真的想退出的對話框。

@Override 
public boolean onKeyDown(int keyCode, KeyEvent event) 
{ 
    if (keyCode == KeyEvent.KEYCODE_BACK) 
     showDialog(DIALOG_REALLY_EXIT_ID); 

    return false; 
} 

@Override 
protected Dialog onCreateDialog(int id) 
{ 
    final Dialog dialog; 

    switch(id) 
    { 
     case DIALOG_REALLY_EXIT_ID: 
      dialog = new AlertDialog.Builder(this) 
       .setIcon(R.drawable.icon) 
       .setMessage("Are you sure you want to exit?") 
       .setCancelable(false) 
       .setPositiveButton("Yes", new DialogInterface.OnClickListener() { 
        public void onClick(DialogInterface dialog, int id) { 
         Home.this.finish(); 
        } 
       }) 
       .setNegativeButton("No", new DialogInterface.OnClickListener() { 
        public void onClick(DialogInterface dialog, int id) { 
         dialog.cancel(); 
        } 
       }).create(); 
      break; 
     default: 
      dialog = null; 
    } 

    return dialog; 
} 
+0

我嘗試按照您的建議做,但是當我按下後退按鈕時,它會發生對話框,然後我點擊是它仍然顯示前一頁。我該怎麼辦? – 2011-03-10 19:45:54

+0

取代「Home.this.finish()」,您是否將Home更換爲您的「家庭」活動的名稱? – 2011-03-10 20:23:12

+0

是的,我已經用我的「家」活動的名稱取代了Home,但它仍然顯示前一頁 – 2011-03-10 20:26:38

相關問題