2013-08-24 58 views
0

我有一個活動擴展了常見頁腳nav的基本活動。現在,在特定的活動中,當他嘗試通過按任何其他導航按鈕離開該活動時,我將向用戶顯示確認對話。我已經嘗試過onpause和它不工作。它不會等待用戶在確認框中按確定。基本上,用戶在點擊該活動的任何其他鏈接時必須看到該框。退出活動時提示

感謝您的幫助。

+6

「現在我正在做一個特定的活動,當他試圖通過按任何其他導航按鈕離開該活動時,向用戶顯示確認對話」 - 這是一種用於移動設備的UX反模式。用戶需要能夠移動到另一個應用程序而不受干擾(例如,響應來電)。 – CommonsWare

+0

這很好,用戶可以繼續接收任何電話等。但是當他按任何鏈接在該活動屏幕系統將要求他確認 – user2534310

+0

@ user2534310如果你需要問用戶的東西,當你沒有屏幕,放置一個'通知'。 –

回答

0

只顯示一個對話框,在任何一個鏈接要顯示,比方說用戶,我寫了這以下功能:

private void showExitDialog() { 
     // TODO Auto-generated method stub 
    AlertDialog.Builder adb = new Builder(Home.this); 
    adb.setTitle("Warning"); 
    adb.setMessage("Are you sure you want to quit ?"); 
    adb.setIcon(R.drawable.ic_launcher); 
    adb.setPositiveButton("Yes", new DialogInterface.OnClickListener() { 

     @Override 
     public void onClick(DialogInterface arg0, int arg1) { 

      finish(); 
     } 
    }); 

    adb.setNegativeButton("No", new DialogInterface.OnClickListener() { 

     @Override 
     public void onClick(DialogInterface arg0, int arg1) { 

      arg0.dismiss(); 
     } 
    }); 

    AlertDialog ad = adb.create(); 
    ad.show(); 
} 

然後,只需調用中的每一個環節(你說的)的onClick此功能。希望這會實現你的目的。

+0

這些鏈接處於常見的基本活動狀態,所以當用戶在任何其他活動中按下該鏈接時都會顯示該鏈接。我需要向他們展示特定的活動。此外,活動中還有一些其他鏈接,用戶可以從其中切換到另一個鏈接。 – user2534310