2012-05-17 36 views
0

可能重複:
Quitting an application - is that frowned upon?如何通過單擊創建的按鈕退出整個應用程序?

我創造我的應用程序,並通過點擊該按鈕一個按鈕,所有的狀態將被保存,用戶將退出整個應用程序。當用戶重新點擊應用時,他/她應該被帶到主要活動。我嘗試過使用finish()和System.exit(0),但是這兩個函數都只是結束了當前的活動,並將我帶到了之前的活動中......我如何實現這一目標?謝謝。

+0

您可以通過調用startActivtyForResult(解決這個問題)不是startActivity()中的所有父其他活動。 –

+0

你有沒有檢查[http://stackoverflow.com/questions/2042222/close-application](http://stackoverflow.com/questions/2042222/close-application)和[http://stackoverflow.com/questions/ 3226495 /機器人退出應用程序代碼(http://stackoverflow.com/questions/3226495/android-exit-application-code)? – silwar

+0

希望這些線程可以幫助您 http://stackoverflow.com/questions/3105673/android-how-to-kill-an-application-with-all-its-activities 的http://計算器.com/questions/6014028/closing-application-with-exit-button – Hassy31

回答

0

不推薦,但你仍然可以使用它。如果您需要退出應用程序,最好使用此解決方案。

根據我的最佳解決方案是完成您的應用程序中的每個活動,如下所示。

step1)在mainactivity中維護一個靜態變量。

public static isQuit = false; 

step2)單擊按鈕事件時,使此變量爲true並完成當前活動。

mainactivity.isQuit = true; 
    finish(); 

步驟3),並在你的應用程序的每個活動都有如下onrestart方法..

@Override 
     protected void onRestart() { 
     // TODO Auto-generated method stub 
     super.onRestart(); 
     if(mainactivity.isQuit) 
      finish(); 
    } 

請參閱本LINK

0

調用Move to Back會隱藏自己的應用程序。你不應該打電話System.exit(0);

依靠Android操作系統來決定何時應用程序需要被終止總是更好。

0

找到下面的代碼關閉應用程序。首先清除活動堆棧並使用標誌,然後使用finish()方法。

Intent intent = new Intent(getApplicationContext(), FinishActivity.class).setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 
      finish(); 
      startActivity(intent); 

在FinishActivity類的onCreate()開玩笑簡單的寫完成()方法

public class FinishActivity extends Activity { 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    finish(); 
} 

}

相關問題