假设程序中有多个Activity(A,B,C,...),要如何退出整个应用程序呢?如果只调用finish()方法的话,仅仅关闭了当前的activity而已,程序会回到上一个Activity!所以我们自己定义一个类ActivityManage来管理新建的Activity!该类的实现如下:
import java.util.LinkedList;
import java.util.List;
import android.app.Activity;
import android.app.Application;
public class ActivityManage extends Application{
//定义一个列表来保存新建的Activity
private List<Activity> activityList = new LinkedList<Activity>();
//单例模式,Activity只能创建一次
private static ExitApplication instance;
private ExitApplication(){}
public static ExitApplication getInstance()
{
if(instance==null)
instance = new ExitApplication();
return instance;
}
//创建Activity时调用该方法,把Activity加入到列表中
public void addActivity(Activity activity)
{
activityList.add(activity);
}
//当退出应用程序时调用该方法,finish全部Activity
public void exit()
{
for(Activity a : activityList) //增强for循环,逐个退出
{
a.finish();
}
System.exit(0);
}
}
转载于:https://blog.51cto.com/chenzhihao/893622