偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

Android結(jié)束Activity完美退出程序

移動(dòng)開發(fā) Android
關(guān)于完全退出Android程序,網(wǎng)上這方面的帖子很多,方法也很多。重要的是選擇適合自己的方法,這里介紹了一種使用Application來管理程序的生命周期,實(shí)現(xiàn)完美退出。

記得當(dāng)時(shí)自己寫的第一個(gè)比較完整的項(xiàng)目的時(shí)候就遇上了這個(gè)問題,由于對(duì)Activity的生命周期了解不夠,又使用了TabActivity使得層次關(guān)系 比較復(fù)雜,在程序中添加的“退出”菜單項(xiàng)經(jīng)常無法完全退出,之后網(wǎng)上各種搜索,各種方法也試過了,什么System.exit(0)啊,結(jié)束進(jìn)程之類的 啊,都依然無效果。

后面才發(fā)現(xiàn)的這個(gè)方法。思路也很簡單,回想自己當(dāng)初為了解決這個(gè)問題時(shí)的苦苦尋覓,遂決定將其共享,供遇到此問題人士作為參考。

啰嗦夠了,上思路:添加一個(gè)全局變量作為程序退出的標(biāo)記(boolean類型),當(dāng)需要退出程序時(shí)置為true,程序中每個(gè)Activity的onStart方法中對(duì)該變量進(jìn)行判斷,為true就結(jié)束自己。
看代碼吧:

使用Application來保存一個(gè)全局變量isProgramExit。(對(duì)Application使用不熟悉的話查看相關(guān)資料)

  1. public class MyApplication extends Application { 
  2.  
  3. // 程序退出標(biāo)記 
  4.  
  5. private static boolean isProgramExit = false
  6.  
  7. public void setExit(boolean exit) { 
  8.  
  9. isProgramExit = exit; 
  10.  
  11.  
  12. public boolean isExit() { 
  13.  
  14. return isProgramExit; 
  15.  
  16.  
  17. }  

在你退出時(shí)需要結(jié)束的每個(gè)Activity的 onStart方法加上以下代碼:

  1. protected void onStart() { 
  2.  
  3. super.onStart(); 
  4.  
  5. MyApplication mApp = (MyApplication)getApplication(); 
  6.  
  7. if (mApp.isExit()) { 
  8.  
  9. finish(); 
  10.  
  11.  
  12. }  

比如,程序中有三個(gè)Activity,A —— B —— C;現(xiàn)在在C中有個(gè)按鈕,點(diǎn)擊退出整個(gè)程序。按照上面說的,在A和B的onStart方法中加入判斷代碼(C中可以不加),C中點(diǎn)擊按鈕時(shí)執(zhí)行:

  1. MyApplication mApp = (MyApplication)getApplication(); 
  2.  
  3. mApp.setExit(true); 
  4.  
  5. finish();  

這樣C結(jié)束了自己,按照流程會(huì)回到B,然后B中會(huì)進(jìn)行判斷,因?yàn)橥顺鰲l件滿足,結(jié)束自己;再回到A,同樣也結(jié)束……

可以看到,這種方法并不高明,甚至有些復(fù)雜,因?yàn)橐诿總€(gè)Activity的onStart中都加上判斷。但不可否認(rèn)的是這種方法卻是絕對(duì)有效的,不管你的程序中Activity如何跳轉(zhuǎn)來跳轉(zhuǎn)去,只要一聲令下,通通結(jié)束,屢試不爽。

所以,有遇到程序退出問題的朋友可以作為參考。

責(zé)任編輯:徐川 來源: cnblogs
相關(guān)推薦

2015-11-09 14:46:49

Android安全

2013-03-26 11:35:15

設(shè)置Activity進(jìn)

2015-11-09 14:37:45

Android安全

2014-05-27 14:09:52

AndroidActivitysingleTask

2014-05-27 14:12:49

AndroidActivitysingleTask

2014-05-27 14:16:08

AndroidActivitysingleTask

2014-05-27 14:28:25

AndroidActivitysingleTask

2014-05-27 14:44:26

AndroidActivitysingleTask

2014-05-27 15:07:07

AndroidActivitysingleTask

2014-05-27 15:11:20

AndroidActivitysingleTask

2014-05-27 15:17:46

AndroidActivitysingleTask

2014-05-27 14:33:37

AndroidActivitysingleTask

2014-05-27 14:59:24

AndroidActivitysingleTask

2014-05-27 15:04:15

AndroidActivitysingleTask

2014-05-27 15:09:13

AndroidActivitysingleTask

2011-09-02 09:45:39

交互設(shè)計(jì)Android

2015-10-20 15:54:16

android源碼滑動(dòng)關(guān)閉

2012-02-17 17:07:30

Android安全Activity劫持

2013-01-08 13:33:07

Android開發(fā)Activity入門指南

2013-05-17 13:47:25

Android開發(fā)ScrollViewGridView
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)