Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> Android Activity 完全結束並退出程序的實例

Android Activity 完全結束並退出程序的實例

編輯:關於Android編程

關於完全退出Android程序,網上這方面的帖子很多,方法也很多。記得當時自己寫的第一個比較完整的項目的時候就遇上了這個問題,由於對Activity的生命周期了解不夠,又使用了TabActivity使得層次關系比較復雜,在程序中添加的“退出”菜單項經常無法完全退出,之後網上各種搜索,各種方法也試過了,什麼System.exit(0)啊,結束進程之類的啊,都依然無效果。
後面才發現的這個方法。思路也很簡單,回想自己當初為了解決這個問題時的苦苦尋覓,遂決定將其共享,供遇到此問題人士作為參考。
啰嗦夠了,上思路:添加一個全局變量作為程序退出的標記(boolean類型),當需要退出程序時置為true,程序中每個Activity的onStart方法中對該變量進行判斷,為true就結束自己。
使用Application來保存一個全局變量isProgramExit。(對Application使用不熟悉的話查看相關資料)
復制代碼 代碼如下:
public class MyApplication extendsApplication {
 // 程序退出標記
 private static boolean isProgramExit = false;
 public void setExit(booleanexit) {
  isProgramExit= exit;
 }

 public booleanisExit() {
  return isProgramExit;
 }
}

在你退出時需要結束的每個 Activity 的 onStart 方法加上以下代碼:
復制代碼 代碼如下:
protected voidonStart() {
 super.onStart();
 MyApplication mApp = (MyApplication)getApplication();
 if(mApp.isExit()) {
  finish();
 }
}

這樣C結束了自己,按照流程會回到B,然後B中會進行判斷,因為退出條件滿足,結束自己;再回到A,同樣也結束……
可以看到,這種方法並不高明,甚至有些復雜,因為要在每個Activity的onStart中都加上判斷。但不可否認的是這種方法卻是絕對有效的,不管你的程序中Activity如何跳轉來跳轉去,只要一聲令下,通通結束,屢試不爽。
所以,有遇到程序退出問題的朋友可以作為參考。
  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved