休息一下
在我们开发的过程中,肯定会遇到登录问题,在登录界面点击忘记密码,然后再找回密码,找回密码成功之后就可以直接进入主界面了,此时你就需要将栈中所有Activity清空,否则你的返回键,还是会回到之前的界面。你会怎么做呢?
以下是我的代码:
Intent intent = new Intent(this,MaintActivity.class).setFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK | Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
参数讲解:
FLAG_ACTIVITY_CLEAR_TASK:
这个标志将会清除之前所有已经打开的activity.然后将会变成另外一个空栈的root,然后其他的Activitys就都被关闭了
FLAG_ACTIVITY_NEW_TASK:
当Intent对象包含这个标记时,系统会寻找或创建一个新的task来放置目标Activity,寻找时依据目标Activity的taskAffinity属性进行匹配,如果找到一个task的taskAffinity与之相同,就将目标Activity压入此task中,如果查找无果,则创建一个新的task,并将该task的taskAffinity设置为目标Activity的taskActivity,将目标Activity放置于此task。注意,如果同一个应用中Activity的taskA