大四寒假日期汇报1.10

Android应用使用返回键,app重复显示主页面多次后退出

app在登录注册后直接跳转到主功能页面,但是使用返回键时,重复显示主功能页面,两三次后才退出。

检查代码发现,自己使用Intent跳转的时候代码设置参数不对,原来的代码为:

                intent = new Intent(Register_LoginActivity.this, UserAgreementPolicyActivity.class);
                intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
                startActivity(intent);

这里设置的Flag参数是:Intent.FLAG_ACTIVITY_NEW_TASK,效果和名字一样简单,就是开启新的Task用于跳转,但是原来的activity会被压入栈底,没有被销毁,导致返回的时候会重新出来被调用,但是不知道什么原因(可能是页面的xml文件无法加载,或者是检测到登录信息又再次跳转过去了,都有可能),没有调用起来。导致重复一个activity,就出现这种情况。因为我需要在本页面就返回即退出本程序,所以在跳转的时候就直接可以将跳转的发那个改变,跳转之后将之前的activity销毁,这样既可。

            intent = new Intent(Register_LoginActivity.this, IndexActivity.class);
            intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK | Intent.FLAG_ACTIVITY_NEW_TASK);//将参数改变为这个
            startActivity(intent);

参数从名字上也可能看出来功能,即对之前的activity进行销毁

原文地址:https://www.cnblogs.com/heiyang/p/14261203.html