您的位置:首页 > 移动开发

关于在退出应用时关闭所有Activity

2014-08-08 09:56 351 查看
    走上Android程序员的道路有一段时间了,工作中出现问题,总是看一些前辈的博客来进行解惑,在此向那些共享自己编程经验和思路的前辈致敬。也反思了一下,在别人帮助自己过后,自己也应该学会帮助他人。就决定以后也写一些博客,限于个人水平低下,前辈们看到了大可一笑而过,如能指出缺点,进行赐教,小子感激不尽。就想能把自己遇到的问题整理一下,给同样新手的一些童鞋们一些参考,欢迎讨论,共同进步。
     第一篇想了很久还是决定先写一篇简单的供大家指正,在当初还在为成为一名android程序员面试的时候,经常遇到一个面试题,怎么在退出应用的时候退出全部Activity,当时我是完完全全的在网上搜的答案然后背了下来,因为大学学的不是android,所以当时也是一直半解,直到成为一个android菜鸟才开始理解,好了,废话不说,上代码。

        总共分三步,第一步创建一个finishActivity类,用来记录、退出Activity。

   

public class finishActivity extends Application {

private List<Activity> activityList = new LinkedList<Activity>();
private static finishActivity instance;

private finishActivity()
{
}
//单例模式中获取唯一的MyApplication实例
public static finishActivity getInstance()
{
if(null == instance)
{
instance = new finishActivity();
}
return instance;
}
//添加Activity到容器中
public void addActivity(Activity activity)
{
activityList.add(activity);
}
//遍历所有Activity并finish
public void exit()
{
for(Activity activity:activityList)
{
activity.finish();
}
System.exit(0);
}
}

第二步在每个Activity中把该activity添加进类finishActivity,this代表该Activity

finishActivity.getInstance().addActivity(this);// 添加Activity到容器中,以便应用完全退出

第三步 在退出应用时调用finishActivity

finishActivity.getInstance().exit();

OK,就是这样,如果有更好的办法,或者此方法有什么问题,欢迎大家批评指正。

 


 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息