比如我们键了一个消除Activity的工具类如下:
/**
* 退出程序时,销毁所有Activity
*/
public class DestroyActivityUtil {
public static List<Activity> activityList = new LinkedList(); //将要销毁的Activity事先存在这个集合中
public void exit() // 启动退出程序的按钮时,调用该方法,遍历一遍集合,销毁所有的Activity
{
for(Activity act:activityList)
{
Log.d("TAGS",act.toString());
act.finish();
}
System.exit(0);
}
}
在退出时,调用工具类销毁,并跳转到登录界面
Intent intent = new Intent(SheZhiActivity.this,DengLuActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); //将DengLuActivity至于栈顶
startActivity(intent);
DestroyActivityUtil destroyActivityUtil = new DestroyActivityUtil();
destroyActivityUtil.exit(); // DestroyActivityUtil类是专门用来退出程序的类,利用对象调用exit方法,即可完全退出程序
关键就在于这一句:
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); //将DengLuActivity至于栈顶